Рубрика «реверс-инжиниринг» - 17

Обратная разработка аналоговой видеокамеры - 1

Ранее на Хабре я публиковал статьи, связанные с системой аналогового видеонаблюдения. В частности, были статьи, связанные с изучением файловой системы HDD видеорегистратора (DVR). В данной статье речь пойдёт про обзор навороченной аналоговой видеокамеры модели Evidence EVR-Y2022F с точки зрения пользователя и подробное изучение её устройства с инженерной точки зрения.

В настоящее время чаще применяется современная система видеонаблюдения на базе сетевых IP камер и соответствующего видеорегистратора. Однако, прежде всего, за счёт невысокой цены, аналоговая система видеонаблюдения всё ещё остаётся актуальной. Существует множество аналоговых видеокамер. Помимо характеристик качества изображения, есть ряд других характеристик, в частности, наличие интерфейса PTZ. Данный интерфейс позволяет управлять видеокамерой по линии RS-485 по протоколу PELCO-D с помощью DVR. Это, как правило, купольные камеры, которые можно вращать, изменяя ракурс видео. Реже встречаются камеры с интерфейсом PTZ, которые поддерживают управление оптическим зумом и фокусировкой (фокусом). Именно о такой камере пойдёт речь в данной статье.
Читать полностью »

Если вы пользуетесь блокировщиками рекламы, то могли встречать BlockAdBlock. Этот скрипт обнаруживает ваш блокировщик и не пускает на сайт, пока вы его не отключите. Но мне стало интересно, как он работает. Как антиблокировщик обнаруживает блокировщики? А как на это реагируют блокировщики и как они блокируют антиблокировщики?

История реверс-инжиниринга

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

Это натолкнуло меня на мысль о версиях. А что, если мог посмотреть не на одну версию, а на все сразу? Так я и сделал. Я вернулся назад во времени с помощью Wayback Machine. После этого скачал все версии BlockAdBlock и хэшировал их.
Читать полностью »

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

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

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

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

Мне потребовалось несколько раз, чтобы получить полностью устраивающую меня трассировку ETW. И поскольку эта территория была для меня незнакомой, на выяснение происходящего потребовалось какое-то время. Я по-прежнему не полностью разобрался в проблеме, но на 90% понял причины её возникновения. Мне удалось многое узнать, в том числе некоторые новые подробности о Windows-планировщике, а также я обнаружил абсолютно эффективное решение.

Идеальная трассировка, которую я в конце концов записал, при загрузке в Microsoft Windows Performance Analyzer (WPA) выглядит так:

Расследование: что выше, чем приоритеты потоков в Windows? - 1

Стандартные события, окна в фокусе и использование ЦП

Эта таблица и два графика содержат кучу информации. Верхняя таблица (Generic Events) показывает записанные UIforETW нажатия клавиш. Я пытался нажимать клавишу (код виртуальной клавиши 162) раз в секунду, пока не появится поле ввода пароля. Так как эти 17 нажатий клавиши выбраны, в графике ниже они показаны вертикальными синими линиями для упрощённой визуализации времени выполнения критически важных событий. По оси x отложено время в секундах.
Читать полностью »

Чтобы предотвратить снижение IQ во время самоизоляции, возникло желание сделать что-то полезное для себя, а если повезет — не только. Нарезая n-ый круг по квартире, мой взгляд зацепился за автомобильный сканер, который я брал у знакомого для дальнейшего изучения, а именно Lexia 3, он же Actia XS Evolution. Вот такой:
image
Его огромным минусом было то, что работать с ним может только софт DiagBox, предназначенный для диагностики автомобилей марки Peugeout/Citroen. С последним мириться было нельзя (с), поэтому возникла мысль, а что если этот сканер заставить отправлять и получать произвольные сообщения в CAN-шину автомобиля, тем самым превратив его в универсальный адаптер.
Читать полностью »

О новой IDA Home (обзор) - 1

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

На днях товарищи из Hex-Rays анонсировали новую IDA Home, которая как IDA Starter, только под одну конкретную платформу (против более чем 20-ти), с локальным отладчиком и поддержкой x64, скриптингом на Python и стоит 365$ в год (против $979). Далее был запущен конкурс на лучший рисунок логотип для новой IDA, за который автор лучшей работы получит Home-версию бесплатно.

В данном "обзоре" я хотел бы пристальнее рассмотреть, что же из себя представляет новая версия продукта, постараюсь разобраться на кого же она была ориентирована (центральная аудитория), и сделать некоторые выводы.Читать полностью »

