Главная assembler

assembler

Xakep #256

Фундаментальные основы хакерства. Учимся идентифицировать конструкторы и деструкторы

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

Xakep #256
КодингДля начинающих

Погружение в ассемблер. Осваиваем арифметические инструкции

Прочитав эту статью, ты научишься пользоваться арифметическими и логическими инструкциями, а также инструкциями сдвига. Попутно узнаешь, как создавать подпрограммы. А в конце напишешь простенькую игрушку «Угадай число».

Xakep #255
КодингДля начинающих

Погружение в ассемблер. Делаем первые шаги в освоении асма

Ты решил освоить ассемблер, но не знаешь, с чего начать и какие инструменты для этого нужны? Сейчас расскажу и покажу — на примере программы «Hello, world!». А попутно объясню, что процессор твоего компьютера делает после того, как ты запускаешь программу.

Xakep #255

Фундаментальные основы хакерства. Какие бывают виртуальные функции и как их искать

Если функция объявляется в базовом, а реализуется в производном классе, она называется чисто виртуальной функцией, а класс, содержащий хотя бы одну такую функцию, — абстрактным классом. Язык C++ запрещает создание экземпляров абстрактного класса, да и как они могут создаваться, если по крайней мере одна из функций класса не определена?

Xakep #253

МикроБ. Пишем бейсик на ассемблере и умещаем в 512 байт

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

Фундаментальные основы хакерства. Идентификация стартового кода и виртуальных функций приложений под Win64

С какой функции начинается выполнение Windows-программы? Нет, не WinMain! На самом деле первым управление получает стартовый код, скрыто вставляемый компилятором. Выполнив инициализационные процедуры, он вызывает WinMain, а после ее завершения вновь получает управление. И это кое-что значит для хакера.

Xakep #252

Floppy Bird. Пишем на ассемблере клон игры Flappy Bird, который уместится в бутсектор

Хочешь попрактиковаться в кодинге на ассемблере? Давай вместе шаг за шагом создадим игру и запустим ее прямо из загрузочного сектора твоего компьютера. Если ты думаешь, что 512 байт маловато для полноценной игры, не спеши с выводами. К концу статьи ты сможешь сделать ее своими руками!

Xakep #246
ВзломДля начинающих

В королевстве PWN. Препарируем классику переполнения буфера в современных условиях

Сколько раз и в каких только контекстах не писали об уязвимости переполнения буфера! Однако в этой статье я постараюсь предоставить универсальное практическое «вступление» для энтузиастов: от существующих на данный момент механизмов безопасности компилятора GCC до точечных особенностей разработки бинарных эксплоитов для срыва стека.

Xakep #240

Вредоносный код в овечьей шкуре. Как работает атака на анклав SGX

За годы хаотичной эволюции набор команд ассемблера x86-64 стал порождать самые причудливые сочетания. Сегодня мы рассмотрим творческий подход к использованию TSX-инструкций изнутри анклавов — защищенных участков памяти. Результатом будет рабочий эксплоит, который позволит выполнять любой код с привилегиями хост-приложения.

Xakep #238
ВзломДля начинающих

Фундаментальные основы хакерства. Продолжаем осваивать отладчик

В предыдущих статьях мы познакомились с двумя основными типами хакерского инструментария: дизассемблером и отладчиком. Первый служит для статического изучения программного обеспечения, тогда как второй — для динамического. В третьей статье цикла мы продолжим изучать глубинное бурение чужого кода.

Xakep #237

Энкодеры msfvenom. Разбираемся с кодированием боевой нагрузки при бинарной эксплуатации

Генерация полезной нагрузки — неотъемлемая часть эксплуатации. При использовании модулей Metasploit пейлоад генерируется автоматически, достаточно выбрать тип и задать некоторые переменные. В этой статье мы попробуем разобраться с ролью энкодеров в бинарной эксплуатации и рассмотрим несколько реальных примеров энкодинга на боевых эксплоитах.

Xakep #236
ВзломДля начинающих

Фундаментальные основы хакерства. Знакомство с отладчиком

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

Xakep #235
ВзломДля начинающих

Фундаментальные основы хакерства. Проверка аутентичности и базовый взлом защиты

Пятнадцать лет назад эпический труд Криса Касперски «Фундаментальные основы хакерства» был настольной книгой каждого начинающего исследователя в области компьютерной безопасности. Редакторы «Хакера» попытались обновить этот объемный труд и перенести его из времен Windows 2000 и Visual Studio 6.0 во времена Windows 10 и Visual Studio 2017.

Xakep #231

Давай напишем ядро! Создаем простейшее рабочее ядро операционной системы

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

Погружение в assembler. Полный курс по программированию на асме от ][

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

Xakep #223

Полет «Колибри». На что способна ОС, целиком написанная на ассемблере

Сегодня в нашей кунсткамере любопытный образчик — операционная система, написанная на чистом ассемблере. Вместе с драйверами, графической оболочкой, десятками предустановленных программ и игр она занимает меньше полутора мегабайт. Знакомься — исключительно быстрая и преимущественно российская ОС «Колибри».

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

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

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

Telegram ВКонтакте Twitter Facebook

Статьи для подписчиков