Найти в Дзене
Как создать скрипт-beautifier в Ghidra на Python?
Приветствую, дорогой читатель. Хочу представить вашему вниманию пример, как можно упростить себе жизнь при исследовании кода программ, используя скриптинг в Ghidra. Если вы уже имели опыт работы с дизассемблером, то заметили, что читать его вывод не так легко, если целью является понять более высокие абстракции, заложенные в нём. Возможно, вы даже пытались декомпилировать его в псевдокод, но работать с переменными типа local_1-999 – то ещё удовольствие. Да, можно щёлкнуть на каждую из них и присвоить имя на основе логики...
10 месяцев назад
Свой Cheat Engine с нуля! Часть 1 - Получаем список процессов и модули в нем.
Чтобы сформировать понимание, как происходит получение списка процессов, просто заглянем в исходники самого Cheat Engine. Здесь у нас есть процедура GetProcessList, в которую мы подаем массив строк, в который она запишем нам имена и айди процессов. Первое, на что обратим внимание - структура, куда записывается информация о процесе, в СЕ она выглядит так Мы можем ее записать так. Далее в процедуре идет блок с переменными Как итог я оставил так Для замены под C++ объекта ProcessList: TStrings, я использовал std::unordered_map<std::wstring, PProcessListInfo>& process_list...
10 месяцев назад
💪 Похищаем CheatEngine на C++ с нуля. Часть 0 - Введение.
🌐 Введение Данной статьей я хочу продемонстрировать процесс погружения в неизвестную сферу, методы и средства для сбора информации. Чтобы раз и навсегда закрыть вопрос какие материалы “почитать”, ведь, действуя по гайду “я повторил, но ничего не понял”. Что именно будем делать? Попробуем без особых знаний залезть в исходники софта для отладки и модификации кода, под названием Cheat Engine. Он создавался годами, а наша задача — апроприировать эти знания за короткий промежуток времени! Cheat Engine — это мощный инструмент для реверс-инжиниринга и модификации кода...
11 месяцев назад
Утилита Make: Makefile, Цели, Реквизиты, Команды, Переменные, Условия, Функции
Что такое Make? Make - это утилита, доступная под Linux, Mac и Windows (в составе MinGW), основная цель которой, состоит в автоматизации преобразования файлов из одной формы в другую. Она проверяет выходные и входные файлы и, исходя из результата, вызывает различные команды. Все необходимые условия описываются в скрипт-файле, который называется Makefile. Из чего состоит скрипт файл Makefile? Каждый Makefile содержит в себе блоки, которые состоят из 3-х элементов: Если у нас есть исходный файл main...
240 читали · 2 года назад
С++ основы: ТИПЫ, ССЫЛКИ, КЛАССЫ, СПЕЦИАЛЬНЫЕ ФУНКЦИИ, ИНКАПСУЛЯЦИЯ, НАСЛЕДОВАНИЕ, КВАЛИФИКАТОРЫ, СПЕЦИФИКАТОРЫ, ПРИВЕДЕНИЕ, ШАБЛОНЫ
НАЧАЛО В 1980-х. один из сотрудников фирмы At&T Bell Labs, совместив 2 языка Symula и C, получил С++. Его зовут Бьерн Страуструп. ТИПЫ Встроеные типы в C++ очень похожи на C: ССЫЛКИ Ссылка это всего-лишь еще одно имя для переменной. До C++11 были только lvalue (Эль'Вэлью) ссылки, но после были добавлены и rvalue (Эр'Вэлью) ссылки. Главное их различие: На примере типа int объявляется следующим образом: Так как rvalue ссылки связываются с временным объектом, она может "провиснуть", ее никогда нельзя возвращать, как результат из функции...
2 года назад
Ассемблерные команды или как пользоваться Cheat Engine, x64dbg и IDA Pro
Дочитай до конца и ты сможешь взломать любой софт. Ну.. или нет.. ↓↓↓ В конце статьи есть видео формат ↓↓↓ Сегодня я постараюсь собрать самый полный гайд по инструментам, которые помогут тебе изучить, как работает исполняемый *.exe файл изнутри. О чем собственно речь?! Любая программа, которую ты запускаешь на своем ПК или смартфоне является машинным кодом, который состоит из 0-ей и 1-иц. И если процессор спокойно живет с этим, то человеку прочитать такое очень сложно. Для ускорения написания программ много лет назад люди изобрели язык программирования, который называется ассемблер...
609 читали · 2 года назад