Все потоки
Поиск
Написать публикацию
Обновить
173

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

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

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

Необычный случай восстановления данных или немного реверс-инжиниринга PLC Siemens Simatic S7-300

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

На вопрос, какие не самые обычные случаи восстановления данных могут повстречаться в компании, профиль которой – извлекать информацию из поврежденных накопителей, можно привести пример одной из недавних задач с MMC картой из промышленного ПЛК (PLC) Siemens Simatic S7-300, в задачи которого входило управление несколькими десятками электродвигателей и клапанов, а также анализ параметров целой россыпи датчиков некоего конвейера.

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

Читать далее

Rust'ерзание краба. Пробуем реверсить Rust удобно

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

Rust как язык программирования только набирает обороты и находит своих почитателей. Он не только предлагает множество надстроек для безопасности кода, но с недавнего времени еще и появился в ядре Linux.

В этой статье мы посмотрим на него с "обратной" стороны, а именно попробуем пореверсить программу, написанную на Rust, и выяснить, что можно сделать, чтобы сделать ее анализ проще. Рассмотрим утилиты, приложения и плагины, а также напишем свой плагин для IDA Pro, Cutter и rizin, чтобы автоматически создать сигнатуры для исполняемого файла без отладочных символов. Поговорим о FLIRT-сигнатурах, их преимуществах и недостатках и о том, можно ли автоматизировать их создание.

Читать далее

Портируем Maniac Mansion (1987) на ZX Spectrum Next (2017)

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

Maniac Mansion - это классическая приключенческая игра с интерфейсом point and click. Она вышла в конце 80х годов для платформ Commodore 64, Apple II, Atari ST, Amiga, IBM PC и NES. Популярный в наших краях ZX Spectrum этой игры не увидел.

Может быть дело в том, что графический режим ZX Spectrum поддерживает только два цвета на знакоместо. А может, потому что аппаратных спрайтов там не было (хотя в Apple II их не было тоже).

Пришло время исправить эту несправедливость и портировать Maniac Mansion на улучшенный ZX Spectrum - ZX Spectrum Next.

Читать далее

RE Crypto Part#2

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

Наверное самое популярное действие, которое приходится выполнять для исследования криптографии сегодня это процедура анализа зловредного кода, который блокирует чьи-то данные с использованием кастомного или общепринятого алгоритма. Попробуем в этой статье рассмотреть зловред и понять какие криптографические алгоритмы он использует.

ВНИМАНИЕ: Вся информация представленная в статье предоставляется исключительно в образовательных целях. Все файлы, которые будут рассматриваться в качестве примеров ни в коем случае нельзя запускать или исследовать вне тестовой виртуальной среды!

Читать далее

Из-за чего весь сыр-бор: про уязвимость Text4Shell

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

За последнюю неделю в сфере инфобеза стали появляться новости о втором пришествии уязвимости Log4Shell, получившей название Text4Shell. Первым об уязвимости сообщил Alvaro Muñoz, который рассказал о возможности удаленного выполнения произвольных скриптов в продуктах, использующих библиотеку Apache Commons Text.

Сама уязвимость была обнаружена еще в марте 2022 года, но команде Apache Commons потребовалось время на ее исправление и выпуск обновлений библиотеки. Уязвимости был присвоен идентификатор CVE-2022-42889 (CWE-94 — Code Injection) и достаточно высокий уровень риска CVSS 9.8.

Когда уязвимость была обнаружена, некоторые эксперты выразили сомнения в том, что она представляет серьезную опасность. Они ссылаются на то, что уязвимость невозможно эксплуатировать в версиях JDK 15+, а также на то, что попадание пользовательских данных в функцию интерполяции переменной маловероятно. Однако при дальнейшем изучении уязвимости были выявлены и другие векторы ее эксплуатации.

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

Читать

Почему современное ПО такое медленное — разбираемся на примере диктофона Windows

Время на прочтение3 мин
Количество просмотров45K
Я прошу прощения за такой заголовок, потому что современное ПО может быть медленным по множеству разных причин. Слепое использование одного объяснения без малейшего расследования — это программный аналог карго-культа. В этом посте рассматривается один пример того, почему современное ПО может быть мучительно медленным.


Я всего лишь хотел записать сорокасекундную озвучку простенького видео, поэтому запустил стандартное приложение Запись голоса (Voice Recorder) операционной системы Windows и нажал на кнопку записи. Казалось, что ничего не произошло.

Позже я проверил и оказалось, что программа выполняет запись. Я немного поэкспериментировал и выяснил, что в первый раз, когда я начинал запись после запуска Записи голоса, её реакции иногда предшествовала долгая задержка. Двадцатисекундная задержка при записи сорокасекундного клипа — довольно низкий КПД. Это расстроило меня настолько, что я захотел разобраться, почему так получается, и запустил трассировку ETW.
Читать дальше →

Российский серверный процессор Baikal S

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

