Обновить
172.84

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

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

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

Цифровой двойник пассажирского посадочного моста: реальный кейс решения сервисной задачи

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели6.3K

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

Читать далее

Я выполнил реверс-инжиниринг веб-обфускации Amazon, потому что приложением Kindle пользоваться невозможно

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели20K

TL;DR

• Я впервые купил на Amazon электронную книгу

• Android-приложение Kindle самой компании Amazon было очень забагованным и часто вылетало

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

• Осознал, что Amazon больше не позволяет этого делать

• Решил назло выполнить реверс-инжиниринг её системы обфускации

• Обнаружил множество слоёв защиты, в том числе рандомизированные алфавиты

• Победил их все при помощи колдунства с сопоставлением шрифтов

Читать далее

Индустрия 4.0 в 2026 году: цифровые двойники, реверс-инжиниринг и «умные» фабрики

Время на прочтение3 мин
Охват и читатели6.9K

2026 год обещает стать переломным для промышленности. Индустрия 4.0 — это уже не красивые слайды, а реальность: заводы оцифровывают оборудование, внедряют цифровых двойников и начинают использовать AI не только для отчётов, но и для реального управления производством.

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

Читать далее

Как создать кастомную OpenWRT-прошивку без ImageBuilder за 1 вечер

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

Привет, Хабр! Меня зовут Алексей, и я занимаюсь беспроводными технологиями. В последнее время в организацию, в которой я работаю, часто поступают запросы от продавцов на маркетплейсах, которые торгуют китайскими роутерами, — кастомизировать для них прошивку OpenWRT. Ситуация осложняется тем, что для моделей, которые их интересуют, часто нет ImageBuilder, и это заметно затрудняет задачу. Сразу хочу сказать, что организация, в которой я работаю, такие услуги не оказывает, и данная статья не в коем случае не реклама, но раз уж запрос есть, я решил написать небольшой гайд, как модифицировать и собрать прошивку, имея в наличии только роутер с уже установленным OpenWRT и без использования Image Builder.

Читать далее

Чтобы дверью не зажало. Оживляем фотореверс из кабины лифта

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.8K

Приветствую всех!
Замечали ли вы, что в некоторых лифтах, стоит только попасть постороннему предмету в проём, как двери немедленно открываются? Такая система, делающая поездки намного более комфортными и безопасными, есть практически в каждом современном лифте.

Что же это за устройство, не дающее нам быть зажатыми дверями? Сейчас и узнаем. Заодно посмотрим на начинку одного из таких девайсов и попробуем его запустить.

Читать дальше →

Modbus: как реверс-инжиниринг помог решить производственную задачу

Время на прочтение3 мин
Охват и читатели6.9K

Это просто история о том, как реверс-инжиниринг мне помог решить производственную задачу. Здесь не будет рекомендаций или фрагментов кода, это лишь рассказ из жизни о проблеме и решении.

2010 год: я работал на одном промышленном предприятии. За пару лет до моего прихода они закупили комплект автоматики у другого подобного предприятия. Как это часто бывает, сначала какая-то организация делает автоматику для решения своих задач, а затем, видя успешность своего решения, начинает продавать это решение себе подобным.

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

Читать далее

Реверс-инжиниринг сетевых протоколов: практическое руководство

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

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

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

Привет, Хабр! Меня зовут Виталий, я python-разработчик в SimbirSoft. Цель этой статьи — дать практическое введение в реверс-инжиниринг сетевого трафика и анализ протоколов передачи данных. Сразу уточню: здесь не будет взлома или обхода защиты — я уважаю интеллектуальную собственность и законодательство. Материал посвящён техническим приёмам, которые будут полезны инженерам и специалистам по интеграции систем. Статья будет полезна разработчикам, аналитикам, менеджерам, которые работают с указанными решениями.

Готовы? Поехали!

XEH — редактор с живым кодом и путешествиями во времени

Время на прочтение4 мин
Охват и читатели12K

Заметка про экспериментальный редактор кода. Создавался для исследования бинарных данных. Графический клиент, консольный интерфейс и встраиваемая библиотека.

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

Примечательные возможности: Живой кодинг. Создание контрольных точек. Отладка с перемещением во времени. Смещения, адреса и размеры в битах (да, если в байте 7 или 9 бит). Тэгирование данных.

Читать далее

Анатомия POS-терминала: от разведки на диване до обхода антивскрытия

Время на прочтение11 мин
Охват и читатели10K

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

Эта статья — не просто очередной «сказ про то, как железку взломали», а попытка вывести универсальную методологию аппаратного реверс-инжиниринга на основе исследования конкретного устройства. Мы пошагово пройдем весь путь: от сбора информации в открытых источниках до физического вскрытия, обхода защиты и перехвата «секретных переговоров» между чипами.

Итак, часть первая: вскрытие и разведка боем. Поехали!

Читать далее

Невидимая оборона 386: как защищены входы и выходы процессора

Уровень сложностиСложный
Время на прочтение19 мин
Охват и читатели10K

Я давно занимаюсь реверс-инжинирингом процессора Intel 386 и недавно наткнулся на любопытные схемы узлов выводов ввода/вывода (I/O). Поскольку эти выводы взаимодействуют с внешним миром, им угрожают особые опасности: статическое электричество и защёлкивание (latch-up) способны разрушить кристалл, а метастабильность — вызвать серьёзные сбои. Эти узлы ввода-вывода полностью отличаются от логических схем процессора 386, и мне попалась ранее не описанная схема триггера, так что я вступаю на неизведанную территорию. В этой статье я подробно разбираю, как именно узлы ввода-вывода защищают 386 от «драконов», способных его уничтожить.

