Обновить
286.04

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

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

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

000xpda или как я реверсил электронный дневник и нашел ключи в логах

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

В этом учебном году в нашей школе внедрили новый электронный дневник. Дизайн в стиле «привет из 2010-го», медленная загрузка — типичный набор для регионального госсектора. Глядя на всё это, я подумал: если визуальная часть сделана так лениво, то что же там под капотом?

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

В этой статье я расскажу, как декомпиляция APK, USB-отладка и пара скриптов на Python помогли мне обойти защиту системы, написать собственного Telegram-бота для получения оценок и в очередной раз доказать, что концепция «Security through obscurity» не работает, если за дело берется школьник с JADX.

В программе:

Перехватываем X1_SSO через adb logcat.

Реверсим класс Crypt и реализуем его логику на Python.

Ищем загадочный pdakey и находим «магическую» строку 000xpda.

Пишем бота, который работает быстрее официального приложения.

Читать далее

Новости

Оживляем загадочный домофон с резистивным ключом

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

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

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

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

Press F1 to continue

Лучшее сжатие данных для Sega Mega Drive — MEGAPACK

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

Приветствую. Эта небольшая история будет не столько о самом мощном упаковщике на Sega Mega Drive, сколько о том, как я, в очередных своих попытках пореверсить что-нибудь интересное на старушку Сегу, откопал бесценное сокровище, почти утерянную часть истории разработки видеоигр, если можно так (достаточно громко) выразиться!

Заинтриговал? Тогда добро пожаловать под кат.

Читать далее

Что было у ReactOS в 2025

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

Здравствуйте, дорогие друзья.

Наконец-то у меня дошли руки написать статью с итогами ReactOS по 2025 году.

Читать далее

Навайбкодился и спит: дыры в социальной сети для ИИ Moltbook

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

Что такое Moltbook, и почему она привлекла наше внимание?

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

Мы выявили принадлежащую Moltbook неправильно сконфигурированную базу данных Supabase, обеспечивающую полный доступ на чтение и запись ко всем данным платформы. Дыра позволила обнаружить 1,5 миллиона токенов аутентификации API, 35 тысяч почтовых адресов и личную переписку между агентами. Мы немедленно сообщили о находке команде Moltbook, которая с нашей помощью закрыла её в течение считаных часов, а все данные, доступ к которым был получен в процессе поиска и проверки исправления, удалены.

Читать далее

Взлом андроида Unitree G1. От радиоперехвата до джейлбрейка прошивки

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

Стоило Илону Маску пообещать нам создание умных помощников вроде C-3PO, как исследователи безопасности тут же решили проверить, не получится ли вместо этого настоящий Терминатор. Мы разобрали нашумевшее исследование команды Dark Navy и рассказываем, как популярного робота-гуманоида Unitree G1 за $16 000 превратили в хакерскую марионетку. 

В статье мы детально разберем цепочку уязвимостей: от перехвата нестандартного радиопротокола через SDR до инъекций кода в LLM-мозги робота и получения root-доступа. Вы узнаете, как исследователям удалось обойти защиту обфусцированного кода, выполнить полноценный джейлбрейк бюджетной версии робота и почему функция eval() в коде андроида страшнее любого восстания машин.

Читать далее

Как не сломать Android-приложение при защите от реверса

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

Привет, Хабр! На связи Александр Ананикян, аналитик сервиса по защите мобильных приложений от реверс‑инжиниринга. Мы в команде PT MAZE делаем «кнопку», которая превращает мобильные приложения в самый запутанный лабиринт для хакера.

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

Читать далее

Я отреверсил процессор, чтобы улучшить детскую фотокамеру

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

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

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

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

Поэтому я задумался: наверняка ведь есть способ пропустить меню и сразу перейти в режим камеры? Должно быть, внутри камеры находится какой-нибудь процессор ARM, и я не думаю, что разработчики заморочились с защитой кода. Достаточно считать его через JTAG, загрузить в Ghidra, найти нужный бит, изменить его, снова записать код во флэш-память, и всё.

Читать далее

Тайны Замка: Распаковка уровней Castle Excellent для NES

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

Загляните за кулисы NES-игры Castle Excellent! В этой статье — реверс-инжиниринг хранения данных. Я написал парсер, который собирает все комнаты замка в одну большую карту. Если Вам интересно, на что были способны программисты из 80-х — добро пожаловать под кат!

Читать далее

Взламываем 40-летний донгл защиты от копирования

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

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

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

Это ПО было написано на языке программирования RPG (Report Program Generator), который старше Кобола (!); он использовался в компьютерах IBM среднего ценового диапазона наподобие System/3, System/32 и вплоть до AS/400. Похоже, позже RPG портировали в MS-DOS, поэтому те же программные инструменты, написанные на RPG, могут работать на персональных компьютерах. Так фирма и оказалась в этой ситуации.

Эта бухгалтерская фирма работала на компьютере с Windows 98 (да, в 2026 году) и запускала написанное на RPG ПО в консольном окне DOS. Оказалось, что для работы ПО требовалось подключить к параллельному порту компьютера специальный аппаратный донгл защиты от копирования! В те времена это было достаточно распространённой практикой, особенно у поставщиков «корпоративного» ПО, защищавшего свои очень важные™ программы от неавторизованного применения.

