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

CTF от компании «Доктор Веб»: раскройте свой потенциал

Время на прочтение 1 мин
Количество просмотров 1K
Блог компании Доктор Веб Реверс-инжиниринг *CTF *

Компания «Доктор Веб» приглашает всех желающих к участию в нашем CTF-марафоне, который пройдет в онлайн-режиме: он стартует с 0:00 субботы 4 марта и завершится в 23:59 пятницы 17 марта. В рамках мероприятия участникам предстоит решить задачи по реверс-инжинирингу и анализу файлов. Мы предложим 25 заданий с 5 уровням сложности.

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

Защита программного обеспечения: Основные ошибки при программировании блока регистрации программы (или один бит может изменить мир)

Время на прочтение 4 мин
Количество просмотров 4.3K
Чулан
Для того чтобы написать хорошую программу, как правило, требуется от программиста много времени и сил. Большинство программистов даже не представляют себе насколько просто их программы могут быть взломаны. Стандартное время, необходимое для взлома программы с ошибками в защите блока проверки легальности пользователя обычно не превышает 5 минут. В своих статьях я хочу рассказать об основных недочетах, которые допускают программисты в блоках регистрации приложений. Для этого я написал небольшую программу, на которой постараюсь показать насколько легко можно обойти участок кода, отвечающий за проверку легальности копии программного обеспечения. Если данная тема будет интересна читателям, она найдет продолжение в последующих публикациях.

Читать дальше →
Всего голосов 39: ↑27 и ↓12 +15
Комментарии 71

Кодогенерация на основе UML-модели

Время на прочтение 3 мин
Количество просмотров 28K
.NET *UML Design *
Как нам уже известно, Visual Studio 2010 Ultimate предоставляет достаточно удобные возможности для реверс-инжиниринга. С помощью средств Visual Studio мы можем на основе существующего кода построить UML-модель и понять как у нас, собственно, все работает, но при этом не прилагать гигантские усилия по созданию диаграмм вручную и поддержанию их в актуальном состоянии.

Все бы хорошо, но у данного инструмента напрочь отсутствует возможность синхронизации модель с кодом. Т.е., после изменения модели, нам приходится вручную изменять классы. В случае большого количества мелких изменений, получается довольно неудобно, и по этой причине от полноценного моделирования частенько отказываются.
Далее - трафик
Всего голосов 44: ↑36 и ↓8 +28
Комментарии 21

Учимся считать в hex, или реверс-инженеринг будильника

Время на прочтение 13 мин
Количество просмотров 52K
Разработка под Android *

Введение


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

Под катом вы найдете описание инструментов, процесса и результата перевода примера в hex. А также объяснение синтаксиса smali кода (язык опкодов для виртуальной машины dalvik). Картинок почти нет, буков много.
Читать дальше →
Всего голосов 77: ↑74 и ↓3 +71
Комментарии 20

Loopdetect своими руками

Время на прочтение 5 мин
Количество просмотров 90K
Сетевые технологии *
Из песочницы
Суть проблемы

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

Помимо настоящих петель не редки случаи когда при выгорания порта (коммутатора или сетевой карты) он начинает возвращать полученные пакеты назад в сеть, при этом чаще всего соединение согласовывается в 10M, а линк поднимается даже при отключенном кабеле. Когда в сегменте такой порт только один, последствия могут быть не столь плачевными, но всё же весьма чувствительны (особенно сильно страдают пользователи висты и семёрки). В любом случае с такими вещами нужно нещадно бороться и понимать тот факт, что намеренно или случайно создавая петлю, пусть и на небольшой период времени, можно отключить целый сегмент сети.
Читать дальше →
Всего голосов 45: ↑41 и ↓4 +37
Комментарии 72

Почувствуй себя вирусным аналитиком

Время на прочтение 1 мин
Количество просмотров 11K
Блог компании ESET NOD32
Все, все, все хабролюди!

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

image

Из недр вирусной лаборатории ESET мы достали секретное задание для самых увлеченных исследователей, которые смогут проверить свои знания по реверсингу и не только.
Читать дальше →
Всего голосов 26: ↑21 и ↓5 +16
Комментарии 24

KeygenME PWNED

Время на прочтение 1 мин
Количество просмотров 9.4K
Блог компании ESET NOD32
Наш конкурс на взлом KeygenME завершен, и пришло время подводить итоги.

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

