- [Duke's Virus Labs #6] - [Page 25] - Вирусы как супер оружие (c) by Duke/SMF Время от времени вспыхивают разговоры о том, что нельзя ли заставить вирусы выполнять полезную работу. Например, паковать файлы или очищать место на винте. И я в подобных разговорах всегда склоняюсь в пользу того, что МОЖНО. Вот только смотря для кого эта работа будет полезной... Хочу рассказать о вынашиваемой мной идее полезного вируса. Только сразу скажу - полезного для ХАКЕРА вируса... Всем и каждому, занятому с вфере компьютерной безопасности, известно о наличии криптостойких алгоритмов (например DES, или та же программа PGP). Подобные вещи часто используются в программах типа CrackMe или при защите программных продуктов - пароль нельзя найти в программе, его можно вычислить только методом перебора, но количество комбинаций настолько велико, что за такую задачу никто не берется. Такие пароли можно перебирать годами на новейших компьютерах, и никто не добъется результата. А что если объединить усилия нескольких компьютеров, нескольких сотен компьютеров, тысяч компьютеров ??? В современном мире, при интеграции глобальных сетей это становится возможным. Не так давно была предпринята потытка взлома PGP ключа с использованием компьютеров тысяч добровольцев - было обещано, что хозяин машины, которая подберет пароль, получит неплохую премию в USD. А совсем недавно русский кракер AkKort/SOS взломал CrackMe-2 группы UCF использовав несколько сотен компьютеров по всей России. Практика подтверждает самые смелые надежды и предположения. Но найти добровольцев хакеру не так-то просто... Поэтому нужно использовать чужие компьютеры без ведома их владельца (благо, хакеру к этому не привыкать). И проще всего это сделать, распространив по всему миру вирус. Вирус, который и будет контролировать работу чужой машины, использовать ее ресурсы для НАШЕЙ пользы. И сделать это не так-то сложно - достаточно объединить усилия нескольких вирусописателей/хакеров и сделать Infantrer'a (Пехотинца) - солдата нашей кракерской армии. А теперь я расскажу подробный алгоритм работы и содержания Infantrer'а. Для начала стоит запомнить, что мы делаем не одноразового солдата - у нас должна быть большая армия для выполнения задания, а распространять каждый раз новый тип Infantrer'а у нас просто нет возможности. Infantrer должен быть единожды распространен, и в дальнейшем всегда быть готовым выполнять наш приказ. Следовательно, Infantrer должен уметь хорошо маскироваться (крутейший полиморфик нового поколения, желательно с возможностью перекомпиляции) и ничем не выдавать своего присутствия (обо всех спецэффектах и проявлениях лучше сразу же забыть). Поскольку мы требуем от него универсальности (и PGP похакать, и пароль подобрать) то у вируса должен быть встроенный макро язык, язык команд управления Infantrer'ом. Все эти требования и возможности неминуемо приводят к большим размерам вирусного кода, который так просто не спрячешь, поэтому самым оптимальным будет заражение вирусом документов MS Office. Большой размер документов уже давно никого не удивляет, документы используются всеми и повсюду, скорость распространения macro-вирусов самая высокая из всех типов вирусов (до 70% заражений по статистике приходится на макро вирусы). К тому же интеграция компонентов Office97 играет нам на руку. А как будет происходит процесс получения задания нашим Infantrer'ом ? Он сидит где-нибудь в Бразилии, а мы тут ?... Так для чего же тогда нам всеобщая интернетизация, как не для этого ! Итак, у нас имеется Web-сервер, адрес которого известен Infantrer'у. Заразив очередной компьютер, вирус проверяет этот компьютер на присутствие на нем другой копии себя. Для этого имеется постоянно изменяющаяся метка где-нибудь на HDD или в реестре. Если компьютер чист, то на наш сервер отправляется запрос: "Я на новом месте. Дайте мне идентификатор!". Получив запрос, сервер регистрирует очередную копию вируса и ее адрес в своей базе данных (присваивает ей серийный номер Serial), а вирусу отсылает его Serial и текущую метку. Как только нам нужно провести какую либо работу, всем вирусам отсылается их часть задания (по принципу "разделяй и властвуй") и в базе данных сервера ставятся отметки, какой Serial какую часть работы получил. Вирус проверяет присланную ему порцию и возвращает ответ - успешно или нет прошла работа. При получении ответа сервер ставит отметку в базе данных о завершении работы. При положительном результате всем Infantrer'ам отсылается приказ прекратить работу, при отрицательном результате Infantrer получает новую порцию. Если после получения задания от какого-нибудь Infantrer'а долгое время не поступает ответ (мало ли что : интернет кончился, винт отформатило, хозяин софт переустановил или просто нас стер), то этот Infantrer вычеркивается из базы данных сервера и его задание дается другой копии. В идеале будет, если Infantrer сам соединяется с сервером при первом удобном случае (как хозяин в интернет полезет, а мы тут как тут!). Для отсылки сообщений можно использовать Outlook, а можно и своими силами - так будет универсальнее. Все вышесказанное является моей частной интеллектуальной собственностью. Если вы желаете воплотить в жизнь этот научно-фантастический проект, просьба связаться со мной. Все отклики направляйте по адресу smf88@hotmail.com Duke/SMF