Прошедшие десятилетия отразились на российской микроэлектронике сразу в двух диаметрально противоположных аспектах. С положительной стороны можно отметить период процветания нулевых годов (фундамент которого было заложен в 90-х) до мирового экономического кризиса 2008-го, и период с 2009 по 2013 годы. Именно тогда на территории России началось первое серьёзное финансирование отрасли: появились новые и получили поддержку уже существующие дизайн-центры, способные разрабатывать (пусть и при помощи государственных субсидий) микропроцессоры мирового уровня. Были предприняты попытки локализации производства на территории страны – купленная производственная линия у STMicroelectronics для «Микрона», организованное предприятие министром связи Леонидом Рейманом Ангстрем-Т со списанным AMD оборудованием – всё это могло быть отличным фундаментом для старта отечественной полупроводниковой промышленности, покрывающим часть потребностей внутреннего рынка. Однако события 2014-го года и дальнейший спад экономики в совокупности со странной внешней политикой правительства, в связи с чем Россия попала в санкционные списки развитых стран, а также событиями 2022-го года фактически задушили всю отрасль, оставив тысячи инженеров дизайн-центров у разбитого корыта с абсолютным непониманием дальнейшей судьбы их разработок.

Читать далее

Изучаем троянскую повестку с мимикрией под XDSpy

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

В ходе постоянного отслеживания угроз ИБ утром 3 октября в одном из Telegram-чатов мы заметили промелькнувший файл со злободневным названием Povestka_26-09-2022.wsf. Беглый осмотр содержимого привлек наше внимание, и мы решили разобрать его подробней. И, как оказалось, не зря.

Подробности под катом

Cнова про llvm

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

Исследования любого приложения достаточно рутинный и длительный процесс. Без использования инструментов и автоматизации разобрать даже самые простые алгоритмы написанные на некоторых языках программирования практически невозможно. (Go рантайм без символов). Справиться с этой тяжелой задачей и предоставить набор инструментов могут следующие приложения:

- Hopper
- IDA Pro
- Ghidra
- radare2
- rizin

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

Читать далее

BMW и диагностика по Ethernet: протокол HSFZ

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

Начиная с F-серии диагностику автомобилей BMW можно производить по Ethernet. Для этого достаточно простого переходника "Ethernet - OBDII", собранного из пяти проводов и одного резистора.

Провода-проводами, но еще нужен протокол, чтобы обеспечивать корректную работу с блоками автомобиля.

Что за протокол?

Взлом игрового архива трэш-клона GTA 3 и использование Kaitai для упрощения распаковки

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

Эта статья продолжает идею предыдущей "Как у меня получилось взломать и распаковать ресурсы старой игры для PSX" здесь я также попытаюсь с точки зрения "новичка в реверс-инжиниринге" описать ход мыслей и действий с помощью которых мне удалось "с нуля" разобраться в устройстве игрового архива.

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

Читать далее

Как устроено электронное голосование простым языком и в рисунках

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

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

Читать далее

Используем телетайп Consul 254 вместо клавиатуры для Arduino

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

Из документации:

Электрифицированная пишущая машина Consul 254 предназначена:

а) для ввода алфавитно-цифровой информации в ЭВМ при печатании оператора на клавиатуре машины

б) для вывода алфавитно-цифровой информации в порядке печати на лист или рулон бумаги по сигналам, посылаемым от ЭВМ

в) для применения в устройствах подготовки данных или в других устройствах, параметры которых соответствуют параметрам указанной машины

Сегодня мы займёмся пунктом "а" - будем читать данные с клавиатуры с помощью ЭВМ Arduino Uno.

Читать далее

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

Что можно сделать с большим дисплеем?

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

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

Что там?

Что не так с ДЭГ Москвы на этот раз?

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

Я уже рассказывал в прошлом году, что тогда нам так и не удалось независимо установить итоги голосования. Тогда это произошло из-за наличия в системе “переголосований”, для учёта которых использовался никому не подконтрольный второй блокчейн.

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

Читать далее

От взлома протокола в старом «железе» до разработки программ

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

Нужно было "взломать" протокол передачи данных внутри торгового автомата. Встроить одноплатную ЭВМ Raspberry Pi, большой монитор, написать программу для связи с web сервером и сам web сервер. Далее рассказ об этом взломе и немного о модернизации.

Читать далее

Когда есть только дисплей и больше ничего

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

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

Читать далее

10 типичных ошибок при расследовании инцидентов

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

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

Читать

Восставший из подвала и хлама: Оживляем китайскую нонейм игровую приставку из 2013 года

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

Всем привет! Когда-то, в юности, родители на ДР подарили мне игровую консоль-планшет на андроиде. Юзал я её несколько месяцев, и по итогу разбил на ней дисплей с психу. Так и отправилась консоль практически на 10 лет в подвал, а сейчас я её нашёл и отремонтировал. Консоль абсолютный noname - на неё нет ни прошивок, ни запчастей, и если кому интересен процесс восстановления подобных старых китайских девайсов - добро пожаловать под кат!

Читать далее

Проклятые Земли. Освежаем геймплей

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

Статья о том, как реверс-инжиниринг может дать новое дыхание старой игре и освежить её геймплей. Обзор уникальных фишек игры Проклятые Земли, изменение механик и добавление новых фишек.

Наверняка многие играли в Проклятые Земли и аддоны к ним лет 15, а то и все 22 года назад. При всех достоинствах этой игры, ей, как мне кажется, не хватало динамики, что мы и попробуем исправить, взяв в руки отладчик.

Читать далее

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