Сейчас на форуме: Lohmaty (+7 невидимых)

 eXeL@B —› Вопросы новичков —› mprotect
Посл.ответ Сообщение

Ранг: 5.0 (гость)
Активность: 0.030.01
Статус: Участник

Создано: 01 ноября 2018 00:11 · Поправил: Vladislou
· Личное сообщение · #1

Пытаюсь выполнить syscall(mprotect) на участок памяти, а именно на код програм, с целью затем переписать(хочу сделать разрешение на запись). Выполняю вызов сискола через переполнение буфера и rop цепочку, передаю все аргументы согласно документации. rax - 10(0xa); rdi - 0x555555554739; rsi - 51; rdx - 7. Все аргументы перед непосредственным вызовом мпротекта лежат на своих местах, но после вызова, выдается ошибка(возвращает 0хffffffffffff в rax) и изменения защиты не происходит. В чем может быть проблема?




Ранг: 527.7 (!), 381thx
Активность: 0.160.09
Статус: Участник
Победитель турнира 2010

Создано: 01 ноября 2018 00:20
· Личное сообщение · #2

addr must be aligned to a page boundary.

http://man7.org/linux/man-pages/man2/mprotect.2.html

-----
127.0.0.1, sweet 127.0.0.1




Ранг: 5.0 (гость)
Активность: 0.030.01
Статус: Участник

Создано: 01 ноября 2018 23:35
· Личное сообщение · #3

Установил адрес 0х555555554000, и размер 0х1000
Все равно не работает.


 eXeL@B —› Вопросы новичков —› mprotect
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати