Как стать автором
Обновить
145.73

Реверс-инжиниринг *

Расковырять и понять как работает

Сначала показывать
Порог рейтинга
Уровень сложности

Как вредоносы распространялись через поддельный менеджер паролей KeePass: AsyncRAT, BATLoader

Время на прочтение11 мин
Количество просмотров2.5K

Приветствую, и снова я начну с вопроса. И достаточно непростого. Пользуетесь ли вы менеджерами паролей и считаете ли вы их полностью безопасными? Скорее всего, мнения читателей на этом моменте разделятся. Кто-то ответит, мол, пользуется блокнотом и ручкой, а кто-то ответит утвердительным «‎да»‎. А к чему этот вопрос? Во-первых, замечу, что абсолютно ничто в нашем мире не может быть полностью безопасным: будь то программное обеспечение, какой-то ресурс или вовсе ваш телефон с тысячей защитных приложений. А во-вторых, менеджеры паролей в последнее время очень и очень часто стали подводить своих клиентов. Об одном таком инциденте и пойдет сегодня речь. 

Так совсем недавно специалистами из MalwareBytes была обнаружена целая схема фейковых ресурсов, через которые распространялись инфицированные версии приложения KeePass. И совсем не удивительным является тот факт, что эта кампания продвигалась посредством использования GoogleAds (да, это та самая надоедливая реклама, которая появляется при посещении различных сайтов) и SEO Poisoning.  

Казалось бы, удивительного здесь ничего нет, ведь это далеко не первый случай, когда вредонос распространяется подобным образом. Google, естественно, с этим борется, исправляет уязвимости, но пока что все без толку. Чего, кстати, не скажешь о человеческом факторе, ведь за последние несколько лет большинство пользователей сообразили, что поисковые системы не всегда выдают безопасные результаты из-за чего эффективность подобного метода атаки заметно поубавилась. Но в случае с KeePass произошло кое-что другое. Злоумышленники прибегли к использованию метода Punycode, чтобы сделать вредоносный домен практически идентичным оригинальному. В данном случае хакеры использовали Punycode «xn—eepass-vbb.info», что транслируется в адресной строке, как «ķeepass.info».

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии3

Оживляем блоки индикации из кабины «Боинга»

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров9.9K
Приветствую всех!

Не так давно я показывал, как запустить электронный стрелочный тахометр из кабины пассажирского лайнера Boeing 737-300. И, разумеется, мне захотелось продолжить эту тему и подключить что-то ещё из авиаприборов.



Итак, в сегодняшней статье запустим два электронных блока индикации из кабины самолёта этой же модели. Посмотрим, что у них внутри и узнаем, насколько сложной может быть коробочка с тремя кнопками. Традиционно будет много интересного.
Читать дальше →
Всего голосов 63: ↑63 и ↓0+63
Комментарии34

Метод Reverse Engineering на практике: как расшифровать исходный код

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров5.2K

Всем привет!

Сегодня в нашем эфире новый автор - Никита Синкевич, руководитель группы анализа и реагирования Инженерного центра Angara Security. Итак, начинаем!

Иногда в ходе расследования инцидента информационной безопасности необходимо понять, имеет ли та или иная программа вредоносное воздействие на систему. Если для данной программы у вас нет исходного кода, то приходится применять метод исследования "обратная разработка", или Reverse Engineering. Я покажу, что такое "обратная разработка" на примере задания "RE-101" с ресурса cyberdefenders.

CyberDefenders — это платформа для развития навыков blue team по обнаружению и противодействию компьютерным угрозам. В этой статье будет разбор последней, шестой подзадачи из задания "RE-101". На мой взгляд, она лучше раскрывает процесс реверс-инжиниринга, чем остальные: нам предстоит восстановить из исполняемого файла кастомный алгоритм шифрования, написать скрипт-дешифратор и расшифровать флаг.

Используемые инструменты:

1.       Detect it Easy
2.       IDA
3.       Python3
4.       Notepad++
5.       CyberChef

Задание

Описание намекает, что в предложенном файле malware201 кто-то реализовал свой собственный криптографический алгоритм.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии8

Червь-ботнет P2P Infect активно распространяется на серверах Redis, через уязвимости LUA

Время на прочтение10 мин
Количество просмотров3.4K

Приветствую, читатели. И начну я сразу же с вопроса. Что вы знаете о червях? Нет, не тех, что обитают в земле, а о компьютерных паразитах. Скорее всего, большинство ответит, мол, их называют червями, потому что они, подобно этим существам, способны распространяться между устройствами без непосредственного участия злоумышленника. Некоторые люди припомнят эпидемию вируса Mydoom 2004 года или уже ставший культовым вредонос ILoveYou. 

Примерно с 2000 годов до 2010 была целая эра компьютерных червей. Их разнообразие в те годы было настолько огромным, что говорить об этом можно практически бесконечно. Но эта статья отнюдь не о былых временах. После 2010 года злоумышленники шагнули на новую ступеньку развития своего преступного дела, попросту забыв об уже пройденном этапе червей. Сколько современных вредоносов этого типа вы знаете? Я лишь несколько, да и те не смогли нанести большого вреда современному компьютерному сообществу. 

Все изменилось летом этого года, когда исследователями был обнаружен абсолютно новый и продвинутый червь, который распространяется через уязвимости нулевого дня. P2P Infect — это и есть предмет нашего сегодняшнего диалога. Обнаружен он был 11 июля 2023 года и нацелен на облачные серверы с установленным популярным приложением для работы с базами данных Redis. Но сперва выделю основную информацию о типе этого вредоноса. 

Читать далее
Всего голосов 6: ↑4 и ↓2+2
Комментарии15

Истории

Наши на Standoff. Как проходит крупнейшая кибербитва страны

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.6K

Кибербитва Standoff 12 идёт уже несколько дней, и просто сообщить о её начале было бы недопустимым упущением. Да, этот пост о том, что происходит на крупнейшей площадке, собравшей лучшие умы и технологии, в число которых, кстати, входит наш спутник. Поехали!
Читать дальше →
Всего голосов 43: ↑42 и ↓1+41
Комментарии0

Как уговорить Google Bard слить тебе ценные данные

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров22K

В последнее время у Google Bard появилось несколько мощных обновлений, в том числе Extensions. Extensions позволяют Bard получать доступ к YouTube, искать авиарейсы и отели, а также иметь доступ к личным документам и письмам пользователя.

То есть теперь Bard способен читать и анализировать Диск, Документы и Gmail!

Это значит, что он анализирует ненадёжные данные и может быть подвержен косвенному инъецированию промтов (Indirect Prompt Injection).

Мне удалось убедиться в работоспособности Prompt Injection, дав доступ Bard к своим старым видео на YouTube и попросив его составить краткую сводку; также я протестировал его с Google Документами.
Читать дальше →
Всего голосов 51: ↑51 и ↓0+51
Комментарии7

MaxPatrol O2. Как работает автопилот для кибербезопасности

Время на прочтение12 мин
Количество просмотров2.3K

В прошлый раз мы рассказывали вам, что подтолкнуло нас к созданию автопилота для результативной кибербезопасности и как он влияет на метрики работы SOC. В этом материале мы погрузимся в технологии MaxPatrol O2, чтобы разобраться, как именно работает метапродукт.

Читать
Всего голосов 2: ↑2 и ↓0+2
Комментарии2

Погружение в Smali. Как выглядят Java и Kotlin со стороны

Время на прочтение6 мин
Количество просмотров3.3K

Эта статья для начинающих исследователей файлов APK. Хотя почему только для начинающих? Иногда стоит остановиться и разложить по полочкам то, что накопилось. И тогда можно найти логичное и простое объяснение тому, чего не понимал. Или увидеть то, чего раньше не замечал.

Читать далее
Всего голосов 11: ↑8 и ↓3+5
Комментарии2

Защита кода приложения Android. Когда хотели как лучше, а вышло не очень

Время на прочтение4 мин
Количество просмотров6.3K

В статье расскажу пару случаев из практики анализа защиты приложений Android. Имена и место событий изменены. Любые совпадения — случайность

Читать далее
Всего голосов 28: ↑25 и ↓3+22
Комментарии7

(Ex)Cobalt апгрейднула инструментарий: как группа атаковала российские компании в 2023 году

Время на прочтение7 мин
Количество просмотров3K

Последние несколько лет специалисты нашего экспертного центра безопасности (PT Expert Security Center, PT ESC) регулярно фиксируют фишинговые рассылки вредоносных файлов, вложенных в архив, — их запуск приводит к загрузке модуля CobInt. Это ВПО — один из основных инструментов киберпреступной группы Cobalt. Ранее не фиксировалось использование этого модуля другими группировками. Вредоносные файлы применялись в атаках на российские компании из сфер энергетики, образования и телекоммуникаций — мы обнаружили это в ходе реагирования на инциденты ИБ в 2023 году. Предполагаем, что на территории России не менее 10 потенциальных жертв.

Мы следим за Cobalt с 2016 года. Ранее группа атаковала кредитно-финансовые организации с целью кражи денежных средств, а в последние несколько лет она сместила акцент на кибершпионаж. С 2020 года Cobalt не была замечена в громких кампаниях, но обнаруженные нами факты подтверждают, что группа или некоторые из ее участников до сих пор активны, только используют они новые инструменты.

В статье мы кратко рассмотрим две цепочки атак, а также расскажем про руткит Facefish, используемый для компрометации узлов под управлением ОС Linux

Подробнее
Всего голосов 11: ↑10 и ↓1+9
Комментарии3

Реверс-инжиниринг ячейки регистра процессора Intel 386

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров11K

Новаторский Intel 386 (1985 год) стал первым 32-битным процессором линейки x86. У него есть множество внутренних регистров: регистры общего назначения, индексные регистры, селекторы сегментов и более специализированные регистры. В этом посте мы изучим кремниевый кристалл 386 и объясним, как реализованы некоторые из этих регистров на уровне транзисторов. Изученные мной регистры реализованы как статическое ОЗУ, где каждый бит хранится в стандартной восьмитранзисторной цепи, называемой «8T». Исследование этой цепи демонстрирует интересные техники размещения, использованные Intel для «сжатия» двух ячеек с целью минимизации необходимого им пространства.
Читать дальше →
Всего голосов 98: ↑97 и ↓1+96
Комментарии6

Так какой же процессор использовался в играх Brick Game? Часть 2

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров25K

Это продолжение моей предыдущей статьи, в которой я рассказал о не очень удачной попытке достать кристалл микроконтроллера одной из игр семейства Brick Game. На этот раз попытка оказалась удачной - кристалл уцелел, прошивка успешно прочитана и написан эмулятор.

Но обо всем по порядку
Всего голосов 367: ↑367 и ↓0+367
Комментарии112

Одноплатный компьютер из камеры видеонаблюдения. Создаём WiFi-мобиль. Часть I

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров17K


Я уже рассказывал про то, как из телевизионной приставки можно сделать одноплатный компьютер (SBC — single board computer). Если же у вас завалялась ненужная или разбитая камера видеонаблюдения, не спешите её выбрасывать. Я покажу, как её можно использовать, даже если на ней не работают какие-либо функции вроде звука, изображения и т. п. Сегодня нас камера интересует только как SBC. Расскажу, как найти куда подпаять нагрузку, какую нагрузку можно подключить к камере и какими способами можно ею управлять.
Читать дальше →
Всего голосов 76: ↑76 и ↓0+76
Комментарии38