Читать далее

Думал что дебаггер, а на деле HexEdit: Основы работы с опкодами и патчинга для начинающих

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

Привет Хабр, и всем читающим! Сегодня разберемся в патчинге, в отличиях между ним и дебаггингом, и поймем как пользоваться hex-редактором для реверс-инжиниринга. (И да, я когда писал статью, перепутал термины Debugger и Hex-editor, и только под конец понял что стоит статью изменить, прошу учитывать)

Дисклеймер важен, его пожалуйста прочитать обязательно!

Ну и приятного чтения, господа :-)

Начать Исследование

Пишем историю игрушки:  восстанавливаем исходный код игры «Поле Чудес» 1992 года для MS-DOS

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

Летом мне попалась статья Вадима Башурова «История игрушки» 2011 года про создание игры «Поле Чудес» в далёком 1992 году — очень рекомендую, если вы, как и я, ее пропустили. Вадим упомянул, что исходники, к большому сожалению, утерялись. Мне очень захотелось восстановить их хотя бы в каком‑то виде, и я решил заняться этим на досуге.

Цель простая: кросс-компилируемый 16-битный .exe для MS-DOS, который повторяет логику оригинала и использует оригинальные ресурсы.

Статью я построю как небольшой туториал по реверсу 16-битных DOS‑приложений для начинающих и пройдусь по ключевым алгоритмам и тому, как в игре реализован игровой процесс. Желательны базовые знания 16-битного ассемблера и C.

Читать далее

Разбор Urban VPN Proxy: как браузерное расширение превращается в перехватчик трафика и данных

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

Urban VPN Proxy — популярное браузерное расширение, позиционируемое как бесплатный VPN-сервис без логирования. Однако анализ JavaScript-кода, выполняемого расширением непосредственно в контексте страниц пользователя, показывает, что реальная функциональность продукта значительно шире и не ограничивается сетевым проксированием.

Читать далее

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

Небольшой подарок моддерскому коммьюнити от меня

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

Всем снова привет :-) Думаю многие читатели знают, что одно из моих хобби - реверс инжиниринг ретро телефонов, их хакинг и попытки впихнуть невпихуемое. Полгода назад в рамках серии статей я с нуля взломал неизвестный кнопочный телефон, отреверсил прошивку и написал для него бинлоадер (загрузчик нативных программ) и первую программу для него — игру змейку!

Читать далее

Рвём call-graph или «Как я самому себе реверс усложнял»

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

Так сложилось, что меня всегда интересовала тема реверса, дизассембла и вообще того, как выглядит бинарь изнутри, особенно с точки зрения всяких кряков. Многие пользовались разным софтом, в который уже встроены обходы лицензий, а кто-то, вполне возможно, даже вспомнит тот качевый музон, который воспроизводили всякого рода KeyGen.exe.

Но для того, чтобы крякнуть программу, нужно понять, что и где патчить, и какая функция отвечает за валидацию лицензии. Для этого и существуют программы вроде IDA Pro. Помимо дизассемблирования они умеют генерировать псевдокод на C, строить графы вызовов и много чего еще.

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

Читать далее

Растровый электронный микроскоп МРЭМ-100. Невымерший советский мамонт. Часть 1. Спячка

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

Рассказ об уникальном сохранившемся до наших дней и одном из самых технически продвинутом советском электронном микроскопе - растровом электронном микроскопе МРЭМ-100. Микроскопы этой модели производились Научно-техническим объединением «Экспериментальный завод научного приборостроения» г. Черноголовка. с 1986 по 1992 год. Подробное описание устройства и конструкции основанное на реальном приборе.

Читать далее

Снимаем защиту от модификации прошивки рабочей станции HP Z440/Z640/Z840

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

Здравствуй, читатель. За время моего почти десятилетнего отсутствия в мире x86 и UEFI довольно много воды утекло, и то, что раньше считалось интересными, но мало кому нужными настройками прошивки (к примеру, Above 4G Decoding и Resizable BAR) теперь считается фичами первой необходимости (без которых современные видеокарты Nvidia и AMD теряют в производительности, а карты Intel могут и вовсе не работать). При этом прогресс не превратил мощные старые системы в совсем уж полный хлам, и потому есть смысл научить этих старых псов новым трюкам, если это возможно.

Читать далее

Спасаем Бингус, и как я поправил ИИ помощника. Мануал для новичков

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

Ещё одна очередная задачка! На этот раз нам предстоит спасти нашего друга! Bingus'а! Давайте же спасём его!

А ещё посмотрим на то как ИИ к сожалению, не смогла помочь нам.

Спасти Bingus

Make DLL Hijacking Great Again

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

DLL hijacking - техника, которая может дать множество преимуществ: повыситься до NT AUTHORITY/SYSTEM, получить исполнение от лица привилегированного пользователя, действовать от лица легитимного приложения и т. д.

Естественно, перед тем как ее осуществить, нужно найти подходящее приложение и библиотеку, которую можно подменить.

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

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

Читать далее

Вакуумная удерживающая оснастка для металлообработки

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

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

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

Читать далее
1
23 ...