| View previous topic :: View next topic |
| Author |
Message |
aringcb Joined: 03 Sep 2010 Posts: 4

Reputation: 0
|
Posted: Fri Sep 03, 2010 5:57 am Post subject: Rundll32 MD5.dll? |
|
|
Есть необходимость вычислить хэш в cmd скрипте.
Возможно ли использовать библиотеки из Modules через rundll32?
Если можно, то какие параметры передать?
|
|
| Back to top |
|
 |
 Admin Joined: 09 Nov 2005 Posts: 11099

Location: CCCP
|
Posted: Fri Sep 03, 2010 10:06 am Post subject: |
|
|
| Многие пользователи давно уже используют DLL-модули хэширования в своих целях (см. описание API в файле ReadMe.chm папки \Modules\API дистрибутива), но вот насчет формата rundll32 - я не подскажу, т.к. ни разу ей не пользовался.
|
|
| Back to top |
|
 |
aringcb Joined: 03 Sep 2010 Posts: 4

Reputation: 0
|
Posted: Fri Sep 03, 2010 10:42 am Post subject: |
|
|
Программированные не самая сильная моя сторона.
Кто может наваять консольную запускалку, параметрами в которую передать: имя dll-ки из Modules и все остальное (пароль, соль, имя пользователя, флаги) а на выходе получить хэш?
|
|
| Back to top |
|
 |
 geograph Joined: 01 Jul 2008 Posts: 132

Reputation: 153
Location: http://geograph.us
|
|
| Back to top |
|
 |
aringcb Joined: 03 Sep 2010 Posts: 4

Reputation: 0
|
Posted: Mon Sep 06, 2010 4:28 am Post subject: |
|
|
geograph
Ты настоящий мачо, уважаю!
|
|
| Back to top |
|
 |
 leopard Joined: 28 May 2012 Posts: 186

Reputation: 148
Location: Made in USSR
|
Posted: Thu Jul 05, 2012 2:25 am Post subject: |
|
|
Скачал исходник , поглядел , есть пару моментов :
char username[256]={0};
char password[256]={0};
char salt[256]={0};
Так как максимальная длина пароля , соли или имени пользователя 127 символов , то в целях экономии памяти делаем так :
char username[128]={0};
char password[128]={0};
char salt[128]={0};
Во-вторых ,
typedef void (__stdcall *fGetInfo)(MODULEINFO *);
typedef int (__stdcall *fGetHash)(HASHINFO *);
там не __stdcall , а __cdecl или extern "С" , как в заголовочном файле Modules.h , который есть в архиве с программой в
папке с примером модуля , то есть к примеру это будет выглядеть так
typedef void (__cdecl *fGetInfo)(MODULEINFO *);
typedef int (__cdecl *fGetHash)(HASHINFO *);
А лучше скопировать этот файл в папку с твоим исходником и добавить к остальным строчку
#include <Modules>
и удалить в самом исходнике описание двух структур для библиотек .
| Description: |
|
 Download |
| Filename: |
1.zip |
| Filesize: |
1.75 KB |
| Downloaded: |
210 Time(s) |
|
|
| Back to top |
|
 |
|