Ближайшие события

Разговор с Алексеем Усановым из Positive Technologies о реверс‑инжиниринге и создании книги по этой специализации

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.8K

Это первый материал по «ИТ‑Пикнику», проходившему 2 сентября 2023 года. Будет отдельный обзорный материал мероприятия, а пока хочу представить интервью с руководителем направления исследований безопасности аппаратных решений компании Positive Technologies (РТ) Алексеем Усановым.

Осматриваясь на «ИТ‑Пикнике», я заглянул на стенд Positive Technologies. Там проходила лекция, я заинтересовался темой и решил послушать. Лекция была посвящена реверс‑инжинирингу в информационной безопасности. Я раньше с темой сталкивался только в контексте создания игр. Когда энтузиасты делают клон игры, но у них нет исходников и советов от разработчиков, только внешний вид игры и примерные представления, на каком движке она была создана. Оказывается, в ИБ это довольно знаковая область. Немного подумав после лекции, я поймал Алексея Усанова и поговорил с ним на тему реверс‑инжиниринга в ИБ, кстати, оказалось, что он написал целую книгу об этом.

Читать далее
Всего голосов 20: ↑18 и ↓2+16
Комментарии0

Почему Cities: Skylines 2 так тормозит (часть 2, самое мясо)

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров31K

[Первая часть]

Генерация скайбокса

В игре используется встроенная система неба HDRP Unity, то есть она генерирует текстуру скайбокса (кубическую карту) в каждом кадре. Это занимает около 0,65 миллисекунды, что не очень много по сравнению со всем остальным, но если игра нацелена на генерацию 60 FPS, то это будет почти 4% от общего бюджета времени на кадр.

Предварительный проход

Теперь мы переходим к самому рендерингу. В C:S2 используется отложенный рендеринг: по сути, это означает, что рендеринг выполняется за несколько фаз и с использованием множества промежуточных render target. Первая фаза — это предварительный проход, создающий попиксельную информацию о глубине, нормалях и (преположительно) о гладкости, записывая их в две текстуры.

Этот проход на удивление затратен, он занимает примерно 8,2 миллисекунды, то есть слишком много, и именно здесь начинает проявляться одна из самых больших проблем рендеринга игры. Но для начала нам нужно поговорить о тех самых зубах.

Читать далее
Всего голосов 81: ↑79 и ↓2+77
Комментарии58

Взламываем транспортные карты: чит на бесконечные деньги

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров117K

Этот парень открыл все турникеты на станции. Вы до сих пор считаете, что все хакеры вредны?

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

Жителям Бостона статья поможет получить бесплатные поездки, а для всех остальных этот материал будет неплохим уроком по реверс-инжинирингу. Ну или, по крайней мере, вы узнаете любопытную историю.

Читать далее
Всего голосов 142: ↑140 и ↓2+138
Комментарии185

Взлом YouTube для быстрого скачивания видео

Время на прочтение9 мин
Количество просмотров65K
Мы неоднократно рассказывали о специальном софте, который позволяет скачивать видео с YouTube. Это в первую очередь youtube-dl (yt-dl) и его клоны, такие как yt-dlp и yt-dlc. С ними воюют могучие копирасты, пытаются удалить их из поисковой выдачи, с хостингов, с Github и так далее, по известной схеме «тотальная война».

Но главным врагом для этих программ остаются даже не правообладатели, а злобная корпорация Google, которая постоянно вносит изменения в YouTube API, чтобы прекратить злоупотребления сервисом помешать людям скачивать файлы, ведь от этого Google никакой прибыли.

Сами программки — просто технические инструменты для скачивания общедоступного контента, они ничего не воруют и не пиратят. Просто доступ происходит нестандартным способом, который не предусмотрен официально. Посмотрим, как это делается.
Читать дальше →
Всего голосов 168: ↑158 и ↓10+148
Комментарии421