Читать технический разбор 386

«Вика-Д3». Суровые челябинские домофоны настолько суровы…

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

Приветствую всех!

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

Что же в этой штуке такого интересного и как она устроена? Сейчас и узнаем.

Наберите номер квартиры, ждите ответа

В помощь реверс-инженерам SNES

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели8.6K

Приветствую,

Пока Хабр заполоняют новости от его "замечательной" информационной службы о выходе каждой новой версии какого-то noname софта, которым пользуется полтора, а то и даже два землекопа, я подумал: "а чем я хуже?" и решил написать о своём новом проекте - о загрузчике SNES ромов и нормальном (!) процессорном модуле WD65816 для IDA Pro. Может быть, он будет даже полезен какому-то количеству людей. Создавался проект в помощь тем, кто хотел или уже пытался реверсить SNES ромы в Иде, но у него ничего не получалось.

Хочу реверсировать SNES...

Исследование кремниевых кристаллов процессора Intel 386

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

386 — редкий случай, когда топология кристалла напрямую пересекается с историей индустрии. В этой статье разберём, как переход x86 на 32 бита и смена NMOS на CMOS отразились на самом чипе: где живут тракт данных и ПЗУ микрокода, почему shrink с 1,5 до 1,0 мкм дал ~60% экономии площади, но потребовал переложить блоки и переосмыслить разводку. Посмотрим, чем DX отличается от SX на уровне бонд-площадок и шин, и почему у 386 SL транзисторов стало втрое больше — из-за интеграции контроллеров, SMM и логики управления питанием.

Это взгляд на 80386 через микрофотографии — и на эпоху, в которой Compaq перехватил архитектурное лидерство у IBM.

Заглянуть внутрь 386

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

Оптимизация декодера изображений для 6502 с 70 минут до одной

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели7.6K

Когда я решил написать программу для простой цифровой фотосъёмки на Apple II, то думал использовать камеры Quicktake. Выбор казался очевидным, потому что это были камеры Apple, способный подключаться к компьютеру через последовательный порт.

Объём задачи немного расширился, когда мне удалось декодировать фотографии Quicktake 100: захотелось научиться декодировать фотографии Quicktake 150 и Quicktake 200. Из-за этого пришлось погрузиться в тему обработки изображений глубже, чем мне хотелось изначально. В этой статье я расскажу о том, как мне удалось заставить работать декодер Quicktake 150 с достаточно приемлемой скоростью на процессоре 6502 с частотой 1 МГц.

Формат Quicktake 150 проприетарный и не имеет документации, однако в проекте dcraw существуют свободные программные декодеры. Они стали моим фундаментом для создания первого декодера на Apple II. К сожалению, они написаны на C, крайне плохо задокументированы и чрезвычайно непонятны (для меня). Сжатие выполняется при помощи кода Хаффмана с переменной длиной (то есть используется битовый сдвиг), а для воссоздания изображения требуется большой объём 16-битных вычислений. Со всем этим 6502 справляется плохо.

Но для начала мне нужно было переписать исходный алгоритм так, чтобы он работал с полосами по 20 пикселей (из-за ограничений памяти). Я написал функциональный декодер, и он работал идеально, но... для декодирования одной фотографии требовалось семьдесят минут.

Читать далее

Северный «Визит». Самый красивый домофон советской эпохи

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

Приветствую всех!

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

Изначально я думал, что ничего такого про этот экземпляр я рассказать не смогу: за неимением блока управления запустить её не получится. Однако при детальном рассмотрении оказалось, что даже сама панель заслуживает отдельного поста. Что же там такого интересного? Сейчас и узнаем.

Читать дальше →

Технологии утрачиваются редко

Время на прочтение18 мин
Охват и читатели22K

Несколько изобретений действительно утрачено и, в сущности, ни одного из них не жалко.  

«Στόλος Ρωμαίων πυρπολῶν τὸν τῶν ἐναντίων στόλον, «т.e. «флот ромеев сжёг вражеский флот». Так в «Хронике Иоанна Скилицы», написанной в XII веке, охарактеризовано применение византийцами греческого огня.

Читать далее

Отключаем пищалку в холодильнике

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

У меня есть холодильник с очень крутой «фичей»: он пищит, если дверца открыта дольше, чем 60 секунд. В 95% случаев это больше раздражает, чем помогает. На мой взгляд, он просто должен заткнуться и считать, что мне виднее.

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

Читать далее

Флиртуем с Идой. Разбираемся с технологией FLIRT в IDA Pro

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели4.9K

Сегодня мы узнаем как устроены сигнатуры для FLIRT. Как создавать собственные и где искать существующие. И какие у FLIRT есть сильные и слабые стороны.

Читать далее

Истории о «partial PEM»

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

Задачка с Offzone 2025 натолкнула на мысль составить свой маленький букет «этюдов» на тему «partial PEM private key» (закрытый ключ с неполной информацией в формате PEM-файла). Будем рассматривать CTF-задачки по восстановлению закрытых ключей популярной криптосистемы RSA.

Читать далее

Запускаю Doom на домофоне через уязвимость

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

Привет! Меня зовут Владимир, и я работаю реверс-инженером в BI.ZONE Hardware Lab или просто — в «Лабе». Когда в моём подъезде появился продвинутый видеодомофон, я не удержался и разобрал его. Внутри оказалось не только любопытное устройство, но и уязвимость, позволяющая получить полный контроль над ним. В этой статье — история о том, как я искал ответ на вопрос «могут ли меня подслушивать?», взломал механизм обновления и в итоге... запустил на домофоне DOOM II.

Читать далее

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