Реверсивный инжиниринг приложений под Windows

Автор: literator от 25-06-2024, 03:57, Коментариев: 0

Категория: КНИГИ » ПРОГРАММИРОВАНИЕ

Название: Реверсивный инжиниринг приложений под Windows
Автор: Андрей Бирюков
Издательство: ДМК Пресс
Год: 2024
Страниц: 378
Язык: русский
Формат: pdf
Размер: 91.0 MB

Реверсивный инжиниринг считается одним из наиболее сложных направлений в информационной безопасности (ИБ). В книге автор предлагает приоткрыть завесу тайны над этой темой и с помощью практических примеров рассмотреть, как работают приложения под ОС Windows, а также разобраться в том, как эксплуатировать уязвимости переполнения буфера, размещать свой код в выполнимых файлах, находить полезную информацию в дампах памяти и многое другое.

Код практически любого приложения может содержать ошибки. Самый прос­той способ исправить эти ошибки – это найти в исходном коде проблемную команду или функцию и внести соответствующие исправления в код. Но что делать, когда по тем или иным причинам исходный код нам не доступен, как в случае с проприетарным ПО? Если у нас имеется только откомпилированный выполнимый файл – артефакт. Например, для выявления уязвимостей, недокументированных возможностей и т.д. В таком случае нам тоже потребуется обратная разработка. Результатом обратной разработки является построение детального алгоритма работы программы, а также выявление уязвимостей и других интересующих исследователя аспектов работы программного обеспечения. Таким образом, обратная разработка нужна тем, кто занимается поиском уязвимостей с целью улучшения защищенности программного обеспечения, – багхантерам.

Также реверсивный инжиниринг требуется программистам, работающим с низкоуровневыми языками программирования (например, разработчикам драйверов), где без знания ассемблера не обойтись.

Не стоит забывать, что вредоносный код – это тоже программное обеспечение, и его тоже необходимо реверсить для выявления принципов заражения и для того, чтобы понять, как от них можно защититься. Этими задачами занимаются вирусные аналитики.

Реверсинг приложений традиционно считается одним из самых сложных направлений в информационных технологиях. Многих пугает необходимость изучать язык ассемблера, необходимый для работы с дизассемблерами и отладчиками. Также программистам, работавшим только с языками высокого уровня, не всегда понятны принципы работы со стеком, обратная запись байтов в памяти и манипуляции с регистрами.

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

В начале книги мы уделим внимание основам языка ассемблера, поговорим об основных инструкциях, регистрах и организации памяти. Но потом сразу же начнем решать Crack Me (крякмиксы, задачки «взломай меня»). Это маленькие приложения, в которых необходимо ввести определенный пароль или выполнить иное действие, для того чтобы получить сообщение об успешном решении. Решение крякмиксов позволяет быстрее понять основные принципы реверсинга.

Далее мы поговорим о переполнении буфера – одной из самых распространенных ошибок программистов. Мы откомпилируем уязвимое приложение на С и затем напишем к нему эксплойт. Эта тема будет наиболее интересна специалистам по анализу защищенности приложений.

Потом обсудим инъекцию своего кода в выполнимые файлы. В частности, рассмотрим формат PE, следы, которые оставляют компиляторы в файлах, понятие code cave и многое другое. Эта тема будет полезна прежде всего вирусным аналитикам и специалистам по анализу защищенности.

После этого мы поговорим о реверсинге приложений, написанных на .NET. Здесь речь пойдет о самом фреймворке Microsoft .NET, языке CIL и инструментах, необходимых для реверсинга.

Книга предназначена как для начинающих специалистов, желающих разобраться в реверс-инжиниринге, так и для опытных специалистов по ИБ, интересующихся данной темой.

Скачать Реверсивный инжиниринг приложений под Windows








Нашел ошибку? Есть жалоба? Жми!
Пожаловаться администрации
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.