Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: BigBear en 20 Mayo 2013, 03:58 am



Título: [Delphi] MD5 Cracker 0.1
Publicado por: BigBear en 20 Mayo 2013, 03:58 am
Un simple programa para crackear un hash MD5 hecho en Delphi.

Una imagen :

(http://doddyhackman.webcindario.com/images/md5cracker.jpg)

El codigo :

Código
  1. // MD5 Cracker 0.1
  2. // Coded By Doddy H
  3. // Based on the services :
  4. // http://md5.hashcracking.com/
  5. // http://md5.rednoize.com
  6. // http://md52.altervista.org
  7.  
  8. unit md5;
  9.  
  10. interface
  11.  
  12. uses
  13.  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  14.  Dialogs, sSkinManager, StdCtrls, sButton, sEdit, sGroupBox, jpeg, ExtCtrls,
  15.  ComCtrls, sStatusBar, IdBaseComponent, IdComponent, IdTCPConnection,
  16.  IdTCPClient, IdHTTP, PerlRegEx;
  17.  
  18. type
  19.  TForm1 = class(TForm)
  20.    sSkinManager1: TsSkinManager;
  21.    Image1: TImage;
  22.    sGroupBox1: TsGroupBox;
  23.    sEdit1: TsEdit;
  24.    sGroupBox2: TsGroupBox;
  25.    sEdit2: TsEdit;
  26.    sGroupBox3: TsGroupBox;
  27.    sStatusBar1: TsStatusBar;
  28.    Crack: TsButton;
  29.    sButton1: TsButton;
  30.    sButton2: TsButton;
  31.    sButton3: TsButton;
  32.    IdHTTP1: TIdHTTP;
  33.    PerlRegEx1: TPerlRegEx;
  34.    procedure sButton2Click(Sender: TObject);
  35.    procedure sButton3Click(Sender: TObject);
  36.    procedure CrackClick(Sender: TObject);
  37.    procedure sButton1Click(Sender: TObject);
  38.    procedure FormCreate(Sender: TObject);
  39.  private
  40.    { Private declarations }
  41.  public
  42.    { Public declarations }
  43.  end;
  44.  
  45. var
  46.  Form1: TForm1;
  47.  
  48. implementation
  49.  
  50. {$R *.dfm}
  51.  
  52. procedure TForm1.CrackClick(Sender: TObject);
  53. var
  54.  rta: string;
  55.  
  56. begin
  57.  
  58.  sStatusBar1.Panels[0].text := '[+] Searching in md5.hashcracking.com ...';
  59.  Form1.sStatusBar1.Update;
  60.  
  61.  rta := IdHTTP1.Get
  62.    ('http://md5.hashcracking.com/search.php?md5=' + sEdit1.text);
  63.  
  64.  PerlRegEx1.Regex := 'Cleartext of (.*) is (.*)';
  65.  PerlRegEx1.Subject := rta;
  66.  if PerlRegEx1.Match then
  67.  begin
  68.    sEdit2.text := PerlRegEx1.SubExpressions[2];
  69.    sStatusBar1.Panels[0].text := '[+] Done';
  70.    Form1.sStatusBar1.Update;
  71.  end
  72.  else
  73.  begin
  74.  
  75.    sStatusBar1.Panels[0].text := '[+] Searching in md5.rednoize.com ...';
  76.    Form1.sStatusBar1.Update;
  77.  
  78.    rta := IdHTTP1.Get('http://md5.rednoize.com/?q=' + sEdit1.text);
  79.  
  80.    PerlRegEx1.Regex := '<div id=\"result\" >(.*)<\/div>';
  81.    PerlRegEx1.Subject := rta;
  82.    if PerlRegEx1.Match then
  83.  
  84.    begin
  85.  
  86.      if not(Length(PerlRegEx1.SubExpressions[1]) = 32) then
  87.      begin
  88.        sEdit2.text := PerlRegEx1.SubExpressions[1];
  89.        sStatusBar1.Panels[0].text := '[+] Done';
  90.        Form1.sStatusBar1.Update;
  91.      end
  92.      else
  93.  
  94.      begin
  95.  
  96.        sStatusBar1.Panels[0].text :=
  97.          '[+] Searching in md52.altervista.org ...';
  98.        Form1.sStatusBar1.Update;
  99.  
  100.        rta := IdHTTP1.Get
  101.          ('http://md52.altervista.org/index.php?md5=' + sEdit1.text);
  102.  
  103.        PerlRegEx1.Regex :=
  104.          '<br>Password: <font color=\"Red\">(.*)<\/font><\/b>';
  105.        PerlRegEx1.Subject := rta;
  106.  
  107.        if PerlRegEx1.Match then
  108.        begin
  109.          sEdit2.text := PerlRegEx1.SubExpressions[1];
  110.          sStatusBar1.Panels[0].text := '[+] Done';
  111.          Form1.sStatusBar1.Update;
  112.  
  113.        end
  114.        else
  115.        begin
  116.          sEdit2.text := '';
  117.          sStatusBar1.Panels[0].text := '[-] Not Found';
  118.          Form1.sStatusBar1.Update;
  119.        end;
  120.      end;
  121.  
  122.    end;
  123.  end;
  124.  
  125. end;
  126.  
  127. procedure TForm1.FormCreate(Sender: TObject);
  128. begin
  129.  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  130.  sSkinManager1.SkinName := 'neonnight';
  131.  sSkinManager1.Active := True;
  132. end;
  133.  
  134. procedure TForm1.sButton1Click(Sender: TObject);
  135. begin
  136.  sEdit2.SelectAll;
  137.  sEdit2.CopyToClipboard;
  138. end;
  139.  
  140. procedure TForm1.sButton2Click(Sender: TObject);
  141. begin
  142.  ShowMessage('Contact to lepuke[at]hotmail[com]');
  143. end;
  144.  
  145. procedure TForm1.sButton3Click(Sender: TObject);
  146. begin
  147.  Form1.Close();
  148. end;
  149.  
  150. end.
  151.  
  152. // The End ?
  153.  

Si quieren bajar el programa lo pueden hacer de aca (https://sourceforge.net/projects/md5crackerx).



Título: Re: [Delphi] MD5 Cracker 0.1
Publicado por: XresH en 20 Mayo 2013, 09:11 am
Gracias Doddy, si me hago algo de tiempo vere de implementar el code en C#, intentare transferirlo pero no soy muy bueno con delphi, inclusive hace años no le meto mano xD. Si me sale algo lo posteo con tus creditos porsupuesto :P

Saludos.


Título: Re: [Delphi] MD5 Cracker 0.1
Publicado por: Eleкtro en 20 Mayo 2013, 15:02 pm
+1 por la interface estilo "Tron"  :xD, me gusta!