Войти или зарегистрироваться
WASM
Главная
Новые публикации
Новые сообщения
Новые сообщения профиля
Новые публикации
Новые ресурсы
Страница 2 из 10
< Назад
1
←
2
3
4
5
6
→
10
Вперёд >
По дате создания
Последние обновления
Популярные
Обсуждаемые
Название темы (по алфавиту)
Последние комментарии
Рейтинговые
Симпатии
Заголовок
Оценка
Ответов
Последнее сообщение
Мета-программирование С++ и обфускация
13 июн 2020
Здравствуйте, друзья, это - моя первая статья на Wasm'е, не судите строго. Надеюсь она же станет первой статьей в цикле, в котором я рассмотрю возможности мета-программирования разных ЯП и компиляторов применительно к обфускации кода. Первым пациентом у нас будет великий и могучий, ненавидимый многими программистами по всему миру, прородитель buffer overflow и use after free багов - добрый дядька С++. Когда то очень давно, а именно в 2013 году, когда в компиляторы С++ начали завозить...
Читать далее
+5
6
6.982
Квантовая сепарация или разбираемся с Win32PrioritySeparation
9 мар 2020
В этой заметке речь пойдёт об известной настройке планировщика - Win32PrioritySeparation, позволяющей настраивать количество квантов времени, выделяемых фоновым (background) и активным (foreground) процессам. Этот параметр - поле в реестре с типом REG_DWORD: HKLM\System\CurrentControlSet\Control\PriorityControl\Win32PrioritySeparation Во многих источниках есть описания возможных значений без объяснения внутреннего устройства этого параметра - эти пробелы и призвана закрыть эта статья....
Читать далее
+3
2
15.547
Введение в реверсинг с нуля, используя IDA PRO. Часть 67. Часть 2.
19 июн 2019
Проблема в том, что эта секция будет использоваться источником, и вам нужно скопировать данные до SEH, а затем завершить ввод, поэтому происходит сбой чтения перед копированием всего стека и сбой в стеке ядра. Я поставлю эту IDA на паузу на одну минуту и открою другую, где у меня есть драйвер. Одна вещь, которую я не видел и допустил ошибку - это то, что буфер назначения [ATTACH] Мы видим, что он инициализируется байтами 0x1FF, но непосредственно перед обнулением байта, который находится...
Читать далее
+6
3
10.000
Введение в реверсинг с нуля, используя IDA PRO. Часть 65. Часть 3.
13 июн 2019
Мы видим, что есть две разные операции и SEND. Мы должны изучить обе операции, чтобы увидеть, какая из них работает и почему. [ATTACH] В этом компиляторе резервируются 4 QWORDS над пространством переменных, так что дочерняя функция хранит аргументы, которые передаются через регистры. [ATTACH] Таким образом, поскольку дочерняя функция имеет 5 аргументов, 5-й будет VAR_248. Я переименую переменную в CONST_0, так как программа пишет туда ноль. [ATTACH] Давайте сначала проанализируем...
Читать далее
+1
0
4.079
Введение в реверсинг с нуля, используя 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
3.177
Введение в реверсинг с нуля, используя IDA PRO. Часть 67. Часть 1.
24 апр 2019
Метод, который мы не рассмотрели, чтобы эксплуатировать одну из уязвимостей драйвера HACKSYS. Мой друг попросил у меня несколько разъяснений о методе, используемом для обхода COOKIE на 32-битных машинах, когда у нас есть переполнение стека в ядре, и мы можем перезаписать адрес возврата, но есть COOKIE, который мешает нам завершить выполнение кода. Очевидно, что если у нас есть другая уязвимость, которая допускает утечку данных, мы могли бы прочитать значение COOKIE и затем использовать его...
Читать далее
+1
0
4.289
Введение в реверсинг с нуля, используя 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
3.032
Введение в реверсинг с нуля, используя 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.881
Введение в реверсинг с нуля, используя IDA PRO. Часть 64. Часть 2.
12 апр 2019
Проблема здесь заключается в том, что в первом вызове MEMCPY функция DESTINATION является P_DEST, откуда она получает значение, возможно, наше, с размером 0x20, но здесь не ясно, кто является источником MEMCPY, кажется, что программа вычисляет его в той же функции, поэтому нам придется немного проанализировать её, чтобы увидеть, откуда исходит SRC и, конечно, наше значение, которое будет в первом WORD этого буфера, как SRC, так и DESTINATION, так как программа копирует в другие первые 0x20...
Читать далее
0
0
3.555
Перекрытие кода с переходом вперед по коду программы. Часть 10.
9 апр 2019
Перед рассмотрением этой части следует изучить две предыдущие. Рассмотрим программу 7.5, в которой применена технология перекрытия кода, но с переходом вперед по коду программы. Программа 7.5.include win64a.inc .data .code WinMain proc sub rsp,28h; mov rbp,rsp mov ax,05EBh jmp $ + 5 ; перепрыгивает свои 2 байта и 3 байта dec r9 dec r9 ; 49:FFC0 inc r10 ; выполняем с этой команды mov r8,1 mov eax,06EB0000h jmp $ + 6 ; перепрыгивает свои 2 байта и следующие 4 dec cl ; FEC9 dec al ;...
Читать далее
0
0
2.921
Перекрытие кода с переходом назад по коду программы. Часть 9.
9 апр 2019
Рассмотрение этой части невозможно без изучения предыдущей части. При рассмотрении программы, в котором применена технология перекрытия кода необходимо с начала открыть отладчик, т.к. только в нем приведены все коды операций и данные в машинном представлении. В программе 7.4 применена технология перекрытия кода с переходом назад по коду программы. Программа 7.4.include win64a.inc .code WinMain proc sub rsp,28h; mov rbp,rsp mov ax,05EBh jmp $ - 2 ; пропуск 2 байтов EB 05 и остановка на EB...
Читать далее
0
0
2.386
Перекрытие кода. Часть 8.
9 апр 2019
Хороший программист не брезгует ассемблером. А тот, кто умеет использовать прием "перекрытие кода", тот уже близок к профессионалу. Осталось к уже изученному освоить приемы скрытия вызова функций, самомодификации кода, исполнения кода в стеке, шифрование кода или его части и еще чуть чуть – и вы профессионал или программист-фокусник! Суть метода перекрытия кода состоит в том, что часть одной машинной команды может быть другой командой. Например, команда mov может загрузить в регистр число,...
Читать далее
+1
0
2.867
Внедрение кода. Добавление новой секции. Часть 7.
5 апр 2019
Основной алгоритм добавления новой секции Решение проблемы доступного пространства при помощи добавления новой секции имеет некоторые недостатки. Практически все антивирусы опознают нестандартные секции, и если, к тому же, там есть полный набор флагов на чтение/запись/выполнение, то эта ситуация выглядит еще более подозрительно. Но такой способ дает огромное преимущество в объеме внедренного кода. В начале проведения внедрения необходимо получить общие сведения о файле: определение языка...
Читать далее
+1
1
5.215
Внедрение кода в ехе-файл в конец секции c добавлением API-функций. Часть 6
5 апр 2019
Общие сведения При внедрении как внешнего кода, так и тем более дополнительных функций в этом коде, сначала необходимо выяснить размер секции кода и количество свободных в ней байт. Даже для обычных учебных программ свободного места в секции для внедрения функций может уже и не хватать. Внедрение новых API-функций в чужой код не очень сильно отличается от внедрения команд. При внедрении API-функций необходимо не только знать количество и назначение входящих в них параметров, но и как эти...
Читать далее
+2
1
12.724
Исследуем эксплоит CVE-2012-0158
29 мар 2019
Всем привет. Сегодня мы будем исследовать rtf эксплоит CVE-2012-0158, и посмотрим как он работает изнутри. Для исследований нам понадобится хекс редактор (я использую 010-Editor), отладчик (я использую OllyDbg) и просмотрщик составных OLE файлов (я использую SS Viewer). Для тестирования - Word 2007. Итак приступим. В описании написано что эксплоит использует переполнение буфера для запуска кода в стеке используя уязвимость в MSCOMCTL.OCX, подменяя адрес возврата. Данные для исследования...
Читать далее
+1
0
2.805
«Hello world» в машинных кодах
29 мар 2019
Всем привет. Как известно большинство из нас создают программы используя языки высокого уровня, некоторые также используют ассемблер. Сегодня мы с вами напишем программу используя только HEX редактор. Подразумевается что читатель знает строение исполняемых файлов хотя бы поверхностно, поэтому я не буду углубляться в детали, к тому же я уже приводил небольшой обзор загрузчика EXE файлов на VB6. Итак поехали... Для начала определимся с функциональностью приложения и используемыми...
Читать далее
+1
0
11.031
Внедрение кода в ехе-файл в конец секции без добавления API-функций. Часть 5
22 мар 2019
Алгоритм внедрения кода Технология внедрения кода в ехе-файл применяется для изменения исходного функционирования программы при отсутствии исходного текста программы. При низкой подготовке хакера внедрение кода может вызвать проблемы и ошибки в приложениях. Эту технологию часто используют и вредоносные приложения. Фактически, внедрение кода – это грязный взлом. Но в учебных целях технологию внедрения знать необходимо хотя бы по тому, что необходимо представлять этот механизм и противостоять...
Читать далее
0
0
5.299
Реверсинг программы с парольной защитой на С++. Часть 4
22 мар 2019
Рассмотрим пример исследования программного кода для анализа вводимого пароля и вывода сообщения о регистрации. Для начала рассмотрим очень простую консольную программу (программа 2.8). Программа 2.8. #include <iostream> #include <stdio.h> #include <process.h> #include <conio.h> using namespace std; void main() { cout << " Enter pssword " << endl; int pass; cin >> pass; if (pass==999) //пароль 999 { cout << " OKEY!!! ;) " << endl; getch(); } else { cout << " WRONG!!! "...
Читать далее
0
0
3.691
Реверсинг программы с использованием строковых команд. Часть 3
22 мар 2019
Для сравнения вводимого пароля с эталонным значением чаще всего применяют строковые команды. Достоинством применения таких команд, в данном случае, является сокращение кода. Учитывать быстродействие при выполнении сравнения и медленном клавиатурном вводе как-то не уместно. В программе 2.5 применена процедура Pas1 proc, которая влияет только на оформление программы. Но если процедур будет достаточно много, то это сильно повлияет на поиск пароля. А если при этом предположить, что и сравнение...
Читать далее
0
0
2.466
Реверсинг программы с использованием базовых команд. Часть 2
22 мар 2019
Применение базовых команд не дает никакого преимущества перед использованием API-функции lstrcmp. В этом случае достигается не только разнообразие вариантов программ с запросом пароля, но и детализация внутреннего алгоритма проверки вводимых символов пароля. Особенностью программы можно считать применение функции WriteConsole, которую так же надо было применить в программе 2.1. Эта функция выводит сообщение с просьбой ввести пароль в консольном окне. В связи с тем, что эта программа является...
Читать далее
0
0
2.339
Показано элементов:
20
из 20.
Показать игнорируемое содержимое
Страница 2 из 10
< Назад
1
←
2
3
4
5
6
→
10
Вперёд >
Ваше имя или e-mail:
У Вас уже есть учётная запись?
Нет, зарегистрироваться сейчас.
Да, мой пароль:
Забыли пароль?
Запомнить меня
WASM
Главная
Главная
Форум
Форум
Быстрые ссылки
Поиск сообщений
Последние сообщения
Ресурсы
Ресурсы
Быстрые ссылки
Поиск ресурсов
Наиболее активные авторы
Последние оценки
Публикации
Публикации
Быстрые ссылки
Новые
Лучшие
Песочница
|
Новые публикации
Пользователи
Пользователи
Быстрые ссылки
Выдающиеся пользователи
Сейчас на форуме
Недавняя активность
Новые сообщения профиля
Правила
Меню
Поиск
Искать только в заголовках
Сообщения пользователя:
Имена участников (разделяйте запятой).
Новее чем:
Быстрый поиск
Последние сообщения
Больше...