EreTIk's Box » Статьи, исходники


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


Раскрытие памяти (Memory Disclosure) ядра в современных ОС

tags: <memory disclosure>, <Windows>, <Linux>, <syscalls>


Механизм Arbitrary Code Guard (ACG) на примере Microsoft Edge

tags: <Windows 10>, <ACG>, <Edge>


Сюрпризы от Windows 10 build 17133: ObQueryNameString для ключей реестра перестала выдавать ошибку STATUS_INFO_LENGTH_MISMATCH

tags: <kernel>, <Windows 10 (17133)>


Сюрпризы от Windows 10 build 17133: новый системный процесс Registry

tags: <kernel>, <Windows 10 (17133)>


Сюрпризы от Windows 10 build 17133: маска для NtBuildNumber

tags: <kernel>, <Windows 10 (17133)>


Собственные данные в системном дампе падения Windows

tags: <kernel>, <python>, <Debug Tips>


"Закат" Legacy-фильтров файловых систем: что под капотом?

tags: <kernel>, <Windows 10>


Рассылка IRP о завершении работы системы (IRP_MJ_SHUTDOWN)

tags: <kernel>, <WinDbg>, <python>


Открытие описателя объекта нити процесса SYSTEM из процесса с правами администратора (Windows 7). Обновлено про Pico-процессы для Windows 10.0.14393

tags: <kernel>, <pico>, <WSL>


Новый механизм подсчета ссылок на объект в Windows 8.1

tags: <kernel>, <Windows 8.1>, <WinDbg>


Отсутствие DACL'а у security descriptor'а и Lowbox-процессы (AppContainer)

tags: <kernel>, <Windows 8>


Функция PathAppend и реализация ATL::CPathT<...>::Append в Microsoft Visual Studio 9.0

tags: <ATL>


FltSetInformationFile vs ZwSetInformationFile при переименовании файлов

tags: <kernel>, <WinDbg>


Alternate Data Streams на ReFS

tags: <ReFS>, <Windows 8>, <Windows 8.1>


Новый бит маски доступа к объекту нити (thread) в Windows 8.1: THREAD_RESUME

tags: <kernel>, <Windows 8.1>


Нотификация проверки цифровой подписи файла драйвера

tags: <kernel>, <Windows 8.1>


Потроха отладчика в помощь при исследовании внутренностей ядра

tags: <kernel>, <WinDbg>


Deadlock при использовании ObOpenObjectByPointer для ключей реестра на Win XP SP2

tags: <kernel>


diaview: пример использования MS DIA из питона (diabind)

tags: <DIA>, <python>


Маски доступа для NtQueryInformationFile, NtSetInformationFile, NtQueryVolumeInformationFile и NtSetVolumeInformationFile

tags: <kernel>, <python>


Нюансы использования FsRtlIsNameInExpression

tags: <kernel>


Создание процесса из драйвера режима ядра: Windows 8

tags: <kernel>, <Windows 8>, <ZwCreateUserProcess>


Скрипт обновления файла ординалов для HIEW

tags: <HIEW>, <python>


Дескриптор безопасности объекта нити или почему при создании процесса игнорируется имперсонированность нити

tags: <kernel>, <python>


Неожиданный статус в рекурсивном вызове реестровой функции из Cm-callback'а

tags: <kernel>


BSOD: KeStackAttachProcess + ObReferenceObjectByHandle

tags: <kernel>


О подписи исполняемых файлов... в очередной раз

tags: <Code Signing>


Аппаратная точка останова на запись и инструкция CMPXCHG

tags: <source code>, <WinDbg>, <Debug Tips>


Фильтрация создания описателей для объекта любого типа

tags: <kernel>


Verifier и динамический импорт в ядре

tags: <kernel>, <verifier>


Соглашение о вызовах на x64-платформе и обход проверки цифровой подписи модуля при установке OB-callback'а

tags: <kernel>, <x64>, <code signing>, <source code>


Реализация клиентского RPC-вызова из драйвера режима ядра: запуск и останов системных сервисов

tags: <kernel>, <RPC>, <source code>


Таблица системных сервисов (SSTD) на x64 системах: поиск и трактовка содержимого

tags: <kernel>


Поиск скрытых процессов python’вским скриптом в WinDbg

tags: <kernel>, <WinDbg>, <python>, <source code>


Подводные камни использования флага IO_OPEN_TARGET_DIRECTORY (SL_OPEN_TARGET_DIRECTORY)

tags: <kernel>, <file system>, <source code>


Открытие ключа реестра текущего пользователя: RegOpenKeyEx(HKEY_CURRENT_USER, ...) или RegOpenCurrentUser()

tags: <registry>, <impersonation>, <source code>


Таблица разрешенных символов в именах файлов для разных файловых систем

tags: <kernel>, <file system>, <validate file name>


Описатели объектов Windows: взгляд из ядра

tags: <kernel>, <handle>


Противодействие splice-перехватам системных библиотек: обходим Hacker Defender с помощью ONTL

tags: <hook>, <hxdef>, <.ntl>, <source code>


Установка устройства аудио-воспроизведения по умолчанию, используя недокументированный COM-интерфейс IPolicyConfig

tags: <COM>, <Vista+>, <source code>


Анализ splice-перехватов функций системных вызов или использование XDE–дизассемблера в “мирных” целях

tags: <XDE>, <hook>, <source code>


Класс загрузки драйвера, расположенного в ресурсах: TResourceDrv

tags: <driver>, <source code>


Преобразование DOS-пути в NT-формат: функция RtlDosPathNameToNtPathName_U

tags: <file system>, <source code>


Размер буфера данных при соединении с [A]LPC-портом

tags: <[A]LPC>


Открытие объекта по имени в ядре Windows 7

tags: <kernel>


ΞρεΤΙκ