Причина смерти - вскрытие, или распаковываем программу вручную
Разработчики вредоносов, как известно, любят упаковывать свои творения при помощи т.н. пакеров, дабы затруднить обнаружение и статический анализ их творения.
В этой статье я покажу, как распаковать такую программу вручную, а также проблемы, с которыми я столкнулся, пытаясь заставить распакованную программу снова работать.
Добавление ресурсов в Windows-программы без VS
Дисклеймер: в статье приводится пример использования ресурсов для встраивания шеллкода в исполняемый файл. Автор блога не несёт отвественности за ваши действия и т.д. и т.п….
Ресурсы - это дополнительные двоичные данные, которые можно встроить прямо в исполняемый exe-файл. В Windows они обычно используются для хранения иконок, шрифтов или меню графических приложений, но также при помощи них можно добавлять полезную нагрузку вроде шеллкодов. Непосредственно с этой точки зрения и рассмотрим, как добавить ресурс к нашей программе.
В этой статье не будет подробно рассматриваться система ресурсов, как они работают “под капотом” и как управлять большим количеством ресурсов. Для крупных проектов я советую воспользоваться Visual Studio, сильно облегчающей жизнь в этом случае. Я хотел бы рассмотреть довольно специфическую проблему добавления ресурсов без использования Visual Studio.
OWASP Top10, человеческим языком - часть 1
По теме OWASP Top 10 в Интернете можно найти в основном лишь написанные сухим, корпоративным языком статьи-дайджесты, которые нагоняют скуку с самого начала. Это в целом свойственная ИТ проблема - в области очень мало хорошо владеющих языком технических писателей и очень много клерков, которых вынуждает писать работодатель.
Я вовсе не претендую на роль хорошего технического писателя (или вообще на роль хорошего писателя), однако можно попытаться!
В идеале эта статья перерастёт в серию статей, описывающих строгие,
технические понятия и термины человеческим языком и с изрядной
долей отсебятины. Тегом этой рубрики будет no-bs
.
:]
Райтап по заданию No way out (PicoCTF)
Сегодня я хотел бы рассмотреть одно из заданий на реверс-инжиниринг с сайта PicoCTF, которое мне показалось достаточно любопытным, чтобы написать его полноценный разбор.