Преамбула

image

"Человеческий мозг это пустой чердак. Дурак так и делает: тащит туда нужное и не нужное. И наконец наступает момент, когда самую необходимую вещь туда не запихнешь, или наоборот не достанешь..."

В.Б. Ливанов (из к/ф "Шерлок Холмс и доктор Ватсон")

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

Читать полностью »

Поделюсь с вами одной историей. Около двадцати лет назад я получил степень по физике, но занимался реверс-инжинирингом и криптоанализом. Наша компания AccessData работала в конце 90-х и начале 2000-х. Тогда правительство США постепенно снимало ограничения на экспорт криптографии, однако парольная защита в большинстве программ по-прежнему оставалась довольно бесполезной. Мы брали офисные программы, я проводил реверс-инжиниринг и выяснял алгоритм шифрования, а потом ломал криптозащиту.

Это был нескончаемый поток интересных, но не особенно сложных математических головоломок. За всё время я написал около сорока взломщиков паролей. Мы продавали их домашним пользователям, системным администраторам, местным и федеральным правоохранительным органам. Мне пришлось несколько раз съездить в федеральный центр подготовки сотрудников правоохранительных органов в Глинко, чтобы объяснить ребятам из Секретной службы, ФБР и АТФ основы криптографии и как использовать наши продукты.

Особенно ярко мне запомнились два проекта. Первым был Microsoft Word 97. До его появления файлы шифровались с помощью XOR байтов открытого текста и 16-байтовой строки, которая выводилась из пароля. Самыми распространёнными байтами в файле Word обычно были 0x00, 0xFF или 0x20 (пробел), поэтому мы просто выбирали самый распространённый символ в каждом столбце и проверяли 316 вариантов. Восстановление ключа обычно происходило мгновенно, но чтобы людям не казалось, что они зря потратили деньги, мы вставили небольшую анимацию, похожую на голливудскую хакерскую сцену с множеством случайных символов, из которых постепенно проявляется правильный пароль.
Читать полностью »

Защита и взлом Xbox 360 (Часть 2) - 1

В прошлый раз мы оставили сцену Xbox 360 на моменте, когда разработчикам стало очевидно, что защита DVD-ROM легко обходится, и с этим точно нужно что-то делать. Попытки исправить ситуацию обновлением ПО самой приставки не увенчались успехом, и на поле битвы вступила компания Philips & Lite-On, DVD-приводы которой с каждой новой моделью становились всё более продвинутыми в плане защиты. Но и методы взлома с каждым разом становились всё более и более изощрёнными. В этой части я расскажу, как в Microsoft пытались исправить ситуацию с нелицензионными дисками, и до каких методов прошивки DVD-привода можно докатиться, когда закрыто буквально всё.
Читать полностью »

Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства - 1

Мы так близки к созданию эмулятора, способного идеально воссоздавать все функции реального железа и ПО SNES.

В течение последних 15 лет как кодер эмулятора bsnes я пытался довести до совершенства эмуляцию Super Nintendo, но теперь мы столкнулись с последней проблемой: точным таймингом тактов видеопроцессоров SNES. Чтобы достичь этого завершающего этапа точности эмуляции, требуется помощь всего сообщества, и я надеюсь на вашу поддержку. Но для начала я расскажу, чего мы уже добились.

Текущее состояние

Сегодня ситуация с эмуляцией SNES очень хороша. Если не считать необычные периферийные устройства, которые сопротивляются эмуляции (например, клюшка для гольфа с датчиком света, велосипедный тренажёр и dial-up-модем, который в Японии использовали для ставок на конных скачкахJapan), все официально лицензированные игры для SNES полностью играбельны, и ни в одной игре нет очевидных проблем.

Эмуляция SNES стала такой точной, что мне даже пришлось разделить эмулятор на две версии: higan, которая стремится к абсолютной точности и соответствию документации железа, и bsnes, которая стремится к скорости, широким возможностям и простоте использования.
Читать полностью »

После прочтения поста Krupnikas возникла мысль разобраться с mitmproxy и посмотреть как устроен бэкенд ежедневно используемых мобильных приложений. Выбор пал на приложение домофон. После авторизации оно позволяет открывать двери и отвечать на видеозвонки. Что из этого вышло и какие дырки мне удалось найти расскажу под катом.

Сим-сим откройся или реверс инжиниринг умного домофона - 1

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js