Ladím binární soubor ARM pomocí IDA Pro připojením k QEMU (vzdálené ladění gdb).
V konfiguraci gdb volím jako zařízení ARM_versatilepb
.
Nyní mohu úspěšně ladit binární soubor ARM. V binárním souboru však nemohu spustit syscall jako fork ()
, socket ()
atd.
Myslím, že důvod pro to je to, že používám bare metal config QEMU. Jak tedy upravím tuto konfiguraci tak, aby na QEMU běžel celý systém Linux, abych mohl spouštět i syscall?
V gdb_arch.cfg existuje jiný název zařízení, ARM_Linux. code> soubor IDA Pro, který má v příkazovém řádku předaný parametr
arm_root.img
.
Vybral jsem toto zařízení, ale ani poté jsem nemohl provést syscalls.
Konfigurace bare metal, kterou v současné době používám, je podrobně zde.