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

Анрей С какой целью зашёл?

43 ответов

47 просмотров

Господин транзистор, вы что-нибудь слышали о перехвате winApi функций?

КТ315- Автор вопроса
КТ315
Я бог перехватов.

А где можно научиться такому же уровню?

КТ315- Автор вопроса
Alexey
А где можно научиться такому же уровню?

Это очень сложная философия, такому нигде не учат.

КТ315
Я бог перехватов.

До первой многопоточной программы, где нужно ставить и удалять хуки динамически?

КТ315
Это очень сложная философия, такому нигде не учат.

Я просто посмотрел видос , мне понравилось. Хочу сделать какой-нибудь перехват

Alexey
Я просто посмотрел видос , мне понравилось. Хочу с...

Берёшь любую либу, можешь начать с детурс. И твой код работает везде. В отличие от.

КТ315- Автор вопроса
s54820
До первой многопоточной программы, где нужно стави...

Отправляй мне такую программу, и говори что делать.

КТ315- Автор вопроса
Alexey
Эта кто

(Microsoft) Detours

КТ315- Автор вопроса
Alexey
Эта кто

Шаблонная страшная библиотечка для новичков, блевать тянет.

КТ315
Отправляй мне такую программу, и говори что делать...

Ты снова скажешь, что если программа падает в одном проценте случаев, то это ничего, так и должно быть.

s54820
Берёшь любую либу, можешь начать с детурс. И твой ...

А как либу менять, контрольная сумма ругаться не будет?

КТ315- Автор вопроса
s54820
Ты снова скажешь, что если программа падает в одно...

1% случаев? Так-то твой Detours сам падает с наибольшим процентом 😃

Alexey
А как либу менять, контрольная сумма ругаться не б...

Контрольная сумма если и сверяется, то при загрузке. В рантайме вычисляют только протекторы, но протекторы — это отдельная тема, они и хуки детектить умеют.

КТ315- Автор вопроса
КТ315
1% случаев? Так-то твой Detours сам падает с наибо...

использовал его в паре проектов, в том числе в коммерческом и когда-то давно в курсовой работе. падений не обнаружено

КТ315- Автор вопроса
Aleksandr
использовал его в паре проектов, в том числе в ком...

Правильно. "У меня не ломается, а если у кого-то ломается, то это их проблемы", я такого же мнения 👍

Alexey
Рептилойд

А ты то хоть мне подскажешь как сделать первый хук?

Mixail Frolov
таблицу импорта правишь

Ахахаха, а что, так можно было что-ли🤣

КТ315- Автор вопроса
The Bird of Hermes
Ахахаха, а что, так можно было что-ли🤣

Не, это скучно. Там ассемблер почти не нужен.

КТ315- Автор вопроса
Alexey
А ты то хоть мне подскажешь как сделать первый хук...

Смотри, находишь функцию-жертву, снимаешь защиту на запись (VirtualProtect), читаешь и сохраняешь первые 2-3 инструкции, а на место них ставишь "mov eax, addr \ call eax", где addr - твоя функция, внутри своей функции вставляешь эти прочитанные 2-3 инструкции оригинальные. Всё, ты перехватил функцию.

КТ315
Смотри, находишь функцию-жертву, снимаешь защиту н...

Первые две инструкции: dec jnz. Всё упало. А, и ты забыл ему сказать, что ему придётся дизасм длин с собой таскать.

КТ315- Автор вопроса
s54820
Первые две инструкции: dec jnz. Всё упало. А, и ты...

😂 Я даже не знаю, что на это ответить... Ты ожидаешь, что я буду советовать ему писать шаблончики, но это не так) и нет, никакой дизассемблер не нужен, просто нужно открыть функцию-жертву в отладчике, и посмотреть глазами сколько байтиков идёт на замену)

КТ315
😂 Я даже не знаю, что на это ответить... Ты ожидае...

Ну то есть ты привязался к бинарнику, бинарник обновился, всё снова упало.

КТ315- Автор вопроса
s54820
Ну то есть ты привязался к бинарнику, бинарник обн...

Ок, писал ты хук на Detours, программа обновилась, в неё добавили протектор, всё упало, тратишь 2 года на изучение ассемблера чтобы написать узконаправленный хук.

Есть, но addr куда-то нужно положить. Есть call addr, но для него нужно считать офсет, а транзистору видимо лень было.

s54820
Есть, но addr куда-то нужно положить. Есть call ad...

Стоп, куда то положить адресс это что значит?

s54820
Есть, но addr куда-то нужно положить. Есть call ad...

есть call 16:32 с непосредственными значениями, если я не путаю

Alexey
Стоп, куда то положить адресс это что значит?

Ну ты спросил про indirect переход. Оно сначала читает дворд по addr и потом по этому дворду переходит. Так, например, импорты работают: ты call [ExitProcess], а там ExitProcess dd адрес_ExitProcess_внутри_kernel32_dll, оно читает и потом переходит. То же самое происходит с call eax, но адрес читается из регистра. И, наконец, у нас есть относительный джамп, там адрес кодируется как часть самой инструкции, и его нужно высчитывать, потому что это смещение от следующей инструкции, а не абсолютный адрес.

Aleksandr
есть call 16:32 с непосредственными значениями, ес...

Есть, но это это нужно прочитать cs, чтобы его потом закодировать.

s54820
Ну ты спросил про indirect переход. Оно сначала чи...

Да это я понимаю, я совсем не понимаю зачем это делать, если я вызываю функцию, значит, я записал ее в библиотеку , значит, я могу вызвать ее call dword [OurProcedure]

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта