исполняемые ссылки на библиотеку .so для некоторой функции. Раздел. < /p>
Машина #1: < /p>
Код: Выделить всё
cat /proc/3463021/maps
00400000-00401000 r--p 00000000 00:30 190190252 /mnt/autofs/home/sr026975/linux-inject/impl/test_inject
00401000-00402000 r-xp 00001000 00:30 190190252 /mnt/autofs/home/sr026975/linux-inject/impl/test_inject
00402000-00403000 r--p 00002000 00:30 190190252 /mnt/autofs/home/sr026975/linux-inject/impl/test_inject
00403000-00404000 r--p 00002000 00:30 190190252 /mnt/autofs/home/sr026975/linux-inject/impl/test_inject
00404000-00405000 rw-p 00003000 00:30 190190252 /mnt/autofs/home/sr026975/linux-inject/impl/test_inject
00940000-00961000 rw-p 00000000 00:00 0 [heap]
7fa391200000-7fa391228000 r--p 00000000 fd:00 68452742 /usr/lib64/libc.so.6
...
...
7fa3913fa000-7fa3913fc000 rw-p 001f9000 fd:00 68452742 /usr/lib64/libc.so.6
7fa3913fc000-7fa391409000 rw-p 00000000 00:00 0
7fa3915d4000-7fa3915d7000 rw-p 00000000 00:00 0
7fa3915e5000-7fa3915e6000 r--p 00000000 00:30 3876709528 /mnt/autofs/home/sr026975/linux-inject/impl/libhello.so
7fa3915e6000-7fa3915e7000 r-xp 00001000 00:30 3876709528 /mnt/autofs/home/sr026975/linux-inject/impl/libhello.so
7fa3915e7000-7fa3915e8000 r--p 00002000 00:30 3876709528 /mnt/autofs/home/sr026975/linux-inject/impl/libhello.so
7fa3915e8000-7fa3915e9000 r--p 00002000 00:30 3876709528 /mnt/autofs/home/sr026975/linux-inject/impl/libhello.so
7fa3915e9000-7fa3915ea000 rw-p 00003000 00:30 3876709528 /mnt/autofs/home/sr026975/linux-inject/impl/libhello.so
7fa3915ea000-7fa3915ec000 rw-p 00000000 00:00 0
....
...
7ffd86ca1000-7ffd86cc3000 rw-p 00000000 00:00 0 [stack]
7ffd86d64000-7ffd86d68000 r--p 00000000 00:00 0 [vvar]
7ffd86d68000-7ffd86d6a000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
[sr026975@lvn-dbc2417 impl]$ objdump -d -s -j .plt /proc/3463021/exe
/proc/3463021/exe: file format elf64-x86-64
Contents of section .plt:
401020 ff35e22f 0000ff25 e42f0000 0f1f4000 .5./...%./....@.
401030 ff25e22f 00006800 000000e9 e0ffffff .%./..h.........
401040 ff25da2f 00006801 000000e9 d0ffffff .%./..h.........
401050 ff25d22f 00006802 000000e9 c0ffffff .%./..h.........
401060 ff25ca2f 00006803 000000e9 b0ffffff .%./..h.........
401070 ff25c22f 00006804 000000e9 a0ffffff .%./..h.........
401080 ff25ba2f 00006805 000000e9 90ffffff .%./..h.........
401090 ff25b22f 00006806 000000e9 80ffffff .%./..h.........
4010a0 ff25aa2f 00006807 000000e9 70ffffff .%./..h.....p...
4010b0 ff25a22f 00006808 000000e9 60ffffff .%./..h.....`...
Disassembly of section .plt:
0000000000401020 :
401020: ff 35 e2 2f 00 00 pushq 0x2fe2(%rip) # 404008
401026: ff 25 e4 2f 00 00 jmpq *0x2fe4(%rip) # 404010
40102c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000401030 :
401030: ff 25 e2 2f 00 00 jmpq *0x2fe2(%rip) # 404018
401036: 68 00 00 00 00 pushq $0x0
40103b: e9 e0 ff ff ff jmpq 401020
На машине #2 я вижу это:
machine #2:
на машине #2,
machine #2:
on Machine #2:
machine #2:
.
Код: Выделить всё
cat /proc/3104/maps
556621a53000-556621a54000 r--p 00000000 fc:00 1572915 /home/satish/linux-inject/test_inject
556621a54000-556621a55000 r-xp 00001000 fc:00 1572915 /home/satish/linux-inject/test_inject
556621a55000-556621a56000 r--p 00002000 fc:00 1572915 /home/satish/linux-inject/test_inject
556621a56000-556621a57000 r--p 00002000 fc:00 1572915 /home/satish/linux-inject/test_inject
556621a57000-556621a58000 rw-p 00003000 fc:00 1572915 /home/satish/linux-inject/test_inject
556621a58000-556621a79000 rw-p 00000000 00:00 0 [heap]
7f2ff8474000-7f2ff8477000 rw-p 00000000 00:00 0
7f2ff8477000-7f2ff849f000 r--p 00000000 fc:00 2894625 /usr/lib/x86_64-linux-gnu/libc.so.6
...
...
7f2ff8692000-7f2ff869f000 rw-p 00000000 00:00 0
7f2ff86ac000-7f2ff86ad000 r--p 00000000 fc:00 1572914 /home/satish/linux-inject/libhello.so
7f2ff86ad000-7f2ff86ae000 r-xp 00001000 fc:00 1572914 /home/satish/linux-inject/libhello.so
7f2ff86ae000-7f2ff86af000 r--p 00002000 fc:00 1572914 /home/satish/linux-inject/libhello.so
7f2ff86af000-7f2ff86b0000 r--p 00002000 fc:00 1572914 /home/satish/linux-inject/libhello.so
7f2ff86b0000-7f2ff86b1000 rw-p 00003000 fc:00 1572914 /home/satish/linux-inject/libhello.so
7f2ff86b1000-7f2ff86b3000 rw-p 00000000 00:00 0
7f2ff86b3000-7f2ff86b5000 r--p 00000000 fc:00 2894474 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
....
....
7fff65e08000-7fff65e2a000 rw-p 00000000 00:00 0 [stack]
7fff65f22000-7fff65f26000 r--p 00000000 00:00 0 [vvar]
7fff65f26000-7fff65f28000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r--p 00000000 00:00 0 [vsyscall]
objdump -d -s -j .plt.sec /proc/3104/exe
/proc/3104/exe: file format elf64-x86-64
Contents of section .plt.sec:
10d0 f30f1efa f2ff25b5 2e00000f 1f440000 ......%......D..
10e0 f30f1efa f2ff25ad 2e00000f 1f440000 ......%......D..
10f0 f30f1efa f2ff25a5 2e00000f 1f440000 ......%......D..
1100 f30f1efa f2ff259d 2e00000f 1f440000 ......%......D..
1110 f30f1efa f2ff2595 2e00000f 1f440000 ......%......D..
1120 f30f1efa f2ff258d 2e00000f 1f440000 ......%......D..
1130 f30f1efa f2ff2585 2e00000f 1f440000 ......%......D..
1140 f30f1efa f2ff257d 2e00000f 1f440000 ......%}.....D..
Disassembly of section .plt.sec:
00000000000010d0 :
10d0: f3 0f 1e fa endbr64
10d4: f2 ff 25 b5 2e 00 00 bnd jmp *0x2eb5(%rip) # 3f90
10db: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
< /code>
Вопросы: < /p>
[*] Вывод машины № 1 кажется довольно простым. Но на машине № 2 я не вижу функции SayHello
На машине #1 я не вижу.>
Подробнее здесь: https://stackoverflow.com/questions/796 ... c-sections