Главная


   WEB-студия сайта


   О заработке


   Новости


   Хакеру


   Утилиты


   WEB-мастерам


    Авторам


    Реклама


Что же такое вирус?

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

Как вирус заражает компьютер?

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

Как узнать заражен ли компьютер?

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

Внедрение вируса в загрузочный сектор

    Загрузочные вирусы заражают загрузочный (Boot) сектор флоппи-диска и Boot-сектор или Master Boot Record (MBR) винчестера. При инфицировании диска вирус в большинстве случаев переносит оригинальный Boot-сектор (или MBR) в какой-либо другой сектор диска (например, в первый свободный). Если длина вируса больше длины сектора, то в заражаемый сектор помещается первая часть вируса, остальные части размещаются в других секторах (например, в первых свободных). Затем вирус копирует системную информацию, хранящуюся в первоначальном загрузчике в свои коды и записывает их в загрузочный сектор (для MBR этой информацией является Disk Partition Table, для Boot-сектора дискет - BIOS Parameter Block).
    Существует несколько способов размещения на диске первоначального загрузочного сектора и продолжения вируса: в сектора свободных кластеров логического диска, в неиспользуемые или редко используемые системные сектора, в сектора, расположенные за пределами диска.
    Если продолжение вируса размещается в секторах, которые принадлежат свободным кластерам диска (при поиске этих секторов вирусу приходится анализировать таблицу размещения файлов - FAT), то, как правило, вирус помечает в FAT эти кластеры как сбойные (так называемые псевдосбойные кластеры). Этот способ используется вирусами "Brain", "Ping-Pong" и в дальнейшем будет именоваться как СПОСОБ "BRAIN".
    Вирусы семейства "Stoned" используют другой метод - они размещают старый загрузочный сектор в неиспользуемом или редко используемом секторе. На винчестере этот сектор является одним из секторов (если такие есть), расположенных между MBR и первым Boot-сектором, а на дискете этот сектор выбирается из последних секторов корневого каталога. В дальнейшем этот метод будет называться СПОСОБ "STONED".
    Реже используется метод сохранения продолжения вируса за пределами диска, этот метод пока встречался только при заражении вирусом флоппи-дисков. Для этого вирусу приходиться форматировать на диске дополнительный трек (метод нестандартного форматирования), например, 40-й трек на 360K дискете.
    Конечно, существуют и другие методы размещения вируса на диске, например, вирусы семейства "Azusa" содержат в своем теле стандартный загрузчик MBR и при заражении записываются поверх оригинального MBR без его сохранения.

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

    Как правило загрузочные вирусы всегда резидентны. Они внедряются в память компьютера при загрузке с инфицированного диска. При этом системный загрузчик считывает содержимое первого сектора диска, с которого производится загрузка, помещает считанную информацию в память и передает на нее (т.е. на вирус) управление. После этого начинают выполняться инструкции вируса, который:
- уменьшает объем свободной памяти (слово по адресу 0040:0013);
- считывает с диска свое продолжение (если оно есть);
- переносит себя в другую область памяти (например, в самые старшие адреса памяти);
- устанавливает необходимые векторы прерываний;
- совершает, если они есть, дополнительные действия;
- копирует в память оригинальный Boot-сектор и передает на него управление.

Файловые вирусы

    Вирус может внедриться в файлы трех типов: командные файлы (BAT), загружаемые драйверы (SYS) в том числе IO.SYS и MSDOS.SYS, и выполняемые двоичные файлы (EXE, COM) включая новые типы EXE-файлов (NEW EXE) и NLM-файлы, выполняемые в операционных системах типа MS-Windows, OS/2, Novell Netware и т.д.
    Возможно внедрение вируса в файлы данных, но эти случаи возникают либо в результате ошибки вируса, либо при проявлении вирусом своих агрессивных свойств. Конечно, возможно существование вирусов, заражающих файлы, которые содержат исходные тексты программ, библиотечные или объектные модули, но подобные способы распространения вируса слишком экзотичны и поэтому в дальнейшем не рассматриваются.
    На сегодняшний день известны всего несколько видов BAT-вируса. Они не представляют интереса, так как достаточно примитивны и очень просто обнаруживаются а после чего удаляются.

Внедрение вируса в SYS-файл

    Вирусы, внедряющиеся в SYS-файл, приписывают свои коды к телу файла и модифицируют адреса программ стратегии (Strategy) и прерывания (Interrupt) заражаемого драйвера (встречаются вирусы, изменяющие адрес только одной из программ). При инициализации зараженного драйвера вирус перехватывает соответствующий запрос операционной системы, передает его драйверу, ждет ответа на этот запрос, корректирует его и остается в оперативной памяти вместе с драйвером в одном блоке памяти. Такой вирус может быть чрезвычайно опасным и живучим, так как внедряется в оперативную память при загрузке DOS раньше любой антивирусной программы, если она, конечно, тоже не является драйвером.

