Как сокрушают протекторы Крис Касперски Хакер, номер #092, стр. 092-102-4 КОД Подбор пароля методом bruteforce # ./burncrack -f /usr/stuff/burneye-1.0/burneye # /usr/stuff/john-1.6/run/john -stdout:63 -i | ./burncrack -i # ./burncrack -p accept -d unwrapped # chmod a+x unwrapped # ./unwrapped Распаковка: когда борьба с Byrneye всех хакеров окончательно достала, ByteRage написал утилиту burneye unwrapper для автоматического снятия протектора и представляющую собой LKM-модуль (загружаемый модуль ядра), бесплатно распространяемый в исходных текстах (впрочем, называть «исходными текстами» крошечную Си-программу можно только с большой натяжкой): byterage.hackaholic.org/source/burndump.c. Предполагается, что либо программа не защищена паролем, либо он нам уже известен (или подобран вышеописанной утилитой). Привязка к оборудованию убирается в любом случае. Компилируем: «gcc -c burndump.c» (на некоторых системах необходимо явно указать подключаемые заголовочные файлы «gcc -c -I/usr/src/linux/include burndump.c»), заходим в систему под root'ом и начинаем взлом, потягивая свежее пиво: КОД Освобождение файла от протектора Burneye ; загружаем LKM-модуль в память, теперь дампер будет висеть резидентно, отслеживая запуск всех программ, и ловить из них те, которые обработаны Burneye $ insmod burndump ; запускаем программу, защищенную Burneye, дампер дожидается, когда Burneye завершит расшифровку, и сохраняет распакованную программу в файл ./burnout $ ./file_name ; запускаем распакованную программу, чтобы убедиться в ее работоспособности $ ./burnout ; выгружаем LKM-модуль из памяти $ rmmod burndump Shiva Происхождение: весьма амбициозный протектор, созданный двумя гуру Neel Mehta и Shaun Clowes и неоднократно демонстрируемый ими на конференциях Black Hat. Исходные тексты не разглашаются (как будто там есть, что скрывать!), а сам бинарник можно скачать как с сайта разработчиков: www.securereality.com.au/archives/shiva-0.95.tar.gz, так и с сервера Black Hat: blackhat.com/presentations/bh-usa-03/bh-us-03-mehta/bh-us-03-shiva-0.96.tar, причем версия с Black Hat'а посвежее будет, что наводит на определенные размышления. Описание: протектор поддерживает парольную защиту (правда, без привязки к оборудованию), реализует мощную антиотладку, многоуровневую динамическую шифровку с порождением дочернего отладочного процесса, эмуляцию некоторых процессорных инструкций... В общем, получился почти что Armadillo, только под Linux. Но если Armadillo хоть как-то работает, то Shiva на всех доступных мне системах выпадет в Segmentation fault. Тестирование проводилось на Knoppix с ядрами 2.6.7/2.4.7 и Suse c ядром 2.6.8 (как под VMWare, так и на живой машине). Распаковка: морской волк Chris Eagle создал бесплатно распространяемый автоматический распаковщик, позволяющий любому желающему положить Shiva на лопатки: www.blackhat.com/presentations/bh-federal-03/bh-federal-03-eagle/bh-federal-03-eagle.zip. После разархивации мы найдем мультимедийную презентацию bh-federal-03-eagle.ppt с объяснением принципов работы протектора, пару idc-скриптов для упрощения дизассемблирования защищенных файлов в IDA Pro и еще один архив stripshiva.tar.gz, содержащий исходный код автоматического распаковщика. |