例えば、ケルネン機能system_call
逆コンパイルする:これはLinux上で行うのはどのよう特定のカーネル関数をどのように逆コンパイルしますか?
push %eax
...
call * 0xc03094c0(,%eax,,4)
?
例えば、ケルネン機能system_call
逆コンパイルする:これはLinux上で行うのはどのよう特定のカーネル関数をどのように逆コンパイルしますか?
push %eax
...
call * 0xc03094c0(,%eax,,4)
?
は、私はそれがこのような単純なことができると思います。次に、gdb vmlinux
を実行し、C関数を見たい場合はdisas <function name>
と入力します。ただし、system_call
はCの関数ではないので、GDBは同じ方法でそれを探しません。しかし、あなたはまだ分解することができます:
(gdb) info addr system_call
Symbol "system_call" is at 0xc0403964 in a file compiled without debugging.
(gdb) x/4i 0xc0403964
0xc0403964: push %eax
0xc0403965: cld
0xc0403966: push %fs
0xc0403968: push %es
逆コンパイル、または逆アセンブルすることはできますか? – Karmastan