image
Читать дальше →
Всего голосов 21: ↑16 и ↓5 +11
Комментарии 11

Вирусный анализ для начинающих — анализируем Virus.Win32.MTV

Время на прочтение 3 мин
Количество просмотров 16K
Антивирусная защита *
Я, наконец, нашел время не просто на анализ вредоносного ПО, но и на написание ещё одной статьи на эту тему. Начнём, пожалуй. Сегодня мы будем анализировать вирус Virus.Win32.MTV.4608.a, обнаруженный ещё в 2000 году. Пусть дата обнаружения вируса Вас не смущает – никогда не помешает анализ вируса даже такой давности. Взять его можно на vx.netlux.org.

Требуемые инструменты: любой дизассемблер или отладчик на ваш выбор.
Читать дальше →
Всего голосов 49: ↑46 и ↓3 +43
Комментарии 29

Diamond Dash, или как не надо защищать свои online приложения

Время на прочтение 5 мин
Количество просмотров 2.6K
Информационная безопасность *
Я не люблю играть и игры. Но меня всегда интересовало, как они работают и какие уязвимости имеют, что передают на сервер. Уже раньше на хабре были статьи на тему уязвимостей игры Diamond Dash,
И снова Diamond Dash
Написание макроса-бота для браузерной игры

Меня тоже заинтересовала эта игра, решил в ней разобраться.
Забегая вперед скажу, что в итоге исследования игры был написан скрипт, который может поднять рейтинг для любого(!!!) человека и игре, и для этого достаточно знать id этого человека в facebook.
Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 5

Skype 5.5 расшифрован для реверс-инженеринга

Время на прочтение 1 мин
Количество просмотров 1.4K
Мессенджеры *
image
25 марта был опубликован расшифрованный бинарный файл Skype v. 5.5. Теперь появилась возможность запускать Skype в отладчике, чего нельзя было делать раньше, так как оригинальная версия сильно обфусцирована и имела защиту от отладки. Цель проекта — создать Skype с открытым исходным кодом.

Сообщение об этом появилось в блоге Ефима Бушманова, который год назад расшифровал протокол Skype версии 1.x/3.x/4.x и опубликовал рабочую версию программы.
Читать дальше →
Всего голосов 100: ↑97 и ↓3 +94
Комментарии 123

Началась регистрация на онлайн-конкурсы PHDays 2012

Время на прочтение 4 мин
Количество просмотров 3.6K
Блог компании Positive Technologies Информационная безопасность *

Завершились конкурсы, в которых разыгрывались инвайты на форум Positive Hack Days 2012. Победители получили свои приглашения, и уже совсем скоро мы встретимся с ними на площадке московского техноцентра Digital October. Если вы не успели принять участие в этих соревнованиях или не смогли добиться победы — у вас есть шанс выиграть кучу призов в ходе онлайн-сражений, которые начнутся одновременно со стартом форума (регистрация доступна в личном кабинете пользователя на сайте PHDays). Под катом описание конкурсов и условия участия.
Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 2

Простой способ модификации Android приложения

Время на прочтение 3 мин
Количество просмотров 55K
Java *Разработка под Android *
Из песочницы
Бывает после релиза приложения его исходники куда-то деваются. Правда ведь, такое постоянно случается? И ничего не остается кроме как декомпилировать его и подправить несколько сотен строк кода и все это нужно сделать максимально быстро.

Вот и у меня появилась задача модифицировать приложение имея всего лишь его apk. И те, кто занимался декомпиляцией приложений знают насколько тяжело его потом скомпилировать.
Читать дальше →
Всего голосов 32: ↑28 и ↓4 +24
Комментарии 14

Реверс-инжинеринг и написание бота для flash игры на Go

Время на прочтение 19 мин
Количество просмотров 9.4K
Adobe Flash Go *Реверс-инжиниринг *
image В этой статье я расскажу, как декомпилировать flash-приложение с последующим извлечением алгоритма подписи запросов на игровой сервер. И как на основе этой информации написать игрового бота на Go.
Все началось с того, что я искал стратегию, чтобы поиграть со своего android смартфона. Нашел неплохую игру под названием «Throne rush». Потом оказалось, что есть и браузерный клиент, что делает удобнее некоторые действия. Но все же игровой процесс явно требовал автоматизации. Я воспользовался прекрасным инструментом JPEXS Free Flash Decompiler, о котором далее пойдет речь.
Читать дальше →
Рейтинг 0
Комментарии 6