Внедрение вируса в COM- и EXE-файлы

    Выполняемые двоичные файлы имеют форматы COM или EXE, отличающиеся заголовком и способом запуска программ на выполнение. Расширение имени файла (".COM" или ".EXE") не всегда соответствует действительному формату файла, что, правда, никак не влияет на работу программы. Файлы COM и EXE заражаются по-разному, следовательно вирус должен отличать файлы одного формата от другого. Вирусы решают эту задачу двумя способами: одни анализируют расширение имени файла (".COM", ".EXE"), другие - заголовок файла. Первый способ далее будет называться заражением .COM- (или .EXE-) файлов, второй - заражением COM- (или EXE-) файлов. В большинстве случаев вирус инфицирует файл корректно, т.е. по информации, содержащейся в теле вируса, можно полностью восстановить зараженный файл. Но вирусы, как и большинство программ, часто содержат незаметные с первого взгляда ошибки. Из-за этого даже вполне корректно написанный вирус может необратимо испортить файл при его заражении. Например, вирусы, различающие типы файлов по расширению имени (.COM, .EXE), очень опасны, так как портят файлы, у которых расширение имени не соответствует внутреннему формату.
    Файловые вирусы при распространении внедряются в тело заражаемого файла: в его начало, конец или середину. Существует несколько возможностей внедрения вируса в середину файла: он может быть скопирован в таблицу настройки адресов EXE-файла ("BootExe"), в область стека файла COMMAND.COM ("Lehigh"), может "раздвинуть" файл или переписать часть файла в его конец, а свои коды в освободившееся место ("April1st.Exe", "Phoenix"), и т. д. Кроме того, копирование вируса в середину файла может произойти в результате ошибки вируса - в этом случае файл может быть необратимо испорчен. Встречаются и другие способы внедрения вируса в середину файла, например, вирус "Mutant" применяет метод компрессирования некоторых участков файла.

Внедрение вируса в начало файла

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

Внедрение вируса в конец файла

    Наиболее распространенным способом внедрения вируса в файл является дописывание вируса в конец этого файла. При этом вирус изменяет начало файла таким образом, что первыми выполняемыми командами программы, содержащейся в файле, являются команды вируса. В COM-файле в большинстве случаев это достигается изменением его первых трех (или более) байтов на коды инструкции JMP Loc_Virus (или в более общем случае - на коды программы, передающей управление на тело вируса). EXE-файл либо переводится в формат COM-файла и затем заражается как COM-файл, либо модифицируется заголовок файла. В заголовке EXE-файла изменяются значение стартового адреса (CS:IP) и значение длины выполняемого модуля (файла), реже - регистры-указатели на стек (SS:SP), контрольная сумма файла и т.д. Дополнительно к этому длины файлов перед заражением могут увеличиваться до значения, кратного параграфу (16 байт).

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

    Вирус, после передачи ему управления, совершает следующие действия (приведен список наиболее общих действий вируса при его выполнении; для конкретного вируса список может быть дополнен, пункты могут поменяться местами и значительно расшириться) :
- восстанавливает программу (но не файл) в исходном виде (например, у COM-программы восстанавливаются первые несколько байт, у EXE-программы вычисляется истинный стартовый адрес, у драйвера восстанавливаются значения адресов программ стратегии и прерывания);
- если вирус резидентный, то он проверяет оперативную память на наличие своей копии и инфицирует память компьютера, если копия вируса не найдена; если вирус нерезидентный, то он ищет незараженные файлы в текущем и (или) корневом оглавлении, в оглавлениях, отмеченных командой PATH, сканирует дерево каталогов логических дисков, а затем заражает обнаруженные файлы;
- выполняет, если они есть, дополнительные функции: деструктивные действия, графические или звуковые эффекты и т.д. (дополнительные функции резидентного вируса могут вызываться спустя некоторое время после активизации в зависимости от текущего времени, конфигурации системы, внутренних счетчиков вируса или других условий; в этом случае вирус при активизации обрабатывает состояние системных часов, устанавливает свои счетчики и т.д.);
- возвращает управление основной программе.

Метод восстановления программы в первоначальном виде зависит от способа заражения файла. Если вирус внедряется в начало файла, то он либо сдвигает коды зараженной программы на число байт, равное длине вируса, либо перемещает часть кода программы из ее конца в начало, либо восстанавливает файл на диске, а затем запускает его (см. Внедрение вируса в начало файла). Если вирус записался в конец файла, то при восстановлении программы он использует информацию, сохраненную в своем теле при заражении файла. Это может быть длина файла, несколько байт начала файла в случае COM-файла или несколько байтов заголовка в случае EXE-файла. Если же вирус записывается в середину файла специальным образом, то при восстановлении файла он использует также специальные алгоритмы.