Публикации автора: yashechka

THE IDA PRO BOOK 2 ИЗДАНИЕ - Неофициальное руководство по самому популярному дизассемблеру в мире

8 ноя 2020

Вам может быть интересно, чего ожидать от книги, посвященной IDA Pro. Хотя эта книга явно ориентирована на IDA, она не предназначена для того, чтобы воспринимать её как Руководство пользователя IDA Pro. Вместо этого мы намерены использовать IDA в качестве вспомогательного инструмента для обсуждения методов реверс инжиниринга, которые вы найдете полезными при анализе широкого спектра программного обеспечения, от уязвимых приложений до вредоносных программ. При необходимости мы предоставим...
Читать далее
Лайков +3 Комментариев12 Просмотров16.169

Введение в реверсинг с нуля, используя IDA PRO. Часть 67. Часть 2.

19 июн 2019

Проблема в том, что эта секция будет использоваться источником, и вам нужно скопировать данные до SEH, а затем завершить ввод, поэтому происходит сбой чтения перед копированием всего стека и сбой в стеке ядра. Я поставлю эту IDA на паузу на одну минуту и открою другую, где у меня есть драйвер. Одна вещь, которую я не видел и допустил ошибку - это то, что буфер назначения [ATTACH] Мы видим, что он инициализируется байтами 0x1FF, но непосредственно перед обнулением байта, который находится...
Читать далее
Лайков +6 Комментариев3 Просмотров8.944

Введение в реверсинг с нуля, используя IDA PRO. Часть 65. Часть 3.

13 июн 2019

Мы видим, что есть две разные операции и SEND. Мы должны изучить обе операции, чтобы увидеть, какая из них работает и почему. [ATTACH] В этом компиляторе резервируются 4 QWORDS над пространством переменных, так что дочерняя функция хранит аргументы, которые передаются через регистры. [ATTACH] Таким образом, поскольку дочерняя функция имеет 5 аргументов, 5-й будет VAR_248. Я переименую переменную в CONST_0, так как программа пишет туда ноль. [ATTACH] Давайте сначала проанализируем...
Читать далее
Лайков +1 Комментариев0 Просмотров3.856

Введение в реверсинг с нуля, используя IDA PRO. Часть 65. Часть 2.

11 июн 2019

[ATTACH] Но мы можем считать, что программа возвращает значение, которое является случайным и увеличивается, и это значение делится на константу 0x7D0. [ATTACH] И результат сохраняется в EAX, остаток - в EDX. [ATTACH] Поэтому COUNTER_GUITA на этом этапе будет меньше, чем CONTADOR_GUITA₂. [ATTACH] И когда COUNTER_GUITA будет меньше 30000, а COUNTER_GUITA_2 будет больше, программа изменит вывод на желтый, то же самое произойдет, когда COUNTER_GUITA будет меньше 10000, а COUNTER_GUITA_2...
Читать далее
Лайков +2 Комментариев0 Просмотров2.913

Введение в реверсинг с нуля, используя IDA PRO. Часть 67. Часть 1.

24 апр 2019

Метод, который мы не рассмотрели, чтобы эксплуатировать одну из уязвимостей драйвера HACKSYS. Мой друг попросил у меня несколько разъяснений о методе, используемом для обхода COOKIE на 32-битных машинах, когда у нас есть переполнение стека в ядре, и мы можем перезаписать адрес возврата, но есть COOKIE, который мешает нам завершить выполнение кода. Очевидно, что если у нас есть другая уязвимость, которая допускает утечку данных, мы могли бы прочитать значение COOKIE и затем использовать его...
Читать далее
Лайков +1 Комментариев0 Просмотров3.884

Введение в реверсинг с нуля, используя IDA PRO. Часть 66. Часть 1.

19 апр 2019