Самомодифицирующийся код

Время на прочтение 12 мин
Количество просмотров 28K
Ненормальное программирование *C++ *Системное программирование *
Туториал
Перевод
В статье подробно рассказано о самомодифицирующимся коде (СМК), и о том, как его использовать в своих программах. Примеры написаны на C++ с использованием встроенного ассемблера. Ещё я расскажу о том, как выполнять код на стеке, что является существенным козырем при написании и выполнении СМК.



1. Вступление


Ну что ж, поехали. Статья обещает быть длинной, так как мне хочется написать её такой, чтобы у вас не возникло никаких вопросов. На тему СМК уже существует миллион статей, но здесь представлено моё видение проблемы – после сотен часов написания СМК… Я попытаюсь впихнуть все свои труды сюда. Всё, хватайте томатный сок (или что вы там предпочитаете пить), делайте музыку громче и готовьтесь узнать, как избавить своё приложение от начинающих кракеров! Попутно, я расскажу вам о памяти Windows и некоторых других вещах, о которых вы даже и не подозреваете.
Читать дальше →
Всего голосов 15: ↑10 и ↓5 +5
Комментарии 12

Использование потолочных часов в качестве информационного табло

Время на прочтение 6 мин
Количество просмотров 8.9K
Реверс-инжиниринг *
Из песочницы

Преамбула


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


Сначала мы пытались перенастроить часы (подправить время и сменить отображаемые города), но не смогли этого сделать – на потолке висела монолитная алюминиевая коробка без каких-либо органов управления. В последствие часы были обесточены и остались висеть без признаков жизни. Спустя два года загорелись идеей воскресить часы и использовать их как нечто большее.


Потолочные часы

Читать дальше →
Всего голосов 20: ↑19 и ↓1 +18
Комментарии 8

История взлома классической игры на Dendy или Contra со спрэдганом в начале

Время на прочтение 6 мин
Количество просмотров 9.2K
Assembler *Игры и игровые консоли
Туториал

Раз уж прошлая моя статья, к моему большому удивлению, вас заинтересовала. Я решил дополнить её результат, хакнутую версию игры "Contra (J) [T+Rus_Chronix]", небольшим функционалом, заодно показав "code injection" на NES. В этот раз я сделаю так, чтоб игроки начинали игру с прокачанным Spreadgun, для его получения в игре нужно подобрать иконку "S", а за ней "R".



Все заинтересовавшиеся welcome под кат.

Всего голосов 30: ↑27 и ↓3 +24
Комментарии 9

Укрощение Горыныча 2, или Символьное исполнение в Ghidra

Время на прочтение 8 мин
Количество просмотров 4.1K
Блог компании Digital Security Информационная безопасность *Реверс-инжиниринг *


С удовольствием и даже гордостью публикуем эту статью. Во-первых, потому что автор — участница нашей программы Summ3r of h4ck, Nalen98. А во-вторых, потому что это исследовательская работа с продолжением, что вдвойне интереснее. Ссылка на первую часть.


Добрый день!


Прошлогодняя стажировка в Digital Security не оставила меня равнодушной к компании и новым исследованиям, так что в этом году я взялась поработать над проектом так же охотно. Темой летней стажировки «Summer of Hack 2020» для меня стала «Символьное исполнение в Ghidra». Нужно было изучить существующие движки символьного исполнения, выбрать один из них и реализовать его в интерфейсе Ghidra. Казалось бы, зачем, ведь в основном движки представляют собой самостоятельные решения? Этот вопрос будет возникать до тех пор, пока не попробовать то, что автоматизирует действия и сделает их наглядными. Это и стало целью разработки.


Статья в какой-то степени является еще и продолжением статьи моего наставника, Андрея Акимова, о решении Kao’s Toy Project с Triton. Только сейчас нам не придется писать ни строчки кода – решить крякми можно будет практически двумя кликами.


Итак, начнем по порядку.

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

Once upon a time in Wasmwood или Как я реверсил игру на WASM

Время на прочтение 7 мин
Количество просмотров 2.9K
Реверс-инжиниринг *WebAssembly *
Из песочницы

Прошел уже месяц с того момента, как я попытал счастья в решении челленджа по реверсу WASM игры на платформе root-me.

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