172 похожих чатов

Друзья, решил поиграться немного с сырыми указателями на Линуксе. Суть: Есть очень

простая программа из crackmes, которая выводит в консоль "введите пароль: " и ожидает ввода пароля соответственно. Если ввёл правильно - выводит сообщение "молодец" и закрывается, если неправильно - то выводит сообщение "неверно" и закрывается.

Задача:
Изменить поведение программы через изменяемые сырые указатели (`*mut u8`), чтобы программа без ввода пароля, во время рантайма, сразу выдала "молодец". При этом, важно, не дизассемблируя её, то есть прямая работа с памятью процесса.

Проделанная работа (код - тык):
Определение PID процесса, диапазон и сдвиг адресов, что использует процесс. Для пробы, дёргая за ptrace, пытался изменить:
1) значение хотя бы одного адреса памяти;
2) значение 4-х/8-ми/16-и адресов памяти разом;
3) разом все значения адреса памяти;
Однако, понял, что все адреса памяти - нули. Куда посоветуете копать дальше? Нашел что-то про ASLR, но не очень понимаю что дальше.

p.s. я не пытаюсь "взломать" программу в прямом понимании - интересна конкретно работа и изменение памяти процесса во время рантайма с последующим in-place переопределением поведения, ну и также работа с сырыми указателями и unsafe Rust.

p.p.s.: необязательно помогать кодом) мне скорее требуется понять, куда дальше двигаться, чтобы я понял, почему вся доступная память процесса - это нули, и куда дальше двигаться, чтобы таки изменить память процесса на какое-нибудь любое значение.

7 ответов

28 просмотров

Сам крякми дай, чтобы проще было локально потыкать

А ты проверял, что сисколлы работают?

К|/|pи/\/\-6е3yглbIи Автор вопроса
Пух
Сам крякми дай, чтобы проще было локально потыкать

Минутку, сейчас найду, а то распаковал, а ссыль потерял.

Mikail Bagishov
А ты проверял, что сисколлы работают?

Просто тебя с легкостью могли послать нафиг еще на этапе attach, а никакой обработки ошибок я в твоем коде не вижу

К|/|pи/\/\-6е3yглbIи Автор вопроса
Mikail Bagishov
А ты проверял, что сисколлы работают?

Точно скажу, что нет, не проверял. Как я могу это проверить или чтобы не доставать, где можно узнать как проверить?)

К|/|pи/\/\ 6е3yглbIи
Точно скажу, что нет, не проверял. Как я могу это ...

Из man 2 ptrace: > RETURN VALUE On success, the PTRACE_PEEK* requests return the requested data (but see NOTES), the PTRACE_SECCOMP_GET_FILTER request returns the number of instructions in the BPF program, and other requests return zero. On error, all requests return -1, and errno is set appropriately. Since the value returned by a successful PTRACE_PEEK* request may be -1, the caller must clear errno before the call, and then check it af‐ terward to determine whether or not an error occurred.

К|/|pи/\/\-6е3yглbIи Автор вопроса

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Всем привет! Кто пользуется DevExpress, подскажите пожалуйста, реализован ли в TcxGrid в новых версиях поиск по датам как в Экселе (ну т.е. не просто список чекбоксов со значе...
A Z
4
Карта сайта