Реверс мобильных приложений на cocos2dx

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.4K

Хочу поделиться своим опытом в реверс инженеринге приложения на lua cocos2d-x. Файлы приложения зашифрованы xxtea, а ключи шифрования находятся в .so файле внутри приложения.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии3

Обратный отсчёт пошёл: последний шанс поучаствовать во взломе века

Время на прочтение1 мин
Количество просмотров5.5K


Кого убил Энтони? Время идёт, а правильного ответа до сих пор нет. Это закономерно — никто не обещал, что будет легко.

Но моё терпение заканчивается. Я запускаю обратный отсчёт: с этого момента у вас есть ровно сутки, по истечении которых предложение аннулируется.

Напоследок хотел сказать лишь одно:

Enjoyed your experience, sure? only no team hopes ends far like Anthony's grave
Всего голосов 30: ↑28 и ↓2+26
Комментарии15

В помощь тем, кто погружается в Smali

Время на прочтение6 мин
Количество просмотров2.8K

Целевая аудитория этой статьи — люди, которые решили заняться исследованием .apk файлов, имеющие опыт разработки под Android и знакомые с основами синтаксиса Smali. Эта статья является оригинальной и ранее нигде не публиковалась. При копировании, прошу указывать ссылку на этот источник.

Поскольку устройства, использующие операционную систему Android сегодня устойчиво сохраняют лидерство на рынке, программы для них не пишет разве что самый ленивый мобильный разработчик. Иногда программы ведут себя так, как мы этого ожидаем, а иногда (все чаще) не совсем так. И тогда, у пользователя программного продукта, особенно если он сам занимается разработкой, появляется ожидаемый интерес, и ему хочется понять почему программа делает то или это. Тогда пользователь, с чисто научно-позновательной целью, решает произвести вскрытие субъекта. Тут то на помощь ему и приходит множество инструментов для изучения файлов .apk.

Мой стандартный хирургический набор, на сегодняшний день, состоит из таких инструментов:
apktool - для декомпиляции и сборки apk
jadx-gui - когда хочется получить код приложения (или, что чаще — часть кода) в виде Java.
Bytecode Viewer — когда хочется получить код в виде Java, используя разные декомпиляторы, что дает иногда весьма интересные результаты.
zipalign — утилита из состава Android Studio, предназначенная для выравнивания содержимого файлов, упакованных в .apk.
apksigner - утилита из состава Android Studio, предназначенная для подписи исследуемого файла, и успешного его запуска на устройстве.

средства автоматизации собственной разработки — накапливаются с опытом. Иногда возникает столько рутинной работы, типа заменить A на B во всех файлах, что руки опускаются. Но, мы не из тех, кто сдается. И поэтому, исключительно из-за своей лени пишем утилиты, которые, собственно и позволяют нам лениться ). Однако, для меня, основными инструментами все же являются: файловый менеджер с хорошо организованным внутрифайловым поиском ( я использую Krusader, потому что Ubuntu), и редактор с какой-никакой подсветкой синтаксиса (я использую Kate, потому что Ubuntu).

На основании своего опыта исследования классических .apk (когда программа написана на Java или Kotlin c UI на xml шаблонах), ответственно заявляю, что получить из оригинального .apk рабочий проект Android Studio МОЖНО! И я говорю далеко не про Hello World. Но и тут есть свои особенности. Все зависит от того, насколько автор программы позаботился о защите ее кода. По моим наблюдениям до 80% программ уровня ширпотреба не имеют никакой защиты кроме примитивной обфускации.

Однако, и в этом случае для получения рабочего проекта на Java, скорее всего придется потрудиться. Во-первых: многие куски кода придется дописывать самому — декомпиляторы очень часто не справляются, но честно пишут, там где не могут воспроизвести код. Во-вторых: необходимо будет восстанавливать ресурсы из десятичного индекса в их привычный для разработчика Android вид. В третьих: подби

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Вклад авторов