Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Правда что Outlook Express хранит пароли в открытом виде ????? 03.07.01 23:43
Автор: Djimi Статус: Незарегистрированный пользователь
|
Слышал несколько раз что Outlook Express
хранит пароли от мыла в открытом виде
подскажите где он их так хранит ???
проверить хотется :))
|
|
Правда что Outlook Express хранит пароли в открытом виде ????? 04.07.01 05:02
Автор: NiFi... <NiFiGaSebe!> Статус: Member
|
30/06/2001
Новый, достаточно интересный продукт от ElcomSoft - Advanced Outlook Express Password Recovery. Данная программа является первой в своем роде и служит для восстановления ВСЕХ паролей от почтового клиента OutLook. Подробнее здесь:
http://www.elcomsoft.com/aoepr.html
http://www.uinc.ru
|
| |
Не важно, в открытом или зашифрованом, лучше скажите где можно про алгоритм вытаскивания паролей почитать или где исходник скачать можно. 11.12.02 02:17
Автор: BoredOfBytes Статус: Незарегистрированный пользователь
|
|
| | |
Здесь 11.12.02 02:38
Автор: Renkvil <Boris> Статус: Member Отредактировано 11.12.02 02:43 Количество правок: 1
|
From: "Andras" <andras@sekom.com>
Newsgroups: fido7.ru.nethack
Subject: Re: Outlook паролеизвлекатель
Date: Fri, 28 Dec 2001 12:53:56 +0000 (UTC)
//////////////////////////////////////////////////////////////////
//
// pop3.c
// usage: ./pop3
//
// will print email servers name, login name and password
//
// /////////////////////////////////////////////////////////////////
// Be sure to link this with Wsock32.lib, rasapi32.dll and NOT to
cygwin1.dll !!
// gcc pop3.c -o
pop3.com -lWsock32 -lrasapi32 -s -mno-cygwin -Wl,--subsystem,windows
// or to debug: gcc -ggdb pop3.c -o
pop3.exe -lWsock32 -lrasapi32 -mno-cygwin
/////////////////////////////////////////////////////////////////
//#define DEBUG_MODE
#define NAMESIZE 64
#define BUFFERSIZE 512
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
#include <string.h>
#ifdef DEBUG_MODE
void errmsg(char *message)
{
LPVOID lpMsgBuf;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
GetLastError(),
0, // Default language
(LPTSTR) &lpMsgBuf,
0,
NULL
);
// Process any inserts in lpMsgBuf.
strcat( lpMsgBuf, message);
// Display the string.
// MessageBox( NULL, (LPCTSTR)lpMsgBuf, "Error", MB_OK |
MB_ICONINFORMATION );
MessageBox( NULL, (LPCTSTR) &message, "Error", MB_OK |
MB_ICONINFORMATION );
// Free the buffer.
LocalFree( lpMsgBuf );
}
#else
__inline void errmsg(char *message)
{
return;
}
#endif
///////////////////////////////////////////////////////////////
// just extract the pop3 data from key number 0000000i
int pop3(int i, char *pop3server, char *pop3login, char *pop3password)
{
HKEY key;
DWORD type;
TCHAR buffer[BUFFERSIZE];
DWORD buffersize = sizeof(buffer);
char keyname[NAMESIZE];
int j;
char line[8];
strcpy( pop3server, "" );
strcpy( pop3login, "" );
strcpy( pop3password, "" );
sprintf( keyname, "Software\\Microsoft\\Internet Account
Manager\\Accounts\\0000000%u",i);
if ( RegOpenKeyEx( HKEY_CURRENT_USER, keyname, 0, KEY_READ, &key )
!= ERROR_SUCCESS)
{
return 0;
}
// Read the value = it is a nullterminated string.
// If unsuccessful, it probably doesn't
// exist, so poke a zero into our undefined variable.
RegQueryValueEx(key, "POP3 Server", 0, &type, pop3server, &buffersize );
RegQueryValueEx(key, "POP3 User Name", 0, &type, pop3login,
&buffersize );
// The pop3 pass is a binary string. So first let's get the size
RegQueryValueEx(key, "POP3 Password2", 0, &type, NULL, &buffersize );
// and it's value
RegQueryValueEx(key, "POP3 Password2", 0, &type, buffer, &buffersize );
// let's format it to be usable
for( j=0; j < buffersize; j++)
{
if( buffer[j] == 0 ) sprintf( line, "_");
else if( buffer[j] == 1 ) sprintf( line, "%%x01 ");
else if( buffer[j] == 2 ) sprintf( line, "%%x02 ");
else if( buffer[j] < ' '|buffer[j] > '~' ) sprintf( line, "%%x%X ",
buffer[j]);
else sprintf( line, "%c ", buffer[j]);
strcat( pop3password, line );
}
RegCloseKey(key);
return 1;
}
////////////////////////////////////////////////////////////////////////////
/////////
int main(int argc, char *argv[], char *envp[] )
{
char pop3server[NAMESIZE];
char pop3login[NAMESIZE];
char pop3password[BUFFERSIZE];
DWORD length;
char message[BUFFERSIZE];
char tempstring[NAMESIZE];
int i;
for( i=1; i < 10 && pop3( i, pop3server, pop3login, pop3password); i++)
{
// printf("Server: %s\nLogin: %s\nPassword:
%s\n", pop3server, pop3login, pop3password);
sprintf( message, "Server: %s\nLogin: %s\nPassword:
%s\n", pop3server, pop3login, pop3password);
MessageBox( NULL, message, "POP3", MB_OK|MB_ICONINFORMATION );
}
return 1;
}
|
| | | |
Похоже это лажа 13.12.02 03:52
Автор: Tamas Статус: Member Отредактировано 13.12.02 03:54 Количество правок: 1
|
HKEY_CURRENT_USER\Software\Microsoft\Internet Account Manager\Accounts\00000001\POP3 Password2
тут как мне кажится содержится структура в формате уникод (16 бит один символ) толко пароля тут нет это походу указатель
у меня Outlook Express 6 и POP3 Password2 выгледет так
это походу имя ящика localhost а это указател 86FE2B
посколько при смене пароля эта строчь ка не меняется
|
| | | | |
Согласен! Лажа! 14.12.02 01:53
Автор: BoredOfBytes Статус: Незарегистрированный пользователь
|
> тут как мне кажится содержится структура в формате уникод > (16 бит один символ) толко пароля тут нет это походу > указатель > у меня Outlook Express 6 и POP3 Password2 выгледет так > это походу имя ящика localhost а это указател 86FE2B > посколько при смене пароля эта строчь ка не меняется По моему то же самое! Когда я перенес всю эту ветвь на другой компутер, вместо пасворда лажа какая то была! Надо будет, наверное, проверять весь реестр на изменение при смене пароля.............. =(
|
| | | |
Че то оно не работает....... =( 13.12.02 01:43
Автор: BoredOfBytes Статус: Незарегистрированный пользователь
|
Не знаю как у вас, но мой Аутлуук НЕ хранит пароли В ОТКРЫТОМ ВИДЕ! Поэтому в результате работы данной программы вместо нормального (настоящего) пароля получается абракадабра...... =( Конечно можно было бы ее перенести на другой комп и через Аутлук расшифровать, но хотелось бы чтобы сразу........... Можж кто знает?
ЗЫ А что значит строка else sprintf( line, "%%x%X ", buffer[j]); ? Я на си как то не очень..........
|
|
|