ТУТОРИАЛ ДЛЯ РЕШЕНИЯ ЗАДАНИЯ NICO ИЗ EKOPARTY 2018 - ЧАСТЬ 2. Давайте сделаем скрипт на PYTHON для решения конкурсной задачи NICO, которую мы реверсировали в предыдущей части. Cкрипт основан на реверсинге, который мы делали, а также на решении, которое прислал мой дружбан LUCAS KOW, особенно это видно в части про ROP, и мы объясним, как это сделать. [ATTACH] Если я запускаю скрипт LUCAS, я вижу что останавливается счетчик de la fuga de capitales(сложно понять без запуска про что он...
Читать далее
Лайков +2 Комментариев0 Просмотров2.812

Введение в реверсинг с нуля, используя IDA PRO. Часть 65. Часть 1.

18 апр 2019

ТУТОРИАЛ ДЛЯ ЗАДАНИЯ NICO ДЛЯ EKOPARTY 2018 - ЧАСТЬ 1 Давайте отреверсим шаг за шагом задание NICO для EKOPARTY 2018. Это сервер скомпилированный 64-битным компилятором и работающий конечно на WINDOWS. Для начала я посмотрю на него в WINDOWS 7. В любом случае, часть статического реверсинга будет похожей. При запуске мы видим следующее. [ATTACH] Описание находится здесь. https://labs.bluefrostsecurity.de/blog/2018/09/11/bfs-ekoparty-2018-exploitation-challenge/ [ATTACH] Резервные...
Читать далее
Лайков +1 Комментариев0 Просмотров3.553

Введение в реверсинг с нуля, используя IDA PRO. Часть 64. Часть 2.

12 апр 2019

Проблема здесь заключается в том, что в первом вызове MEMCPY функция DESTINATION является P_DEST, откуда она получает значение, возможно, наше, с размером 0x20, но здесь не ясно, кто является источником MEMCPY, кажется, что программа вычисляет его в той же функции, поэтому нам придется немного проанализировать её, чтобы увидеть, откуда исходит SRC и, конечно, наше значение, которое будет в первом WORD этого буфера, как SRC, так и DESTINATION, так как программа копирует в другие первые 0x20...
Читать далее
Лайков 0 Комментариев0 Просмотров3.355

Введение в реверсинг с нуля, используя IDA PRO. Часть 64. Часть 1.

6 янв 2019

Реверсинг задачи по SCADA В группе телеграмм мы поставили перед собой задачу, которая относится к реверсингу следующего CVE, чтобы практиковаться с реальным программным обеспечением. CVE-2013-0657 https://ics-cert.us-cert.gov/advisories/ICSA-13-018-01 Здесь есть ссылка. Все версии и 9 и 10 являются уязвимыми, за исключением тех версий, к которым был применен патч. [ATTACH] Уязвимую версию 9 можно загрузить отсюда: HTTPS://DRIVE.GOOGLE.COM/OPEN?ID=1V4DAVXWD6FYSMVK4UKRG-SHCJNXI55XN А...
Читать далее
Лайков +1 Комментариев0 Просмотров3.365

Введение в реверсинг с нуля, используя IDA PRO. Часть 63.

5 янв 2019

СЕГМЕНТАЦИЯ И ПЭЙДЖИНГ ПАМЯТИ ДЛЯ АРХИТЕКТУРЫ X86 В этой части туториала мы попытаемся увидеть управление памятью для архитектуры X86, а позже попытаемся актуализировать знания для X64. Это серьёзная тема. Она включает в себя таблицы, которые вы должны понять и научиться находить, поэтому мы будем идти медленно и верно. Давайте посмотрим, некоторые понятия полученные из Интернета. РЕАЛЬНАЯ ПАМЯТЬ ТАКЖЕ НАЗЫВАЕМАЯ ФИЗИЧЕСКАЯ ИЛИ ПАМЯТЬ RAM Эта память используется для хранения инструкций...
Читать далее
Лайков +3 Комментариев4 Просмотров5.997

Введение в реверсинг с нуля, используя IDA PRO. Часть 62.

21 дек 2018

Мы возвращаемся после праздников с новыми туториалами. В этом туториале мы увидим вариант эксплуатации того же самого драйвера, который мы видели для WINDOWS 7 32 бит. Только теперь сделаем для WINDOWS 10 32 бит. Разница, как мы сказали, состоит в SMEP. Это защита позволяет избежать перехода ядра на выполнение страниц, помеченных как пользовательские. Как мы делали в примерах, которые мы видели до сих пор, мы выделяли страницу в пользовательском режиме с разрешением на выполнение. Когда мы...
Читать далее
Лайков +1 Комментариев1 Просмотров4.308

Введение в реверсинг с нуля, используя IDA PRO. Часть 61.

17 дек 2018

Мы рассмотрим другой случай в уязвимом драйвере. Теперь поговорим о INTEGER OVERFLOW. Многие спрашивают меня, почему бы не проанализировать его непосредственно в C или C++. Проблема состоит в том, что некоторые из них уже сделаны на C и C++. Методы те же самые. Поэтому перенос их на PYTHON не только приносит что-то новое, но и заставляет нас практиковаться в PYTHON и библиотеке CTYPES, что является для нас важным. Для тех, кто хочет увидеть методы, исходный код доступен здесь:...
Читать далее
Лайков +2 Комментариев4 Просмотров4.368

Введение в реверсинг с нуля, используя IDA PRO. Часть 60.

5 дек 2018

Перед тем, как начинать объяснять скрипт на PYTHON давайте скажем, что он основан на коде языка C, который находится на странице уязвимого драйвера. https://github.com/hacksysteam/HackSysExtremeVulnerableDriver/tree/master/Exploit Этот метод достаточно старый. Мы использовали его в моей работе совсем недавно. Хотя мы не использовали библиотеку CTYPES поэтому если есть какая-либо ошибка при использовав CTYPES, разработчики просят их простить. И это не то что я использую каждый день. Мы...
Читать далее
Лайков +1 Комментариев1 Просмотров4.604

Введение в реверсинг с нуля, используя IDA PRO. Часть 59.

29 ноя 2018

Давайте рассмотрим ARBITRARY OVERWRITE(записать то, что мы хотим туда куда мы хотим) того же самого уязвимого драйвера. Конечно, я хочу уточнить, что это старый метод, который работает только на WINDOWS XP и WINDOWS 7, и в этом случае только для машин x86. НА МАШИНАХ С WINDOWS 7 64 БИТ ЭТО НЕ БУДЕТ РАБОТАТЬ. По крайней мере если не адаптировать немного эксплоит. Мы должны хорошо проверить некоторые значения которые не равны. Наша цель - это 32-х битная WINDOWS 7. Но всё равно это нам...
Читать далее
Лайков +2 Комментариев2 Просмотров4.000

Введение в реверсинг с нуля, используя IDA PRO. Часть 58.

3 ноя 2018

Хорошо. Нам осталось добавить сам шеллкод. Это типичный шеллкод, который крадет токен процесса SYSTEM и копирует его в наш процесс. Он очень короткий. Но стоит его хорошо проанализировать. shellcode="\x53\x56\x57\x60\x33\xC0\x64\x8B\x80\x24\x01\x00\x00\x8B\x40\x50\x8B\xC8\xBA\x04\x00\x00\x00\x8B\x80\xB8\x00\x00\x00\x2D\xB8\x00\x00\x00\x39\x90\xB4\x00\x00\x00\x75\xED\x8B\x90\xF8\x00\x00\x00\x89\x91\xF8\x00\x00\x00\x61\x33\xC0\x83\xC4\x0C\x5D\xC2\x08\x00" Шеллкод - довольно общий. То, что...
Читать далее
Лайков +1 Комментариев2 Просмотров5.533

Введение в реверсинг с нуля, используя IDA PRO. Часть 57

3 ноя 2018

Хорошо. Мы будем пытаться эксплуатировать переполнение стека из скрипта PYTHON. Обычно эксплуатация ядра происходит локально. Другими словами, скрипт уже эксплуатирует некоторую программу, которая не имеет привилегий системы и хочет повысить привилегии и быть с правами SYSTEM, что устраняет ограничения, которые имеет эксплуатируемый процесс, который имеет только ограниченные привилегии обычного пользователя на машине. Поэтому, за исключением очень редких исключений, эксплойты ядра - это...
Читать далее
Лайков +7 Комментариев5 Просмотров4.937

Введение в реверсинг с нуля, используя IDA PRO. Часть 56.

28 окт 2018

Давайте теперь рассмотрим драйвер, который запрограммирован с различными уязвимостями, чтобы понять, как их эксплуатировать. Как и всегда мы будем использовать WINDOWS 7 SP1 без какого-либо патча безопасности. Мы знаем, что здесь всё будет работать. Затем мы увидим, какие изменения есть ниже и какие другие возможности существуют в новых системах. Но мы будем идти потихоньку и никуда не будем спешить. У нас есть драйвер, скомпилированный с символами. У вас есть возможность эксплуатировать...
Читать далее
Лайков +1 Комментариев1 Просмотров5.111

Введение в реверсинг с нуля, используя IDA PRO. Часть 55.

26 окт 2018

Давайте рассмотрим следующий пример. Но поскольку, в этом случае, мы будем изменять значение переменной из ядра, мы должны понимать, что мы делаем. Иначе мы спровоцируем синий экран. Первую вещь, которую мы будем делать, это загрузим предыдущее упражнение и отладим его с помощью WINDBG, чтобы увидеть значение, необходимое для этого примера. Поскольку, я не говорю, что значение является таковым, потому что это смещение изменяется от системы к системе, несмотря на то оно уведомляет меня о...
Читать далее
Лайков +1 Комментариев1 Просмотров4.649

Введение в реверсинг с нуля, используя IDA PRO. Часть 54.

22 окт 2018

Мы собираемся немного изменить предыдущее упражнение, а также сделаем программу для пользовательского режима, прямо в PYTHON. Для этого, на целевой машине, где запущен драйвер, мы должны установить PYTHON. Я установил версию 2.7, а также загрузил инсталлятор PYWIN32, который соответствует моей версии PYTHON. https://sourceforge.net/projects/pywin32/files/pywin32/Build 214/ Поскольку моя версия PYTHON равна 2.7, то скачайте этот файл. [ATTACH] Это инсталлятор. Запускаем его и он...
Читать далее
Лайков +1 Комментариев0 Просмотров2.660

Введение в реверсинг с нуля, используя IDA PRO. Часть 53.

22 окт 2018

Деталь, про которую я хотел рассказать в этом туториале, которую в предыдущей части мы не рассматривали, так как определение структуры IRP не было для нас полным... Если я вернусь к отладке и когда остановлюсь, я буду использовать командную строку WINDBG, чтобы увидеть содержимое структуры. Мы знаем, что команда DT показывает нам содержимое структуру. В этом случае это содержимое структуры _IRP. [ATTACH] IDA не показывает нам поле по смещению 0x60, которое является тем, которое читается и...
Читать далее
Лайков +1 Комментариев1 Просмотров4.472

Введение в реверсинг с нуля, используя IDA PRO. Часть 52.

21 окт 2018

Мы будем продолжать с этой третьей части о ядре и прежде чем перейти непосредственно к эксплуатации, мы будем реверсить и понимать определенные структуры функциональность которых поймем позже, когда мы увидим их в более сложных драйверах. В этом случае, мы будем создавать драйвер, который будет не только загружаться и выгружаться как раньше, но который сможет из программы в пользовательском режиме, присылать себе определенные аргументы для взаимодействия с ней. Чтобы получать информацию из...
Читать далее
Лайков +1 Комментариев2 Просмотров4.699

Введение в реверсинг с нуля, используя IDA PRO. Часть 51

21 окт 2018

Перед тем, как приступить к ВИДЕОТУТОРИАЛАМ, мы должны скомпилировать и пореверсить немного те драйверы, что были сделаны в предыдущей части, а также некоторые другие драйверы, чтобы ознакомиться с тем, как они работают. В случае простого драйвера из части 50, это простой HELLO WORLD, очень простой для реверсинга. Мы уже увидели, что при его компиляции со старым WDK 7.1 есть несколько простых подпрограмм, а в новом WDK 10 есть несколько функций перед инициализацией, но они приходят к тому...
Читать далее
Лайков +2 Комментариев1 Просмотров4.472

Введение в реверсинг с нуля, используя IDA PRO. Часть 50

5 авг 2018

РАБОТА С ЯДРОМ WINDOWS. Смысл этого туториала состоит в том, чтобы создать небольшой гайд по реверсингу и отладке ядра. Я не думаю, что очень важно делать очень подробное введение про то, что такое ядро. Для этого есть тысяча туториалов. Но несмотря на это я скопирую эти определения. KERNEL или ЯДРО это фундаментальный компонент любой операционной системы. Оно отвечает за то, что программное обеспечение и аппаратное обеспечение любого компьютера может работать вместе в той же системе, для...
Читать далее
Лайков +2 Комментариев4 Просмотров9.518

Mikrotik Pre MTCNA Test

2 авг 2018

Один очень хороший человек помог Яше попасть на дорогие подкурсы, и Яша смог защитить экзамен MTCNA на 90% и получить первый в его жизни сертификат. Решил тут оставить ответы на предварительный тест. Вдруг кому-то понадобиться, кто не может набрать 100% MAC layer by OSI model is also known as * Layer 2 Which computers would be able to communicate directly (without any routers involved): V 10.5.5.1/24 and 10.5.5.100/25 V 10.10.0.17/22 and 10.10.1.30 The network address is * The first...
Читать далее
Лайков +2 Комментариев16 Просмотров21.147

Введение в реверсинг с нуля, используя IDA PRO. Часть 49

24 июн 2018

На протяжении этого курса мы видели основы использования IDA для выполнения статического реверсинга, распаковки, эксплоитинга. У нас остаются ещё несколько тем для обсуждения, но внутри темы об эксплуатации у нас остается одна из наиболее тяжелых форм эксплуатации и которая пугает большое количество людей. Мы рассмотрим атаку USE AFTER FREE. Мы в довольно полной форме в нескольких упражнениях рассмотрели тему переполнений буфера, как эксплуатировать и переполнять буферы в стеке и куче и...
Читать далее
Лайков +3 Комментариев2 Просмотров5.941

Введение в реверсинг с нуля, используя IDA PRO. Часть 48-2.

20 июн 2018

[ATTACH] LEA EAX, DS:110H[EAX*4] Программа умножает значение 0x2 на 4 и складывает полученное значение со значением 0x110 и затем вычитает из найденного значения HEAP_BUCKET и сохраняет результат в переменную VAR_2C. Этот адрес, который сохраняется в переменную VAR_2C является началом таблицы LFH, так как HEAP_BUCKETS находится по смещению 0x110 и должен быть равен 8, потому что поле находится внутри таблицы BUCKETS, поэтому в переменной VAR_2C программа сохраняет значение 0x24ACF8,...
Читать далее
Лайков +4 Комментариев5 Просмотров5.270

Введение в реверсинг с нуля, используя IDA PRO. Часть 48-1.

3 июн 2018

Мы будем стараться продолжать обсуждать распределение, чтобы увидеть сможем ли мы понять логику распределения и увидеть, что говорит программа, если распределение происходит в LFH или в СТАНДАРТНОЙ КУЧЕ. Мы будем продолжать использовать исполняемый файл из того же практического упражнения. Мы загружаем исполняемый файл вне IDA из консоли, не используя скрипт PYTHON. Мы вводим номер, который нас просит программа (1073741828), присоединяем WINDBG к IDA как отладчик, помещаем BP на функцию...
Читать далее
Лайков +1 Комментариев2 Просмотров5.014

Введение в реверсинг с нуля, используя IDA PRO. Часть 47.

2 июн 2018

Давайте попробуем прояснить некоторое вещи, которые мы ещё не упоминали в теме о куче и которые очень необходимы. Мы будем делать это снова смотря на упражнение PRACTICA 44 о котором мы говорили в WINDOWS 7. Мы снова посмотрим на него же в тех же программах. Хорошо заметить, что способ обработки кучи очень сильно изменился от XP к WINDOWS 7, и имеет больше изменений даже до WINDOWS 10. Поэтому способы эксплуатации, которые работали в одной системе, могут не работать в другой. Верно также,...
Читать далее
Лайков +1 Комментариев1 Просмотров5.474

Введение в реверсинг с нуля, используя IDA PRO. Часть 46.

8 май 2018

Хорошо. Мы будем рассматривать упражнение из 44 главы. http://ricardonarvaja.info/WEB/INTRODUCCION AL REVERSING CON IDA PRO DESDE CERO/EJERCICIOS/PRACTICA_44.7z Прежде чем это сделать, давайте рассмотрим некоторые вещи. Эксплоиты для кучи сильно зависят от программы и её уязвимости. Некоторое из уязвимостей эксплуатируются, а некоторые нет. Во многом надежность (процент правильной работы против некорректной работы программы) меньше чем для других типов эксплоитов, которые эксплуатируют...
Читать далее
Лайков +2 Комментариев2 Просмотров5.063

Введение в реверсинг с нуля, используя IDA PRO. Часть 45.

4 май 2018

Мы будем снова продолжать практиковаться с упражнением PRACTICA41B, но на этот раз в WINDBG, используя MONA вне IDA. Конечно, мы будем использовать тот же исполняемый файл, который уже имеет байты EB FE и поэтому программа зациклена. В любом случае, хорошо держать файл также открытым в ЗАГРУЗЧИКЕ IDA без отладки, чтобы всё было ясно. Основная идея состоит в том, чтобы увидеть какую информацию мы получаем в обоих случаях, используя WINDBG внутри IDA или используя WINDBG вне IDA, но пользуясь...
Читать далее
Лайков +5 Комментариев4 Просмотров5.086

Введение в реверсинг с нуля, используя IDA PRO. Часть 44.

2 май 2018

Конечно, нам нужно решить упражнение PRACTICA_44, но мы будем решать его в следующих частях. Сейчас мы увидим дополнительную информацию, которую мы можем получить используя WINDBG внутри IDA. Мы будем использовать предыдущий случай PRACTICA 41B, про который мы знаем, что это переполнение кучи. Мы перейдём от отладчика IDA к WINDBG и убедимся, что он находится в режиме USER через DEBUGGER OPTIONS. [ATTACH] Мы меняем GFLAGS для того, чтобы процесс имел включенный PAGE HEAP в режиме FULL....
Читать далее
Лайков +5 Комментариев1 Просмотров5.117

Введение в реверсинг с нуля, используя IDA PRO. Часть 43.

21 апр 2018

Давайте решать практическое упражнение 41B. [ATTACH] Если мы перейдем в меню DEMANGLED NAMES → NAMES, мы увидим, что анализ выглядит лучше. Даже если IDA не показывает функцию с именем NEW, а показывает числовой адрес, оператор NEW очень похож на функцию MALLOC. В исходном коде, очевидно, оператор NEW применяется к объекту и программа внутренне вызывает функцию MALLOC, резервирую память для объекта и функции MALLOC непосредственно передается числовой размер, но здесь, нет большой разницы....
Читать далее
Лайков +3 Комментариев2 Просмотров5.579

Введение в реверсинг с нуля, используя IDA PRO. Часть 42.

21 апр 2018

В 41 части, для практики было оставлено два упражнения. К сожалению, никто не прислал мне решения. Это заставляет меня задаться вопросом, стоит ли оно того, что я делаю. По крайней мере для меня это сейчас вопрос. Ни обратной связи, ни вопросов ко мне. Ничего нет. Это заставляет меня переосмыслить вещи и спросить себя, стоит ли мне заходить с этим курсом так далеко, как я думал с самого начала. Мы увидим, какое решение мы примем в отсутствии обратная связь. Сейчас же, мы будем решать...
Читать далее
Лайков +3 Комментариев2 Просмотров5.615

Введение в реверсинг с нуля, используя IDA PRO. Часть 41.

11 апр 2018

Мы продолжаем практиковать и рассматривать примеры. В нашем случае, это код, который имеет разные способы обработки и размещения строк. [ATTACH] Мы видим, что существует несколько массивов символов и затем, в конце кода, программа печатает адреса каждого из массивов, чтобы увидеть где они находятся. Здесь мы не ищем уязвимость или чего-то ещё. Мы только смотрим расположение данных. Давайте откроем исполняемый файл в ЗАГРУЗЧИКЕ. Мы заставляем его загрузить символы. Теперь мы видим функцию...
Читать далее
Лайков +3 Комментариев1 Просмотров6.691

Введение в реверсинг с нуля, используя IDA PRO. Часть 40.

9 апр 2018

УНИВЕРСАЛЬНЫЙ ШЕЛЛКОД Существует тысячи типов шеллкодов. Каждый из них разработан в соответствии с целью, которую мы должны эксплуатировать. Существую шеллкоды, которые используются для доказательства того, что вы можете запустить код после эксплуатации. Обычно они запускают калькулятор и ничего больше. Очевидно, что существуют более сложные шеллкоды, которые открывают удаленные консоли, стараются остаться в системе не смотря на то, что эксплуатируемая программа перестает работать или...
Читать далее
Лайков +3 Комментариев2 Просмотров5.814

Введение в реверсинг с нуля, используя IDA PRO. Часть 38.

25 мар 2018

CANARY и SEH. Мы уже видели, что такое переменная CANARY. Это случайное значение, которое помещается в стек непосредственно перед сохраненным регистром EBP и адресом возврата. Так что, если это значение перезаписывается, программа проверяет это значение(Это необходимо нам для перезаписи адреса возврата). Если это значение тоже самое, то оно сохраняется, а если оно неправильное, то программа закрывается, избегая исполнение кода. Приложенный файл - это файл CANARY_SIN_DEP.EXE. Позже, в...
Читать далее
Лайков +3 Комментариев1 Просмотров6.376

Введение в реверсинг с нуля, используя IDA PRO. Часть 37.

24 мар 2018

Хорошо. Мы будем делать тот же пример, который мы делали в предыдущей части, но на этот раз используя плагин MONA внутри отладчика WINDBG. Мы знаем, что MONA не запускается в IDA. Поэтому мы открываем WINDBG вне IDA. Я запускаю файл DEP.EXE из консоли с несколькими аргументами, чтобы он не закрывался. Программа будет ожидать ввода данных с клавиатуры. [ATTACH] Я мог бы запустить программу также и с помощью WINDBG. Это было бы те же самым. Нам просто нужно остановиться в том месте, где...
Читать далее
Лайков +3 Комментариев3 Просмотров6.456

Введение в реверсинг с нуля, используя IDA PRO. Часть 36.

19 мар 2018

Хорошо. Давайте начнем работать с версией программы, которая имеет защиту DEP. Мы знаем, что программа похожа на предыдущую, но что произойдёт, если мы запустим скрипт для версии где защита DEP отсутствует. Изменим путь в скрипте, для того, чтобы он указывал на файл DEP.EXE. [ATTACH] Я запускаю скрипт и присоединяюсь к процессу помощью IDA, которая уже имеет анализ файла DEP.EXE. [ATTACH] Я установлю BP сразу после функции GETS, чтобы увидеть, что происходит в функции SALUDA, так как...
Читать далее
Лайков +4 Комментариев8 Просмотров5.809

Введение в реверсинг с нуля, используя IDA PRO. Часть 35.

11 мар 2018

Я скомпилировал две программы. Первую программу скомпилировал с защитой DEP, а вторую программу - без этой защиты. Код везде один и тот же. Но в этом случае, вместо того, чтобы изменять код и компилировать программу, я напрямую вызываю API функцию SETPROCESSDEPPOLICY. В первой программе, я вызываю эту функцию с аргументом 0 (без использования защиты DEP), а во второй программе - с аргументом 1 (с использованием защиты DEP). Если я запущу обе программы и посмотрю на них через утилиту PROCESS...
Читать далее
Лайков +3 Комментариев3 Просмотров6.469

Введение в реверсинг с нуля, используя IDA PRO. Часть 34.

11 мар 2018

Давайте начнём с эксплуатации и возможного выполнения кода. Конечно, мы должны учитывать смягчения и учиться противостоять новым защитам, которые были добавлены. Иногда мы сможем избежать их, а иногда и нет. Основная идея состоит в том, чтобы обучаться постепенно. Давайте сначала рассмотрим некоторые важные определения. ЧТО ТАКОЕ DEP ? [ATTACH] Предотвращение выполнения данных (DEP) представляет собой набор аппаратных и программных технологий, который выполняет дополнительные проверки в...
Читать далее
Лайков +4 Комментариев4 Просмотров6.586

Введение в реверсинг с нуля, используя IDA PRO. Часть 39.

27 фев 2018

У нас остался последний случай эксплуатации переполнения стека с защитами CANARY и DEP для перезаписи SEH. [ATTACH] Мы переименовываем имя исполняемого файла и присоединяемся к нему с помощью IDA, чтобы увидеть, что случиться. [ATTACH] Так же как и раньше, программа закрывается, когда стек заканчивается. Давайте посмотрим её SEH, [ATTACH] Как и в предыдущем случае, программа перезаписывает указатель на гаджет POP - POP - RET. Давайте установим здесь BP. [ATTACH] Я нажимаю клавишу F9...
Читать далее
Лайков +4 Комментариев1 Просмотров5.851

Введение в реверсинг с нуля, используя IDA PRO. Часть 33.

27 фев 2018

Мы установим пару плагинов для WINDBG, которые будут помогать нам дальше при работе. К сожалению эти плагины работают только в WINDBG, но если Вы запустите их в WINDBG, запущенном в IDA, они дадут сбой, возможно, потому что они конфликтуют с PYTHON, который включён в IDA, но мы будем использовать их в отдельном WINDBG, когда они нам понадобятся. Мы будем копировать файлы, которые я приложил, в каталог WINEXT, который находится внутри каталога, где установлен WINDBG и установим библиотеку...
Читать далее
Лайков +4 Комментариев10 Просмотров7.134

Введение в реверсинг с нуля, используя IDA PRO. Часть 32.

26 фев 2018

Подготовка WINDBG для работы с IDA. Один из инструментов, который нам необходимо установить - это отладчик WINDBG. Им можно управлять через интерфейс IDA. Это отличный отладчик. Может ему и не хватает комфорта, потому что почти все типы команд являются консольными и его немножко сложно использовать, но мы можем использовать отличный интерфейс, который предлагает IDA, отлаживая движком WINDBG. WINDBG очень полезен, когда мы хотим отлаживать ядро или получить хорошую информацию о состоянии...
Читать далее
Лайков +4 Комментариев5 Просмотров7.764

Введение в реверсинг с нуля, используя IDA PRO. Часть 31. Часть 2.

25 фев 2018

Я присоединяюсь к этому процессу. [ATTACH] Проиграв некоторое время ролик, отладчик остановится на BP. Я трассирую с помощью клавиши F7 и вижу, что в регистре EDX находится адрес БУФЕРА. [ATTACH] Я щелкаю на маленькую стрелку рядом с регистром EDX, которая переносит фокус в листинг. [ATTACH] Сейчас я делаю правый щелчок в стеке на этих данных и создаю массив из 32 байтов в десятичной системе. [ATTACH] У меня получается вот так. [ATTACH] Мы устанавливаем BP на запись в первом DWORD...
Читать далее
Лайков +3 Комментариев9 Просмотров6.301

Все статьи Криса Касперски, изданные в журнале -==Cистемный Администратор==-

21 фев 2018

Прошел год, как случилась трагедия - погиб Николай Лихачёв, более известный как Крис Касперски. 10 февраля 2017 года Крис серьёзно травмировался во время прыжка с парашютом. Отключение от аппаратуры искусственного поддержания жизни произвели 18 февраля. https://ru.wikipedia.org/wiki/Крис_Касперски В связи с годовщиной трагедии Владимир Лукин и Галина Положевец любезно предоставили Нашему форуму полный комплект статей Криса Касперски, изданных в журнале "Системный Администратор". Также,...
Читать далее
Лайков +4 Комментариев4 Просмотров12.383

Введение в реверсинг с нуля, используя IDA PRO. Часть 31. Часть 1.

4 фев 2018

Прежде чем делать упражнение из предыдущей части, я расскажу о некоторых моментах более подробно, которые остались в тени из-за моего быстрого объяснения и затем мы создадим POC. Один из моментов, который остаётся неясным заключается в том, что иногда мы принимаем размер массива, который предлагает нам IDA при выполнении правого щелчка и выбора пункта ARRAY. Иногда мы ставим предлагаемый нам размер под сомнение как в предыдущем примере и устанавливаем значение длины массива немного больше....
Читать далее
Лайков +4 Комментариев1 Просмотров5.671

Введение в реверсинг с нуля, используя IDA PRO. Часть 30.

28 янв 2018

Мы попытаемся решить упражнение, предложенное в 29 части. Это DIFF двух последовательных версий VLC плеера. У Вас есть CVE в качестве помощи с информацией. И эта информация, это то, что у нас есть. После установки в виртуальной машине уязвимой и пропатченной версии, я буду изучать информацию об уязвимости в CVE, чтобы узнать, даст ли CVE мне подсказку, чтобы помочь мне не слишком сильно заниматься анализом различий. [ATTACH] Если я посмотрю в папку, где установлен VLC, я увижу, что плеер...
Читать далее
Лайков +4 Комментариев8 Просмотров8.057

Введение в реверсинг с нуля, используя IDA PRO. Часть 29

23 янв 2018

С тем, что мы видели до настоящего времени, мы можем попытаться, по крайней мере, анализировать реальные программы. Я буду давать Вам упражнение, которое я буду решать в 30 части. Я хотел бы, чтобы Вы восприняли это упражнение как нечто забавное и прислали мне то, что Вы найдете в нём. Я довожу до Вашего сведения, что это совсем не легко, так что не расстраивайтесь. Смысл состоит в том, что я даю Вам две последовательные версии программы, поэтому в новых патчах могут быть обнаружены...
Читать далее
Лайков +4 Комментариев3 Просмотров5.958

Рассказ реальный, почти документальный

19 янв 2018

[ATTACH] И хотя Николая нет уже почти год, этот, переродившийся ресурс всегда будет помнить про него. Именно на этом форуме Николай больше всего общался, давал советы, троллил, шутил и т.д. И именно поэтому, на этом ресурсе, появится его новая статья, статья, которую можно увидеть в свежем выпуске журнала Системного Администратор. Слова Николая оказались пророческими, про него помнят и будут помнить и он будет продолжать издаваться в Системном Администраторе....
Читать далее
Лайков +6 Комментариев4 Просмотров4.911

Введение в реверсинг с нуля, используя IDA PRO. Часть 28

6 янв 2018

Давайте будем чередовать теорию с практическими упражнениями, чтобы пытаться постепенно укреплять свои знания и двигаться вперед. В этой части, мы будем рассматривать некоторые теоретические вопросы, по темам, которые мы должны знать. Они не будут очень техническими и тяжелыми. Мы видели, что когда мы определяем переменную, например так: INT PEPE = 4; [ATTACH] Переменная будет резервировать в памяти необходимое пространство ячеек памяти для хранения этого значения. В нашем случае, это...
Читать далее
Лайков +4 Комментариев1 Просмотров8.744

Введение в реверсинг с нуля, используя IDA PRO. Часть 27-2.

4 янв 2018

Здесь мы нажимаем T, чтобы освежить информацию. Наконец, я переименовываю функцию в ENTER. [ATTACH] Мы видим, что три первые функции вызывают ENTER передавая адрес PEPE и три следующие передают адрес JUAN. Давайте посмотрим на следующую функцию. [ATTACH] Эта функция также использует обе структуры, поэтому Вы можете равно как в предыдущем случае нажать F5. [ATTACH] Здесь на переменной _STRUCT я делаю правый щелчок и выбираю пункт CONVERT TO STRUCT *. [ATTACH] Сейчас, это адрес...
Читать далее
Лайков +3 Комментариев5 Просмотров6.280

Введение в реверсинг с нуля, используя IDA PRO. Часть 27-1.

25 дек 2017

В этой части, мы будем решать упражнение, которое мы оставили для решения в предыдущей части. Оно называется IDA_STRUCT.7Z. Если Вы не решили это упражнение или у Вас его нет, загрузите его отсюда. http://ricardo.crver.net/WEB/INTRODUCCION AL REVERSING CON IDA PRO DESDE CERO/EJERCICIOS/IDA_STRUCT_RESOLVER DESPUES DE LA PARTE 26.7z Исполняемый файл называется CONSOLEAPPLICATION4.EXE и в том же каталоге находятся символы CONSOLEAPPLICATION4.PDB. Когда IDA загрузит файл, то сообщит Вам, что...
Читать далее
Лайков +5 Комментариев1 Просмотров8.190

Введение в реверсинг с нуля, используя IDA PRO. Часть 25.

3 дек 2017

СТРУКТУРЫ В этой части, мы начнём изучать, как IDA PRO помогает нам при реверсинге, когда программа использует структуры. В конце этой части, решения для файлов IDA3 и IDA4 будут краткими, потому что похожая проблема уже обсуждалась. Что же такое структура? Нам не нужно очень техническое определение, но мы видели, что МАССИВЫ это контейнеры, которые резервировали пространство в памяти для своих полей. Поля были того же типа, что и сами массивы, поэтому МАССИВЫ могут быть из байтов, слов,...
Читать далее
Лайков +6 Комментариев8 Просмотров9.654

Введение в реверсинг с нуля, используя IDA PRO. Часть 24.

26 ноя 2017

Решение для упражнения IDA2.EXE довольно похоже на предыдущее, только здесь присутствуют две переменные или мы можем назвать их кукисами. Для того, чтобы перенести Вас в область хорошего сообщения, теперь сравниваются две переменные, а не одна. [ATTACH] Давайте посмотрим, существует ли место, где Вы можете изменить эти переменные? Мы переименовываем переменные в COOKIE и COOKIE 2, так как сама IDA называет их такими именами. [ATTACH] Мы видим, что единственные места, где есть доступ к...
Читать далее
Лайков +7 Комментариев8 Просмотров7.411

Крис Касперски: Полное Лунное затмение 2001 года. Краткий отчет.

26 ноя 2017

Легкие перистые облака, весь день плавающие по небу, не внушали особого беспокойства, но к вечеру (по закону бутерброда) они начали уплотнятся, сбиваясь в плотные перисто-слоистые кучки, явно намериваясь сорвать готовящиеся наблюдения… К окуляру 110мм «Мицара» я прильнул задолго до наступления затмения – по расчетам, в 20h 05m 13s ожидалось покрытие  Близнецов (мои географические координаты – 41324 восточной долготы и 44837 северной широты, время московское). Просвечивая сквозь густые...
Читать далее
Лайков 0 Комментариев0 Просмотров2.282

Крис Касперски:Как стать хакером (миниатюра)

26 ноя 2017

«Здравствуйте. Я - начинающий хакер. Вообще ничего об этом не знаю, но очень хочу узнать. С детства мечтаю стать хакером. Дайте моей мечте сбыться.» “Ecohidromas" <ecohm@mdl.net> «Хакерство» – настолько общее понятие, что никаких универсальных рекомендаций «как стать хакером» не существует. Если под «хакером» понимать человека, одержимого познаванием окружающего мира, то не зависимо от того, зарывается ли он по голову в распечатки или коротает вечера, вглядываясь в глубины Вселенной, а...
Читать далее
Лайков +3 Комментариев2 Просмотров4.154

Памяти Криса Касперского.

26 ноя 2017

Памяти Криса Касперского (Николая Владимировича Лихачёва) http://yasha.su/samag04(173)-06-12.pdf [ATTACH]
Читать далее
Лайков 0 Комментариев11 Просмотров6.241

Введение в реверсинг с нуля, используя IDA PRO. Часть 23.

22 ноя 2017

Осталось решить незаконченное упражнение IDA1.EXE. [ATTACH] Функция основана на EBP как предыдущие упражнения. Разница заключается в том, что этот пример скомпилирован с помощью DEVC++, который имеет особый способ компиляции вызовов API, отличный от обычного способа и это может вызвать головокружение, у тех, кто никогда такого не видел. Хорошо, "VAMOS POR PARTES", как сказал Джек. Первое, что мы видим - это функция MAIN. Если она не появляется, Вы также можете перейти к важной функции,...
Читать далее
Лайков +9 Комментариев9 Просмотров7.271

Введение в реверсинг с нуля, используя IDA PRO. Часть 22.

12 ноя 2017

РАЗЛИЧАЯ DIFFER (В дальнейшем — Дифер, прим. Яши) - это программа, которая из двух последовательных версий одного и того же файла, пытается найти различия в функциях, несмотря на изменения и пытается показать нам какие функции были изменены и где. Очевидно, эта не простая работа. Особенно, когда между версиями было много изменений, которые могут появиться в приложение из-за патча безопасности, для того, чтобы устранить какую-нибудь уязвимость, а также, могут быть появится улучшения в...
Читать далее
Лайков +11 Комментариев8 Просмотров10.059

Введение в реверсинг с нуля, используя IDA PRO. Список лекций.

9 ноя 2017

Всем привет. :preved::preved::preved: Составил список лекций, чтобы можно было смотреть, что нас ждёт в этом курсе. Напоминаю, что №62 - это не последняя глава. Маэстро продолжает трудиться.:thank_you::thank_you::thank_you: За что ему честь и хвала. И мы тоже будем потихоньку трудиться.:boast::boast::boast: Вперёд, на встречу приключениям и знаниям :girl_witch::girl_witch::girl_witch: 01 - Знакомство с IDA PRO. 02 - Системы счисления. 03 - Регистры процессора. 04 - Стек и самые простые...
Читать далее
Лайков +11 Комментариев9 Просмотров11.885

Введение в реверсинг с нуля, используя IDA PRO. Часть 21.

7 ноя 2017

В 20-той части, мы оставили упражнение, чтобы проанализировать его позже и узнать было ли оно уязвимым или нет. В списке рассылки CRACKSLATINOS было много мнений, я не отвечал там и позволил единомышленникам обсуждать эту тему, оставив решение упражнения и анализ на потом, чтобы дать ответ в этой 21-ой части. У нас есть исходный код программы, который может помочь нам при исследовании, IDB файл и сам исполняемый файл, который мы можем реверсить в IDA и отлаживать, если это необходимо....
Читать далее
Лайков +15 Комментариев13 Просмотров8.327

Введение в реверсинг с нуля, используя IDA PRO. Часть 20.

27 окт 2017

Уязвимости. В этой части, мы поговорим об уязвимоcтях и как анализировать самые простые из них. Что же такое уязвимость ? В компьютерной безопасности, слово уязвимость относится к слабости в системе, позволяющей атакующему нарушать конфиденциальность, целостность, доступность, контроль доступа, согласование системы или её данных и приложений. Уязвимости - это результат ошибок или просчётов в дизайне системы. Хотя, в более широком смысле, они также могут быть результатом самих...
Читать далее
Лайков +14 Комментариев19 Просмотров8.291

Введение в реверсинг с нуля, используя IDA PRO. Часть 19.

22 окт 2017

В этой главе, у нас уже достаточно знаний и умений, чтобы реверсить оригинальный крекми CRUEHEADа. Поэтому открываем его в ЗАГРУЗЧИКЕ, выключая опцию MANUAL LOAD. Исходный файл не упакован, так что нет необходимости загружать его вручную. [ATTACH] Загрузчик остановился здесь. В нашем случае, поскольку это не консольное приложение, то нужно не только анализировать функцию MAIN. Мы знаем, что в оконных приложениях существует ЦИКЛ сообщений, который обрабатывает взаимодействие пользователя с...
Читать далее
Лайков +18 Комментариев10 Просмотров15.945

Введение в реверсинг с нуля, используя IDA PRO. Часть 18.

17 окт 2017

В предыдущей части, мы распаковали исполняемый файл упражнения и сделали его рабочим. В этой части, мы будем его реверсить, чтобы увидеть, можно ли сделать для него кейген в PYTHON. Хорошо помнить, что для статического анализа нет необходимости распаковывать файл. Нам просто нужно получить OEP и сделать TAKE MEMORY SNAPSHOT. Затем, нужно скопировать файл .IDB в другое место и открыть его там. Этого бы хватило, чтобы анализировать его статически, но хорошо иметь распакованный файл, это...
Читать далее
Лайков +15 Комментариев8 Просмотров8.361

Введение в реверсинг с нуля, используя IDA PRO. Часть 17.

2 окт 2017

Мы достигли 17-той части и предполагается, что, по крайней мере, Вы должны были попробовать решить это упражнение. http://ricardonarvaja.info/WEB/INTRODUCCION AL REVERSING CON IDA PRO DESDE CERO/EJERCICIOS/ Оно очень простое. Мы должны распаковать файл из примера, как мы делали это в предыдущих частях, а затем, отреверсить его, чтобы найти для него решение, и, если это возможно, сделать кейген в PYTHON. В этой главе мы будем действовать немного по другому. Я буду распаковывать файл...
Читать далее
Лайков +15 Комментариев15 Просмотров11.186

Введение в реверсинг с нуля, используя IDA PRO. Часть 16.

30 сен 2017

Прежде чем продолжать углубляться в реверсинг, мы сделаем ещё одно упражнение по распаковке на другом примере. Этим файлом будет UNPACKME_ASPACK 2.2. Он относится к категории простых. Далее в курсе, мы вернёмся к расширенной распаковке после изучения других тем. [ATTACH] Здесь, видим EP упакованного файла. Она начинается с инструкции PUSHAD, которую мы, пока, не видели среди часто используемых инструкций, но её работа заключается в том, что она ПОМЕЩАЕТ(КЛАДЁТ) каждый регистр в стек, т.е....
Читать далее
Лайков +12 Комментариев11 Просмотров9.382

Введение в реверсинг с нуля используя IDA PRO. Часть 15.

17 сен 2017

В предыдущей части, мы увидели несколько из многих методов, которые существуют для обнаружения и получения OEP в упакованном файле. Сейчас, вернёмся к двум пропущенными шагам: это ДАМП и ВОССТАНОВЛЕНИЕ IAT, стараясь объяснить их в этом туториале. [ATTACH] Мы снова попадаем в OEP программы и делаем её ПОВТОРНЫЙ АНАЛИЗ. Теперь у нас уже есть всё, чтобы сделать ДАМП. Сейчас будем использовать IDC скрипт, а не PYTHON. Static main() { auto fp, ea; fp = fopen("pepe.bin","wb"); for(ea =...
Читать далее
Лайков +14 Комментариев24 Просмотров16.142

Введение в реверсинг с нуля используя IDA PRO. Часть 14.

13 сен 2017

Это курс будет смешанным, и он будет включать в себя разные темы связанные с реверсингом (мы уже говорили о статическом реверсинге, а также будем говорить об отладке, распаковке, эксплоитинге). В этой главе мы будем распаковывать файл CRACKME.EXE упакованный последним UPX. Это не означает, что мы собираемся cделать много частей только с распаковкой, мы будем менять темы разговора, и перемешивать различные темы, для того, чтобы никто не скучал, так что у нас будут уроки по распаковке,...
Читать далее
Лайков +15 Комментариев16 Просмотров13.037

Введение в реверсинг с нуля используя IDA PRO. Часть 13.

11 сен 2017

Перед тем как продолжать с упражнениями углубляться в использование IDA, мы рассмотрим эту главу №13 в расслабленном режиме(RELAX MODE WASM), чтобы изучить плагин, который достаточно удобный и который даёт нам возможность управлять лучше PYTHON, Шадди предложил использовать эту включенную, интересную панельку и я ему очень благодарен. Плагин называется IPYIDA и он устанавливается простым копированием и вставкой следующей строки в панель PYTHON. import urllib2; exec...
Читать далее
Лайков +16 Комментариев20 Просмотров14.483

Hooking into NDIS and TDI

26 авг 2017

Перевод статьи «Hooking into NDIS and TDI, part 1» Перехват NDIS и TDI, часть 1 andreas пишет: Это первая часть из 2-х статей, описывающих перехват на уровне NDIS и TDI. В первой части мы обсудим перехват на уровне NDIS, а во второй на уровне TDI. Прежде всего давайте посмотрим на упрощенное изображение сетевого стека в пространстве ядра: TDI NDIS уровень протокола NDIS промежуточный уровень Miniport Hardware Для контроля потока данных на уровне NDIS у нас есть 3 потенциально возможные...
Читать далее
Лайков +3 Комментариев5 Просмотров3.789

Detecting Hidden Processes by Hooking the SwapContext Function

24 авг 2017

Определение скрытых процессов методом перехвата функции SwapContext. kimmo пишет: Общедоступна утилита Klister, созданная Джоанной Рутковской, которая (утилита) может определять скрытые процессы, проверяя содержимое трех связных списков, управляемых ядром: KiWaitInListHead, KiWaitOutListHead и KiDispatcherReadyListHead. Тем не менее Klister может работать только в ОС Windows 2000 и перенесение (переписывание) кода в ОС Windows 2003/ХР является не такой уж тривиальной задачей. Проблема в...
Читать далее
Лайков +3 Комментариев7 Просмотров3.991

Введение в реверсинг с нуля используя IDA PRO. Часть 12.

13 авг 2017

Хорошо, чтобы не было скучно, мы будем объединять теорию и некоторые упражнения, в этом случае, это другая программа скомпилированная мной, которая называется TEST_REVERSER.EXE и которая очень простая, но она поможет нам увидеть некоторые новые вещи в статическом реверсинге и которые мы проверим в отладчике. Если мы запустим программу вне IDA, то мы увидим. [ATTACH] Нас просят ввести имя пользователя и затем пароль, а потом программа говорит нам, что мы проиграли, и она смеётся над нами....
Читать далее
Лайков +14 Комментариев12 Просмотров11.879

Введение в реверсинг с нуля используя IDA PRO. Часть 11.

10 авг 2017

Перед тем как продолжить, давайте посмотрим сможем ли мы убрать баг, который присутствует в IDA версии 6.8, и который был исправлен в версии 6.9, и которой у нас нет :”( , чтобы увидеть присутствует ли у нас этот БАГ, откройте IDA, и на любой инструкции нажмите ALT + M, что равносильно размещению метки (JUMP → MARK POSITION), а затем на той же инструкции сделайте правый щелчок. [ATTACH] В интернете мы находим рецепт как исправить этот баг, давайте посмотрим как хорошо работает этот совет...
Читать далее
Лайков +17 Комментариев14 Просмотров10.248

Введение в реверсинг с нуля используя IDA PRO. Часть 10

30 июл 2017

Хорошо, мы уже увидели что-то о ЗАГРУЗЧИКЕ и мы будем продолжать его разбирать и дальше, но сейчас мы будем разбирать некоторые особенности ОТЛАДЧИКА, которые дополняют друг друга. IDA поддерживает множество ОТЛАДЧИКОВ, чтобы увидеть их, мы открываем оригинальный файл КРЭКМИ CRUEHEAD без патча в IDA. Очевидно, мы выбираем OVERWRITE, если IDA спросит нас, хотим ли мы создать новую базу данных и затереть старую, чтобы сделать новый анализ, если у нас уже была в том же месте предыдущая база...
Читать далее
Лайков +21 Комментариев13 Просмотров20.066

Введение в реверсинг с нуля используя IDA PRO. Часть 9

21 июл 2017

Мы разбираемся понемногу как нужно работать с ЗАГРУЗЧИКОМ, мы оставили некоторые вещи на потом, чтобы наблюдать за ними позже в ОТЛАДЧИКЕ, например, как меняются флаги в зависимости от используемых инструкций. Мы будем практиковаться на очень простых примерах, в нашем случае это очень простые крэкми, которые скомпилированы в VISUAL STUDIO 2015 для нашей практики. Очевидно, для того, чтобы крэкми заработал, у Вас должны быть установлены последние версия библиотек VISUAL STUDIO 2015 C++....
Читать далее
Лайков +23 Комментариев23 Просмотров16.349

Введение в реверсинг с нуля используя IDA PRO. Часть 8

10 июн 2017

Мы уже увидели в деле основные инструкции, сейчас давайте продолжим работу с ЗАГРУЗЧИКОМ. Способ работать, когда мы не имеем много опыта по статическому реверсингу состоит в том, чтобы комментировать и переименовывать инструкции и области, чтобы иметь лучшую ориентацию по коду и этим мы делаем большую часть своей работы. По мере того, как Вы больше практикуетесь в статическом реверсинге, то можно добиться больше и больше успехов в реверсинге, даже почти без использования отладчика или,...
Читать далее
Лайков +28 Комментариев30 Просмотров16.864

Введение в реверсинг с нуля используя IDA PRO. Часть 7

15 май 2017

ИНСТРУКЦИИ УПРАВЛЕНИЯ ПОТОКОМ ВЫПОЛНЕНИЯ ПРОГРАММЫ Давайте закончим с инструкциями, которые всегда являются самой сложной частью, проглотите эту жесткую таблетку, потому что дальше будет лучше. Следующие инструкции управляют потоком выполнения программы. Мы знаем, что EIP указывает на следующую инструкцию, которая будет выполнена, и когда это произойдёт, EIP будет указывать снова на следующую инструкцию. Но сама программа имеет в себе инструкции, которые управляют её потоком и могут...
Читать далее
Лайков +18 Комментариев8 Просмотров13.962

Введение в крэкинг с нуля, используя OllyDbg - Глава 55

6 май 2017

В этой главе мы продолжим починку execryptor, для этого мы создадим скрипт, ремонтирующий IAT. У многих, когда они слышат слово "скрипт", волосы встают дыбом (если они есть, хе-хе-хе), но создать скрипт - действительно очень просто, загвоздка состоит в том, что, когда смотришь на готовый скрипт, кажется, что он очень сложен, но в действительности скрипт не формируется сразу цельным, он начинается с простой идеи, к которой затем добавляются части, например, для execryptor, в котором мы должны...
Читать далее
Лайков +2 Комментариев2 Просмотров4.104

Введение в крэкинг с нуля, используя OllyDbg - Глава 54

3 май 2017

При анализе неизвестного упаковщика лучше всего сначала проверить, существует ли для него известный анпэкми, поскольку нам нужен его распакованный код. Если, как в нашем случае, анпэкми есть, у нас будет и код распакованного анпэкми для сравнения. Анпэкми могут быть реализованы в нескольких вариантах, начиная от самой простой защиты упаковщика, до самой сложной, чтобы можно было постепенно обезвреживать каждый трюк. Когда нам будут известны все трюки упаковщика, можно будет приступать...
Читать далее
Лайков +2 Комментариев2 Просмотров6.407

Введение в реверсинг с нуля используя IDA PRO. Часть 6

12 мар 2017

Давайте продолжим с арифметическими и логическими инструкциями. ADD A, B Инструкция складывает значение B и A, и помещает результат в A. A может быть регистром или содержимым ячейки памяти, B может быть регистром, константой или содержимым ячейки памяти (A и B не должны быть в памяти в одно и то же время, в одной и той же инструкции) Рассмотрим несколько примеров инструкции ADD ища текст ADD через VEVIEWER. [ATTACH] Здесь мы видим много примеров сложений, где первый член регистр, а...
Читать далее
Лайков +15 Комментариев11 Просмотров11.023

Введение в реверсинг с нуля используя IDA PRO. Часть 5

12 мар 2017

Мы продолжаем рассматривать основные инструкции и их использование в коде, когда мы дойдем до части где используется отладчик, мы будем видеть больше примеров, где рассматриваются результаты применения каждой из этих инструкций на реальном примере. LEA (LOAD EFFECTIVE ADDRESS) LEA A, B Инструкция LEA помещает указанный адрес из B в A. Она никогда не получает доступ к содержимому B, это всегда будет адрес или результат работы операции между квадратными скобками во втором операнде....
Читать далее
Лайков +17 Комментариев6 Просмотров12.850

Введение в реверсинг с нуля используя IDA PRO. Часть 4

20 фев 2017

Мы продолжаем рассматривать инструкции обмена данными в IDA. XCHG A, B Эта инструкция обменивает значение A со значением B, давайте рассмотрим пример. [ATTACH] В файле VEVIEWER нет такой инструкции, поэтому я загружаю СRACKME.EXE Cruehead, и меняю инструкцию по адресу 0x4013D8. Я помещаю курсор на строку адреса и перехожу в меню EDIT->PATCH PROGRAM->ASSEMBLE. [ATTACH] Мы видим, что функция была повреждена, так как я работаю сейчас с ней. [ATTACH] Мы уже видели, что, если инструкция...
Читать далее
Лайков +17 Комментариев9 Просмотров19.106

Введение в разработку эксплоитов. Часть 1

20 фев 2017

Часть 1: Введение в разработку эксплоитов Это первая часть в (скромной) многотомной серии туториалов, посвященной разработке эксплоитов. Эта часть просто расскажет некоторые базовые вещи, такие, которые нам нужны, чтобы сделать нашу работу, основные идеи скрытые за разработкой эксплоитов и некоторые вещи, которые нужно держать в памяти, если мы хотим заслать и выполнить наш шеллкод. Эти туториалы не будут рассказывать как находить ошибки, вместо этого, каждая часть будет включать уязвимую...
Читать далее
Лайков +2 Комментариев18 Просмотров9.538

Введение в реверсинг с нуля используя IDA PRO. Часть 3

19 фев 2017

Загрузчик Мы уже видели, что когда в IDA мы открываем исполняемый файл, тот же самый файл открывается в ЗАГРУЗЧИКЕ, который является статическим анализатором того же самого файла. Мы будем анализировать его части и характеристики, большая часть того, что мы видели до настоящего времени, будут применимы и к ЗАГРУЗЧИКУ и для ОТЛАДЧИКА. В случае, если что-то будет отличаться или не похоже на общий случай, я упомяну это. Очевидно, то, что в ЗАГРУЗЧИКЕ программа абсолютно не выполняется, но...
Читать далее
Лайков +23 Комментариев22 Просмотров27.642

Введение в реверсинг с нуля используя IDA PRO. Часть 2

17 фев 2017

Так как этот курс называется введение с нуля, есть вещи про которые многие уже знают, если Вы один из них, пропустите эту главу если хотите, но большинству они не знакомы, я верю, что это важно, поэтому я добавил эту информацию. СИСТЕМЫ СЧИСЛЕНИЯ Три наиболее часто используемые системы счисления это двоичная, десятичная и шестнадцатеричная. Базовые концепции каждой из системы рассмотрим ниже: ДВОИЧНАЯ: Числа представляются двумя символами 0 и 1, вот почему она называется ДВОИЧНАЯ....
Читать далее
Лайков +21 Комментариев8 Просмотров23.341

Введение в реверсинг с нуля используя IDA PRO. Часть 1

12 фев 2017

Приветствуя тебя, Гость. Если тебе не очень понравится данный перевод, хочу сказать, что дальше всё становится лучше. Уже сейчас ты можешь открыть последние главы, например №24 или №25 и увидеть, что всё читается по другому. Как только курс будет переведён и закончен, я вернусь к первым главам и переделаю их. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ВВЕДЕНИЕ В РЕВЕРСИНГ С НУЛЯ ИСПОЛЬЗУЯ IDA PRO Идея этих серий учебных пособий является обновить наш оригинальный курс по...
Читать далее
Лайков +33 Комментариев35 Просмотров118.439

Гуртовщики Мыши

12 фев 2017

Гуртовщики Мыши ~~~~~~~~~~~~~~~ Microsoft компания получает много откликов после появления Окон 95. Мы выявили, что много пользователей встретили проблему мыши. В этом документе Служба Техничного Упора Microsoft компании сводит вместе всю полезную информацию о возможных проблемах с мышами и гуртовщиками мыши и забота-стреляние. Если вы только что закрепили себе Окна 95, вы можете увидеть, что ваша мышь плохо себя ведет. Курсор может не двигаться или движение мыши может проявлять...
Читать далее
Лайков +3 Комментариев6 Просмотров3.913