Avatar billede micki Nybegynder
21. december 2000 - 21:55 Der er 14 kommentarer og
1 løsning

Windows\' Passwords.

Hey NG


Jeg har hørt at man med Delphi kan lave en funktion som dekrypterer
passwordet i en pwl-fil (IKKE brute-force)... er det rigtigt - i så fald;
hvordan ??


Jeg tænkte også på om man, hvis man er logget på Windows med password kan få
det password oplyst som man er logget på med ?? (cache ??). Her tænkter jeg IKKE på internet passwordet.


Håber på at noget af dette kan lade sig gøre.
Avatar billede stone Forsker
21. december 2000 - 22:12 #1
med dette eksempel kan du se alle cached password.
i windows,hvis du er logget på.

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls,shellapi;

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    ListBox1: TListBox;
    Label1: TLabel;
    Label2: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Label1Click(Sender: TObject);
    procedure Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure GroupBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
    { Private declarations }
  public
    hMPR: THandle;

  end;

var
  Form1: TForm1;

const
  Count: Integer = 0;

function WNetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar; dw: DWord): Word; stdcall;

implementation

{$R *.DFM}

function WNetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar; dw: DWord): Word; external mpr name \'WNetEnumCachedPasswords\';

type
PWinPassword = ^TWinPassword;
TWinPassword = record
  EntrySize: Word;
  ResourceSize: Word;
  PasswordSize: Word;
  EntryIndex: Byte;
  EntryType: Byte;
  PasswordC: Char;
  end;

function AddPassword(WinPassword: PWinPassword; dw: DWord): LongBool; stdcall;
var
  Password: String;
  PC: Array[0..$FF] of Char;
begin
  inc(Count);

  Move(WinPassword.PasswordC, PC, WinPassword.ResourceSize);
  PC[WinPassword.ResourceSize] := #0;
  CharToOem(PC, PC);
  Password := StrPas(PC);

  Move(WinPassword.PasswordC, PC, WinPassword.PasswordSize + WinPassword.ResourceSize);
  Move(PC[WinPassword.ResourceSize], PC, WinPassword.PasswordSize);
  PC[WinPassword.PasswordSize] := #0;
  CharToOem(PC, PC);
  Password := Password + \': \' + StrPas(PC);

  Form1.ListBox1.Items.Add(Password);
  Result := True;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
if WNetEnumCachedPasswords(nil, 0, $FF, @AddPassword, 0) <> 0 then
  begin
    Application.MessageBox(\'Kan ikke vise passwords: Bruger er ikke logget på.\', \'Error\', mb_Ok or mb_IconWarning);
    Application.Terminate;
  end
  else
  if Count = 0 then
    ListBox1.Items.Add(\'Ingen passwords fundet...\');
end;

end.

Avatar billede micki Nybegynder
21. december 2000 - 22:45 #2
Stone:

Det viser jo kun internetpasswords. Det jeg skal bruge er det password der er skrevet når man har logget sig ind på Windows\'...
Avatar billede stone Forsker
22. december 2000 - 11:04 #3
ja..jeg var lidt for hurtig på aftrækkeren..
Avatar billede stone Forsker
22. december 2000 - 21:43 #4
men...jeg er ikke sikker på at nogen vil være behjælplig med dit problem, da man ikke er sikker på om det bliver brugt til noget ulovligt.
Avatar billede micki Nybegynder
25. december 2000 - 13:40 #5
Stone:

Det kan godt være at du har ret.....
Avatar billede cybermike Nybegynder
13. januar 2001 - 23:13 #6
stone>Det var squ da noget fis at lukke ud!

Problemet med pwl filer er at indholdet bliver krypteret med en nøgle som er gennerert udfra det password man taster så den eneste mulighed er at bruteforce pwl filen, hvilket også burde kunne gøres rimeligt hurtigt hvis først lige man har koden til at åbne dem, nu om dage er local-bruteforce af sådan nogel jo ikke noget særligt stort problem,,,nå men tilside med det.


hvis nu du kan fortælle og hvad det skal bruges til kunne man måsk være lidt mere specifik.

du kan prøve at installere Bo på din computer og så logge på selv og vælge \"show cached passwords\" det er noget den læser fra hukommelsen og har ikke noget med pwl filen at gøre, men hvis der er tale om login password, så er der ikke noget at gøre.

et trick,  genstart i msdos, omdøb user.pwl user.tmp genstart log på med user, og angiv ikke noget password, genstart igen i msdos og slet user.pwl og omdøb user.tmp til user.pwl derefter genstarter du, og logger på med user, hvorefter der ikke vil være nogen kode tilknyttet brugernavnet.   
Avatar billede lojmann Nybegynder
14. januar 2001 - 09:53 #7
Jeg har noget source et sted, som kan vise dig hvad der er gemt bag *******\'erne i en password dialog, hvis det var noget?

Virker KUN på 95/98 (Me?)

/Thomas
Avatar billede micki Nybegynder
14. januar 2001 - 17:19 #8
Cybermike:

Jeg roder bare med lidt pwl over mit netværk - så det skal være muligt at få fat i netværkspasswordet til evt. en NT box....

Lojmann:

Det vil jeg faktisk gerne have...
Avatar billede micki Nybegynder
14. januar 2001 - 17:31 #9
Lojmann:

Jeg vil godt kunne bruge det og hvis det er ren source så kan du godt få de 100 points for det da det ikke ser ud til at der er nogen andre løsninger... smid et svar!
Avatar billede lojmann Nybegynder
14. januar 2001 - 17:36 #10
http://lojmann.adsl.dk/passwdgrap.zip

Lig mærke til at der IKKE længere er support på dette program eller dets source!
Og at der må modificeres i det, hvis der bare står at den oprindeligt source var udviklet af \"Thomas Løjmann Jørgensen <lojmann@lojmann.dk>\"!

Hvis i har nogle spørgsmål, så smid mig en mail!
Avatar billede micki Nybegynder
14. januar 2001 - 17:43 #11
Siden blev ikke fundet står der hos mig... :/ - Sikkert en fejl - prøver senere.
Avatar billede lojmann Nybegynder
14. januar 2001 - 17:52 #12
Avatar billede lojmann Nybegynder
14. januar 2001 - 17:55 #13
Avatar billede micki Nybegynder
14. januar 2001 - 18:01 #14
Så kom vi igennem :=] ...... hvis der er nogen som har fundet ud af noget mere så bare sig til.... hvis jeg kan bruge det skal i nok få nogle points...
Avatar billede rasmustest Nybegynder
05. juli 2001 - 18:30 #15
linket virker ikke, må jeg ikke få koden? gratis
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester