Исходный вариант интервью для Esquire, опубликованный вариант здесь. Вернуться на главную страницу.
Сразу хотелось бы предупредить, что «авторы вирусов» — это весьма разноднородная группа, себя я отношу к некоммерческой «вирусной сцене» (сама сцена — это довольно противоречивое явление, но для стороннего наблюдателя... пусть будет так Ж-). Вирусы и, все что с ними связано — довольно запутанная тема, и у других авторов могут быть прямо-таки противоположные мнения по многим вопросам. Не знаю удалось ли мне ответить полно и доходчиво, но если требуются уточнения, то спрашивайте.
Как долго ты этим занимаешься?
Около десяти лет. Естественно, что собственно на написание вирусов я трачу не так уж много времени (в противном случае, количество написанных мною вирусов исчислялось бы сотнями, если не тысячами Ж-). Кроме того, помимо написания вирусов я поддерживаю тематический веб-сайт: http://vx.netlux.org/
Зачем ты это делаешь?
Написание программ для меня один из способов самовыражения. Наверное, можно было бы самовыражаться как-нибудь иначе, но вирусы мне особенно интересны. Во-первых, если текстовый редактор, как минимум должен хоть как-то редактировать текст и взаимодействовать с пользователем, то вирус работает с системой и системными программами, не отвлекаясь на рисование менюшек; во-вторых, вирус может быть как очень простым, так и очень сложным, границ нет ни сверху, ни снизу. В вирусе можно использовать практически любой программистский фокус, который в текстовом редакторе оказался бы, мягко говоря излишним. Прямой и не очень долгий путь от идеи к реализации. Помимо того, можно поразмышлять о теоретических свойствах самовоспроизводящихся программ, и не только поразмышлять, но и проявить на практике собственные знания, мастерство и фантазию.
Какой примерно ущерб наносили твои вирусы? Какие цели ты преследовал, когда их рассылал?
Попытаюсь ответить сразу на оба вопроса. Дело в том, что заражением чужих компьютеров я не занимаюсь. И при этом, не от того, что боюсь возмездия со стороны разгневаных пользователей или закона, а потому, что у меня нет таких целей, ради достижения которых стоило бы это делать.
С другой стороны, исходные тексты я в стол не прячу, и возможно, что какой-нибудь скрипт-кидди, скачав один из моих вирусов, заразил им свой (а скорее всего соседский Ж-) компьютер. Правда, так как большая часть написанных мной вирусов работает под различными юникс-клонами, вряд ли даже и в этом случае они принесли хоть какой-то вред. Пишу я прежде всего для себя, затем для других вирмейкеров-энтузиастов, ну и для антивирусников, куда ж без них Ж-) мне их реакция интересна, если она конечно поступает не в форме доносов: http://vx.org.ua/rrlf/kav.txt , а в виде технических статей: http://pferrie.tripod.com/papers/crimea.pdf Ж-)
Что могла бы делать моя программа на чужом компьютере? Воровать информацию? Но я не вор. Стереть всё к чертям собачьим и вывести глумливое сообщение? Я считаю, что немотивированное вредительство — это прямой путь к деградации. Я мог бы перечислить еще несколько возможных сценариев, к примеру периодически появляется идея использовать червей или вирусы в качестве анти-вируса, similia similibus... или принудительная анонимизация пользовательского траффика. Но это не моё. Хотя может быть однажды я придумаю, чем будет заниматься мой вирус на вашем компьютере. ;-)
Меня интересуют вирусы per se. И в моём стремлении заниматься любимым делом, писать вирусный код (точно так же, как многие копаются в двигателе) я не одинок. Те вирусы, которые ловятся анти-вирусами (кстати, тех что встречаются в «диком виде», то есть на машинах пользователей, на порядки меньше) — это вершина айсберга.
Многие программисты, заинтересовавшись темой, написав один или два вируса, переключаются на что-нибудь другое, и о существовани этих вирусов никто не узнает; другие объединяются для обмена информацией и публикации новых разработок. (Существует так называемая «сцена», сообщество вирмейкеров со своими традициями. Сейчас она пребывает в упадке, но это, как мне кажется от того, что мы не смогли выработать подходящие способы взаимодействия, а те что худо-бедно работали, со временем оказались разрушены. По крайней мере, интерес к вирусам у людей не исчезает)
Так же есть небольшая группа ученых, занимающихся компьютерной вирусологией, но они не заинтересованы ни в распространении, ни в публикации вирусов.
Сколько времени требуется, чтобы создать вирус?
На самый простой несколько секунд: for i in *; do cp "$0" "$i"; done
Этот юниксовый шелл-скрипт просто копирует себя поверх всех файлов в текущем каталоге. Чтобы написать не очень сложный полноценный вирус (то есть такой, после заражения которым компьютер продолжает работать, как ни в чем не бывало) нужно потратить день-два. По большей части на отладку. Если же речь идет о по-настоящему сложных и красивых вирусах, то от нескольких недель до нескольких месяцев.
Вирус такая же программа, как и все прочие. И хотя все вирусы обладают общим свойством — способностью к самовоспроизведению, разница между ними может быть, такая же, как между игрой в змейку на мобильном телефоне и навороченной 3d-стрелялкой.
Как вообще он действует?
Исполняемые файлы, то есть программы, как правило состоят из заголовков, в которых содержится информация о программе, необходимая операционной системе, кода и данных. Вирус ищет на диске файлы определенного типа (которые он в состоянии заразить), «вставляет» в них свой собственный код и перенастраивает получившуюся программу так, чтобы код вируса получил управление, а затем смог запустить оригинальную программу, чтобы она ничего «не заметила». Затем, когда пользователь запускает зараженную программу процесс повторяется.
Запоминаются вирусы прежде всего своей «полезной нагрузкой» (payload) — шутливыми или не очень сообщениями, стиранием информации, а то и требованиями выкупа. Но полезной нагрузки в вирусе может и не быть, ценным для специалиста является код, использованные алгоритмы, а не внешние проявления.
К несчастью, «вирусами» сейчас принято называть любую «нежелательную» (или в формулировке УК РФ — «вредоносную») программу, а на самом деле все «зловреды» делятся на многочисленные категории. Три основные группы — это вирусы, черви и троянцы. Выше я описал файловый вирус, а существуют еще загрузочные (изменяют программу, загружающую операционную систему); макро-вирусы, заражающие документы (на самом деле только те, в которых предусмотрена возможность записывать помимо текста программы для его обработки — документы MS Office); и многие другие.
В отличии от вирусов, которые, как правило, не могут существовать отдельно от своих носителей, и черви, и троянцы являются самостоятельными программами. Сетевой червь распространяется не среди файлов на одном компьютере, а с компьютера на компьютер по сети. Для того, чтобы получить доступ к удаленному компьютеру червь может использовать известные уязвимости в программном обеспечении, то есть взламывает их, а почтовый червь провоцирует пользователя запустить прикрепленную к письму программу, выдавая её за фотки голой знаменитости или что-нибудь не менее увлекательное. Такой вот социальный инжиниринг. Ж-)
Подобный же обман и состовляет суть троянских коней — это программы, которые делают совсем не то, что обещают, например, вы хотели поставить новый архиватор, а вместо этого вся ваша информация была уничтожена. Троянцы, попав на компьютер, далее не распространяются. Перечисление многочисленных разновидностей отняло бы немало времени: кража паролей, «черный ход», через который можно незаметно зайти на компьютер, непрошенная реклама, прокси, чтобы скрыть реальный сетевой адрес взломщика, клавиатурные шпионы, программы, атакующие сервера в сети итд
Современное и самое массовое вредоносное ПО обычно состоит из многих компонентов, относящихся к различным типам программ, и всё для того, чтобы получив доступ к наибольшему количеству компьютеров, объединить их для общей цели, например, для рассылки спама. Но и другие типы вирусов тоже никуда не исчезают.
Как ты решил, что хочешь попробовать создать вирус?
Как программист-новичок я наметил себе ряд задач, которые просто необходимо выполнить для пополнения собственных знаний, кроме того, интерес к вирусам постепенно накапливался, пока не наступил подходящий момент. Я написал несколько вирусов и тем бы всё и кончилось, если бы спустя какое-то время мне не захотелось упорядочить с трудом накопленную информацию в виде сайта. Да, так бы и лежал этот сайт мертвым грузом, если бы не друзья на провайдерском узле, которые обеспечили бесплатный хостинг. Иногда интерес к написанию вирусов у меня ослабевает, но бросать это занятие я не собираюсь.
Расскажи, как ты впервые попробовал. Как это было?
Как-то выдалась у меня в жизни довольно неприятная полоса событий, и я захандрил. Спустя несколько недель я понял, что дальше так продолжаться не может, и нужно себя чем-то занять. Перебрав все текущие проекты, я понял, что ничего кроме отвращения они у меня не вызывают. И я решил попробовать написать вирус, тем более, что давно уже собирался. Скачал из сети несколько выпусков журнала Infected Voice и довольно быстро написал несколько средненьких вирусов под MS-DOS.
В начале возник соблазн пойти по накатанной дорожке, то есть попытаться распространить написанные вирусы, вступить в вирмейкерскую группу, поскандалить в антивирусных конференциях и поспорить в вирусных, чей «говноморфик круче». К счастью, хватило сообразительности посмотреть на себя со стороны, устыдиться и отложить всё до тех пор, пока не появятся более осмысленные цели и интересы. Ж-)
Ты сам страдал когда-нибудь от вирусов? Что ты при этом чувствовал?
Было дело. Довольно давно, когда под «четверкой» еще подразумевался i486, а не P-IV. :-) Первые «встречи» мне не особенно запомнились, но, как и у всех прочих, моя реакция была типовой: удивление (откуда ж ты взялся на мою голову?!), раздражение и легкий испуг. Хотя было и исключение: как-то я подцепил один из музыкальных вирусов, который неожиданно начинал наигрывать музыку. Это вносило приятное разнообразие в многочасовую работу за компьютером и я его не трогал. И самое главное, помимо испуга возникало и любопытство: «Как это работает?!»
С другой стороны, наибольший ущерб мне нанес не вирус, а анти-вирус. Одна из известных программ этого рода ошибочна сочла, что мой компьютер заражен, и бодро принялась за лечение. Последствия оказались катастрофическими: содержимое всего винчестера было уничтожено, а последняя резервная копия оказалась месячной давности. После этого случая я перестал пользоваться анти-вирусами, и еще больше заинтересовался первопричиной всего этого беспокойства. Ж-)
Что нужно знать человеку, чтобы создать вирус?
Для написания простого, классического файлового вируса достаточно знать основной принцип: найди жертву — добавь к ней себя — настрой так, чтобы всё заработало; и абсолютно любой язык программирования (кроме совсем уж специфических) в том объеме, в котором его преподают на первом курсе института. Не случайно же антивирусники часто говорят о каком-то вирусе — «студенческий».
А вот интересные вирусы (не обязательно самые распространенные или самые разрушительные) требуют гораздо больше знаний и умений, в том числе хорошее знание устройства компьютера, языков программирования, «потрохов» системы, криптографии, математики, информатики — иногда в самых неожиданных разделах этих дисциплин.
Когда создаешь вирус, можно ли спрогнозировать, насколько разрушительный он будет?
Я думаю да, всегда можно оценить: шансы, которые есть у «вируса» (не выделываясь, буду называть «вирусом» всё подряд) именно этого типа, антивирусные компании публикуют статистику; обладает ли вирус ярко выраженными преимуществами, к примеру возможностью использовать новую дыру в широкораспространенном ПО, о которой еще никто не знает; перспективен ли вектор распространения -- у вируса «заточенного» под 5-дюймовые дискеты сейчас мало шансов выжить; существует ли способ провести эфективный «вброс» -- начальный очаг будущей пандемии.
Можно ли зарабатывать, создавая вирусы? Как? Какую вообще выгоду можно излечь?
Безусловно. Существует стабильный спрос на разнообразных троянчиков, и штампуя модификации по мере того, как старые начинают ловиться анти-вирусами, можно заработать себе на жизнь, а иногда даже и на жизнь не бедную. Время от времени мне приходиться отказываться от навязчивых предложений, прямо-таки немедленного обогащения, со стороны людей, которых в сетевом журнальчике BHC метко окрестили «скамерсантами». Если у человека есть немного опыта и напрочь отсутствует совесть, то подобный простой, и кажущийся безопасным вид заработка может показаться соблазнительным. Это о исполнителях, а заказчик, как я уже говорил, может использовать всё это добро для взлома, кражи (например, с электронных кошельков), рассылки спама, заказных атак на сервера конкурентов, шантажа, раскрутки сайтов с получением денег от рекламы... или сдать взломанные компьютеры в аренду другому мошеннику, который сможет дополнить этот список очередной подлостью.
Тебя когда-нибудь нанимали для создания вируса?
Пытались Ж-)
Что это были за люди? Зачем им это было нужно?
Не всегда можно определить, что это за люди. Большая часть подобных предложений поступала в «электронном» виде, но пару раз доводилось встречаться и лично. В основном приходиться сталкиваться не с «профи», а с обычными людьми, которым втемяшилось в голову, что им непренно нужен хакер или вирмейкер. Мне кажется, что даже если бы кто-то и согласился, то это бы им не помогло.
От личных встреч с любителями троянчиков остался неприятный осадок. Так уж получилось, что люди с которыми я столкнулся выглядели именно так, как и должен выглядеть мелкий мошенник (что наверное большая редкость). Так как на их условия: `всего-то делов, чтобы трой не палился, а взамен, прикинь, «мешок денег»!' я не соглашался, то и в детали они меня не посвящали. Спамеры, полагаю.
Подобные люди, как мне кажется, — «дно» этого бизнеса. Возможны и варианты: искать разовые заказы на соответствующих форумах, зарабатывать «репутацию», обзаводиться знакомствами. Я очень плохо разбираюсь в том, что происходит в «коммерческом сегменте». Противно.
Объясни, пожалуйста, смысл и происхождение термина «скамерсант».
скаммерсант — сетевой коммерсант (новояз, праисходит от игры двух рускех слов: «скам», то есть професеональный заработок, и «каммерсант» — то есть прафесионал, бизнисмен)
Насколько легко быть пойманным?
Очень легко. Для того, чтобы обеспечить себе настоящую анонимность нужно быть не только параноиком, но и шизофреником. Малейшая беспечность или неосторожно сказанное слово могут иметь самые неприятные последствия. Хотя, собственно, вирмейкеры — как «неуловимый Джо» из анекдота, переловить их не составляет труда, но у дела мало перспектив — ни тебе «общественной опасности», ни «прямого умысла».
Не решался спросить, но раз ты сам упомянул: часто ли приходится прислушиваться к голосу совести?
Ты хотел спросить часто ли приходится идти на сделки с совестью? К счастью, нет. Я не претендую на непогрешимость или на то, что всегда придерживаюсь этически безупречной позиции, но что касается своего увлечения, то в нем я следую определенным принципам, и не нарушаю их.
А в чём заключаются твои принципы?
Я себя очень неуютно чувствую в шкуре моралиста. Ж-) Жить по совести. Не воровать, не предавать, не врать, не решать свои проблемы за чужой счет. Вполне традиционный набор. Хотя и с уточнениями. К примеру, имущественных прав на интеллектуальную собственность, то есть копирайт в его современном виде, я не признаю.
За какую работы ты не примешься ни при каких условиях?
Долго перечислять. Ж-) Давай наоборот. Я забатываю собственными знаниями и трудом.
Возможно ли, что ты все же будешь заниматься этим за деньги? Что это за условия?
Я уверен в том, что практически любого человека можно купить (не обязательно за деньги), принудить (не обязательно силой) или вовлечь (не обязательно обманом) в сомнительное предприятие, но зачем? Это же бизнес. Стоит ли прилагать непомерные усилия, на то чтобы переманить одного отдельно взятого, прости господи, долбоёба, когда и так довольно желающих, готовых на всё и нацеленных на «успех»?
Любопытно конечно выяснить, где именно проходит граница личной сопротивляемости (вспомнилось: «скажу, у кого взял машинку и бумагу, если меня подвесят за ноги и будут бить» Ж-), но повода не было и едва ли появится в будущем.
Как ты относишься к людям, которые зарабатывают созданием вирусов и их рассылкой?
Презираю.
Какие меры предосторожности нужно принимать, чтобы рассылать вирусы и при этом не попасться?
Стать анонимом не только в сети, но и в реальной жизни. Пользоваться криптографией и анонимизаторами. Не болтать и никому не доверять.
Твои друзья, родственники знают, чем ты занимаешься? Как они к этому относятся?
И друзья, и родственники, и коллеги. Хорошо относятся, а иначе и быть не могло. Решающее значение имеет не технология (технология вещь в моральном отношении нейтральная), а то, как ты ей пользуешься. Одно дело, когда ты изучаешь свойства инструментальной стали на примере отмычек, другое дело, когда потрошишь сейфы. И с этим ведь не поспоришь. И эйверы соглашаются (в приватных беседах), несмотря на детально проработанный образ вирмейкера, в который наиболее ретивые из них и сами уже успели поверить. Ж-)
Подобная модель поведения полностью себя оправдывает даже с практической точки зрения. Родственники поддерживают, друзья готовы помочь в решении технических задачек, коллеги помогают с юридической стороной дела и необходимыми мощностями. Даже редкие стычки по поводу копирайта, пару раз заканчивались тем, что автор упрашивал издателя разрешить свободную публикацию материалов. И издательства шли на встречу. Из сотен мегабайт почты, негативных откликов наберется два-три десятка. Вот так.
Каков твой основной род занятий? Расскажи немного о том, кто ты «вне вирусов»).
Системный администратор, 30, обычный человек.
--
herm1t