Главная Отладка

Отладка

Xakep #276

Неядерный реактор. Взламываем протектор .NET Reactor

Для защиты приложений .NET от отладки и реверса существует множество способов (шифрование, компрессия и другие), а также специальных протекторов, таких как, например, Agile.Net и Enigma. О взломе многих из них мы уже писали. Сегодня я расскажу, как побороть еще один популярный протектор и обфускатор — .NET Reactor.

Xakep #275

Препарируем P-Code. Как реверсить старый софт на Visual Basic

Чтобы немного разнообразить свою жизнь, сегодня мы снова займемся разборкой антиквариата. Многие уже забыли о существовании такого инструмента, как давно похороненный P-Code, в который транслировались программы на Visual Basic. Тем не менее созданные с его помощью приложения до сих пор существуют, и сегодня мы с тобой аккуратно сломаем одно из них.

Xakep #274

Фемида дремлет. Как работает обход защиты Themida

Themida или «Фемида» — одна из самых навороченных защит для софта. Вместе с WMProtect ее относят к настолько суровым протекторам, что некоторые программисты, которым жаль денег на честную покупку этих инструментов (а стоят они недешево), просто имитируют их наличие, что отпугивает ленивых и неопытных хакеров. Сегодня мы поговорим о том, как сбросить триал приложения, защищенного настоящей Themida.

Xakep #270

В обход стражи. Отлаживаем код на PHP, упакованный SourceGuardian

На языке PHP можно писать практически полноценные приложения, защищенные упаковщиком SourceGuardian, декомпилятора для которого в свободном доступе не существует. Сегодня мы разберем практический способ быстрой отладки такого байткода под Windows без специальных инструментов — только ловкость рук и немного магии.

Xakep #261

Гиперотладка. Разбираем отладку Microsoft Hyper-V с самого начала

Гипервизор производства корпорации Microsoft содержит определенное количество ошибок. Поиск этих ошибок — занятие не только увлекательное, но и полезное: во-первых, Microsoft располагает собственной программой Bug Bounty, а во-вторых, знания о недокументированных возможностях ценны сами по себе. В сегодняшней статье мы рассмотрим принципы отладки гипервизора Hyper-V.

Xakep #242

Отладка MIPS. Как я собрал рабочий инструмент из сломанных запчастей

Не знаю, как тебе, а мне часто приходится сталкиваться с реверсом и отладкой на MIPS. И как ни печально, но достойных инструментов для этого совсем мало, особенно если сравнивать с другими архитектурами. Да чего уж там говорить, если даже в HexRays до сих пор нет декомпиляции MIPS. Поэтому лучшим решением для меня стало сконструировать собственный инструмент.

Xakep #238

Убить Билла. Изучаем способы принудительного завершения процессов в Windows

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

Xakep #236

Набор программ для взлома программ. Выбираем инструменты для реверса

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

Xakep #232

Злой дебаг. Исследуем и взламываем приложения для Android при помощи отладчика

Мы уже неоднократно рассказывали о взломе приложений для Android. Несколько раз мы вскрывали приложения практически голыми руками, имея только декомпилятор и дизассемблер, один раз прибегли к помощи фреймворка Frida, но есть и еще один, одновременно очевидный и неочевидный способ взлома — использовать отладчик.

Xakep #229

Искусство удаленной отладки. Готовим инструментарий для работы с ядром и вирусами

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

Xakep #227

Антиотладка. Теория и практика защиты приложений от дебага

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

Алмазный фонд «Хакера». Самые крутые материалы по реверсингу и malware за три года

Иногда мы, редакторы и авторы «Хакера», сами читаем «Хакер». Нет, ну то есть мы постоянно его читаем :), но иногда получается так, что, разрабатывая новые темы, гуглим что-нибудь интересненькое, натыкаемся на крутую статью, читаем ее с огромным удовольствием и вдруг понимаем, что... это же мы ее и делали, причем, скажем, всего пару лет назад. И при этом материал по-прежнему остается современным! И действительно, существует определенная классика, и практические кейсы, которые были актуальны, скажем, в 2015-м, будут актуальны еще несколько лет.

Xakep #121

Энциклопедия антиотладочных приемов 8. Сокрытие кода в хвостах секций

Вовлеченный в проект по созданию интерактивного распаковщика PE-файлов, я исследую особенности реализации системного загрузчика Win32 на предмет следования своим же спецификациям. Обилие багов, часть которых носит довольно коварный характер, просто поражает. Итак, сегодня мы продемонстрируем прием, позволяющий прятать код/данные от популярных дизассемблеров типа IDA Pro.

Xakep #120

Энциклопедия антиотладочных приемов 7. Скрытая установка SEH-обработчиков

Продолжая окучивать плодородную тему структурных исключений, поговорим о методах скрытой установки SEH-обработчиков, используемых для затруднения дизассемблирования/отладки подопытного кода, а также обсудим возможные контрмеры антиантиотладочных способов.

Xakep #119

Энциклопедия антиотладочных приемов 6. Кто сломал мой бряк?!

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

Xakep #118

Энциклопедия антиотладочных приемов 5. Исчерпывающее руководство по приготовлению и взлому TLS

Загадочная аббревиатура TLS таит в себе много секретов. Это — мощнейшее оружие против отладчиков и дизассемблеров. В комбинации с упаковщиками TLS превращается в гремучую смесь термоядерного типа.

Xakep #116

Энциклопедия антиотладочных приемов 4. Самотрассировка и прочие головоломки

Сегодня мы будем ломать мой crackme, напичканный антиотладочными приемами. Они основаны на особенностях обработки исключений отладчиками и на ошибках в debug engine, о которых я расскажу по ходу дела. А заодно продемонстрирую интимные подробности основных хакерских инструментов — «Ольги», «Иды», Syser’а, x86emu и прочих.

Xakep #113

Энциклопедия антиотладочных приемов 3. Обработка необрабатываемых исключений

Отладчики, работающие через MS Debugging API (OllyDbg, IDA-Pro, MS VC), вынуждены мириться с тем, что отладочные процессы «страдают» хроническими особенностями поведения. Они «ломают» логику программы, и это с огромной выгодой используют защитные механизмы. В частности, API-функция SetUnhandledExceptionFilter() под отладчиком вообще не вызывается — вовсе не баг отладчика, а документированная фича системы!

Xakep #114

Энциклопедия антиотладочных приемов 2. Трассировка — в погоне за TF, или SEH на виражах

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

Xakep #112

Энциклопедия антиотладочных приемов. Трассировка, или игры в прятки

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

Еженедельный дайджест

«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
9900 р.
на год
920 р.
на месяц
120 р.
за 1 статью

«Хакер» в соцсетях

Telegram ВКонтакте Twitter

Материалы для подписчиков