Троян в мозгах Flash. Учим флешку мыслить по-хакерскиВадим «Doctor V_m_E_n» Даньшин (yurik_yurok2@mail.ru) Частенько бывает необходимо увести информацию у владельца ноутбука, компьютера или сервера, не вызывая лишних подозрений... И у тебя нет возможности сломать компьютер по сети, равно как и отсутствует физический доступ к нему. Именно в таких случаях пригодится сообщник, который всегда поможет тебе выполнить задуманное, независимо от сложившейся ситуации. Я подарю тебе такого сообщника. Однажды вечером я сидел дома, почитывая за кружкой кофе очередной номер журнала «Хакер», и вдруг наткнулся на статью про попытки взлома U3 флешки и софта под нее. Статья меня сильно заинтересовала тем, что флешка была не простая, а буквально золотая. И простор для хакерской деятельности на ней просто безграничен. Уже через день я приступил к опытам и изучению этого интереснейшего оборудования. Как оказалось, в самой системе таких флешек существовала уязвимость, которая потенциально позволяла взломщику сделать инъект в содержимое защищенного раздела флешки и заставить это содержимое исполняться на компьютере жертвы. К слову сказать, Большой Брат тоже не спит, поэтому все флешки такого типа перестали попадать к нам на прилавки уже через 2 недели. Сейчас их нет ни в одном магазине города. Но заказать такой U3-шный флеш-диск на 4 гига в инете нет никаких проблем! Порывшись в Сети, я не нашел никаких постов по этой теме и начал сам ковырять флешку, а именно – пробовал ее скопировать, разбить, переформатировать, изменить загрузочную область... В итоге, все мои попытки были обречены на провал, пока мне в руки не попал замечательный патч от Kingston, в задачи которого входила перепрошивка моей флешки для совместимости с Vista. И именно с его изучения началось самое интересное. Подарок хакеру – патч от разработчикаИтак, у нас есть неизвестное приложение. При запуске оно опрашивает носитель, копирует данные с него к нам в комп, а после перепрошивки возвращает все по местам. Сопровождается этот праздник жизни всевозможными глюками и красивыми окошками, которые просто и незатейливо информируют юзера, что ему следует делать дальше. Пристальное внимание я обратил на сам исполняемый файл. Он заставил меня улыбнуться. Это незащищенное Winrar-приложение, имеющее тип самораспаковывающегося архива, в котором было необычное содержимое. Весь взлом состоял в распаковке и правке нужных ini-файлов блокнотом. Чем дальше я изучал их систему обновлений, тем больше мне это напоминало приколы из серии «почувствуй себя кул-хакером». В архиве лежали интерфейс обновлялки, функционал, который получал доступ к защищенному диску и iso-образы – соответственно, для защищенного диска, пустой перегородки между дисками и пустой рабочей части. Как принято в компании Kingston, все должно быть доступно для взлома, а это значило, что уже через 10 минут ковыряния в блокноте я создал корректный файл автозапуска для защищенного диска. Он направлял выполнение кода сначала на мой обработчик, а затем уже на файлы LaunchU3-обработчика и так далее. Теперь пора поговорить об обработчике и исполняемом коде, определить концепции развития и общую структуру построения. В качестве языка для написания системы я выбрал командную строку Win32. Сделал я это по целому ряду причин, в числе которых простота изучения этого языка и легковесность готовых исполняемых bat-файлов. Непристойные запросы командной строкиПрежде чем мы полезем в дебри, давай рассмотрим основные приколы командного языка и методы обхода тех или иных ограничений. Первая проблема, которая долго сотрясала мой мозг - это обращение к русскоязычным путям в проводнике из пакетного файла. Если, допустим, с консоли ввести:
– то на диске действительно создастся указанная выше папка, но в нашем случае нужен пакетный файл. Следовательно, вместо желаемого результата, мы получим какую-то кракозябру не неизвестном языке. Но все будет прекрасно работать, если ты пропишешь кодировку 1251.
Скажу пару слов об использования вывод строки в своих целях. Допустим, ты работаешь с окном командной строки, и тебе надо получить число из ответа команды. Попробуем написать программу, которая мониторит связь с компьютером по сети и в случае обрыва что-то выполнит:
В этом коде используются поисковые запросы, выполненные в кириллических символах. Они всенепременно исказятся в какую-то внутреннюю кодировку командной строки. Чтобы это обойти, выдели нужное тебе слово для поиска в окне командной строки исполняющегося пакетного файла правой кнопкой мыши и вставь в блокнот. Это может быть буква, строка и прочие символы, за исключением управляющих символов командной строки вроде скобок. Но даже в этом случае ты можешь использовать синтаксис циклов FOR, которым наплевать на содержимое их переменных, или просто скопировать заранее заготовленные спецсимволы из другого файла. Как пример, ищи на DVD мою систему пересоздания плейлистов, для построения которых мне необходимо пользоваться тем, что командная строка не переносит в принципе! Также, из-за чрезмерной обширности вопроса, могу лишь упомянуть о возможности запуска скриптов как в режиме ожидания окончания предыдущего, так и в многопоточном режиме. Нет никаких проблем написания таких программ, которые при выполнении программировали бы свое потомство, притом, далеко не по линейным алгоритмам. Нет проблем и с математикой, матрицами и прочими полезными вкусностями. Даже базу данных состряпать в ней можно без труда, хотя не без геморроя. Всегда к твоим услугам справка Windows по командной строке и моя почта. Я буду только рад вопросам, потому что хочу расширить доступный мне функционал командной строки ее же средствами. Считаю использование этого языка хорошим подспорьем для затруднения отладки, как отдельных программ, так и всей системы в целом. В свое время я писал большой проект, на который неоднократно покушались другие программисты, но все они, в итоге, нервно курили в сторонке, так и не поняв сути моих скриптов. Создаем свой искусственный флеш-интеллектНа руках у нас – вызов на исполнение защищенного файла, который поступил от приложения с защищенного раздела. Сначала мы определим букву диска, на который подключилась наша флешка, и откуда ей суждено работать. Я сделал это, используя обычные IF’ы и передал их параметром в пакетный файл, находящийся на основном разделе диска «JUMPER.BAT». В нем я определил режим работы и тактику поведения. Соответственно, я могу или вызвать атакующий модуль, или же, например открыть режим хозяина-владельца флешки, в котором играет музыка, запускается аська и копируются логи со взломанных машин прямо на мой рабочий стол! Допустим, что флешка попала в лапы негодяя. Предлагаю рассматривать лишь некоторые моменты файла «WARBOT.bat», например, его начальные настройки:
Отдельно хотелось бы рассказать об атаке на гостя, которая является гвоздем нашей программы.
Об удобствах не забываемНу, хорошо, мы в какой-то степени удовлетворили наши запросы по взлому, но помимо всего прочего, моя система обладает массой приятных фенечек и фишек, таких, как автоматизированный вход в аську. На диске ты с легкостью должен найти файл «pqp.bat». Именно он управляет вводом пароля. Этот скрипт просматривает свое тело и последовательно осуществляет клавиатурный ввод односимвольных комментариев в тексте программы. Если раскидать по этому файлу комментарии таким образом: – то на выходе мы получим пароль «V133kgrs». В итоге, пасс хранится в нестандартном виде и не требует при вводе нашего участия.
По сути, это глобальные переменные твоей операционной системы, которые восстанавливаются при каждом входе в нее. Пользуйся на здоровье. Глюки, выявленные тестированиемИзначально система писалась под WindowsXP Home, но после ее тестирования на WindowsXP Pro выявились некоторые глюки. Например, система долго и исправно работала на всех компах, пока со мной и моим товарищем не случилась следующая история. Однажды майским днем нам выпала возможность попасть в другой корпус родного университета и получить доступ к компьютеру, через который так или иначе проходят все методички, дипломные работы и вкусности, на которых можно было бы неплохо навариться. Придя в корпус, я передал приятелю флешку, после чего мы пошли «на дело». Сначала меня, как сейчас помню, немного озадачила надпись Windows2000 на экране монитора, но уже через мгновение флешка весело и бодро мигала своей лампочкой в гнезде USB. Флешка не захотела атаковать компьютер, и я, недолго думая, врубил принудительную атаку. Время шло, флешка работала, а мы выполняли собственно то, зачем нас направили в этот отдел. После окончания работы мы с нетерпением вернулись в родные корпуса. О да! Флешка сработала чудесно! По сети мы проникли в одну из самых защищенных машин и с кайфом вглядывались в действительно интересные фотографии сотрудниц отдела. И так продолжалось до самого обрыва связи. «Ну, ничего – завтра все скопируем», - сказал я товарищу, и мы пошли по домам. На следующее утро моего друга подняли по тревоге – надо было срочно явиться в тот отдел, чтобы подправить какие-то поля. Почуяв неладное, мы подключились к вузовской сети и стали пытаться зайти на тот компьютер. Нас ждал облом – компьютер пинговался, но не отвечал. Сильно озадаченные мы пошли в другой корпус. Придя, мы наблюдали следующую картину: компьютер, возле него несколько человек. Они смотрели на нас глазами маньяков, которые давно никого не убивали. На все последующие вопросы мы сделали лица кирпичом и стали нести ну просто полную ахинею про интернет, его развитие и вирусы. Нас выслушали и поверили. Когда мы спросили, а что же случилось, нам рассказали, что у машины внезапно слетели все пароли. Они вызвали местного сисадмина, который добрых три часа возился с табличкой ввода пароля, и, видимо, совсем отчаявшись, наугад ввел имя пользователя «Гость» и нажал «Enter». Система неожиданно порадовала его не только успешным входом, но и админскими полномочиями в придачу. Вот такие пироги. Обсудим итогиМы получили, своего рода платформу, которая будет отлично работать не только на твоей машине, но и где-то там, в чужой квартире, похищая нужные тебе данные. И неважно, кто ты, мой читатель, у тебя всегда найдутся вопросы и задачи, с которыми могла бы справиться моя система. Допустим, ты студент-раздолбай; тогда флешка поможет тебе достать не только курсовые у твоего препода, но и чертежи и прочую хрень, которая поставляется в комплекте с курсачом. Если ты уже поимел всю сеть вуза и помогаешь сотрудникам через Radmin раскладывать пасьянс, то можешь пойти прогуляться до ближайшего салона сотовой связи. Есть шанс заполучить в свои мохнатые руки их платежных клиентов – выгоду оценивай сам. Если тебе и этого мало, то хочу отметить целый ряд ситуаций, когда, не дай Бог, сотрудник Сбербанка согласится принять с твоей флешки отсканированный тобой чек. Более того, сейчас все на каждом углу в ужасе кричат от эпидемии вируса Conficker, а чем ты хуже? Неужели, имея в своем распоряжении такой мощный инструмент, ты не в состоянии написать свой тренировочный ботнет? Одним словом - срочно беги искать флеш-диск U3шного типа. Впрочем, если немного позаниматься мазохизмом, сойдет любая флешка. WWWЭто адреса интернет-магазинов, где продаются подобные флешки. Есть экземпляры на 1, 2, 4 и вроде бы даже на 16 гигов!
А на ixbt.com/storage/flashdrives-p17.shtml производился интересный тест-обзор флешек, в числе который оказалась и U3. Warning!Внимание! Информация представлена исключительно с целью ознакомления! Ни автор, ни редакция за твои действия ответственности не несут! DVDНа диске тебя ожидает моя мега-система, а также все необходимые материалы, касающиеся всех аспектов разработки подобных приложений, скриптования под Win32 и прочие вкусности, описанные в статье. Тебе остается лишь взять и уложить предоставленный материал по папочкам. |