時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)
windows的身份驗證一般最終都是在lsass進程,默認模塊是msv1_0.dll,而關鍵在其導出函數(shù)LsaApLogonUserEx2,
本程序通過注入代碼到lsass進程hook LsaApLogonUserEx2,截取密碼。只要有身份驗證的過程,
LsaApLogonUserEx2就會觸發(fā),如ipc$,runsa,3389遠程桌面登陸等。
程序對不同系統(tǒng)做了處理,在2000,2003,xp,vista上都可以截取,
在2000,2003,xp中,通過UNICODE_STRING.Length 的高8位取xor key,如果密碼是編碼過的,則通過ntdll.RtlRunDecodeUnicodeString解碼,
vista則通過AdvApi32.CredIsProtectedW判斷密碼是否編碼過,解碼用AdvApi32.CredUnprotectW。
可以自己調(diào)試器掛lsass跑一下:)
========接口:
HRESULT WINAPI DllInstall( BOOL bInstall, LPCWSTR pszCmdLine);
這是本dll導出的一個函數(shù)原型,請不要被名字蠱惑了,這個程序是綠色的。
這個函數(shù)內(nèi)部并沒有做任何自啟動安裝的動作,沒有修改注冊表或系統(tǒng)文件。只是想選一個符合regsvr32調(diào)用的接口而已。
第一個參數(shù)本程序沒用到,
第二個參數(shù)請指定一個文件路徑(注意是UNICODE的),記錄到的數(shù)據(jù)將保存到這里(是Ansi的)。
文件路徑可以像這樣 C:\x.log,
也可以像\\.\pipe\your_pipename, \\.\mailslot\yourslot,
所以你可以自己寫loader來調(diào)用這個dll,讓dll截取到密碼時通過pipe或mailslot將數(shù)據(jù)發(fā)給你的程序。數(shù)據(jù)就是一個字符串(是Ansi的)
========測試:
你可以不急著寫自己的loader來調(diào)用,用regsvr32作為loader來測試一下:(你可能需要關閉某些主動防御)
regsvr32 /n /i:c:\xxx.log c:\pluginWinPswLogger.dll
正常的話regsvr32彈出一個提示成功。
這時候你可以切換用戶或鎖定計算機,然后重新登陸進去,這個過程密碼信息就被攔截下來了并保存到c:\xxx.log。
=========End
關鍵詞標簽:windows,登陸密碼
相關閱讀
熱門文章 如何修改服務器3389端口 Win11系統(tǒng)怎么設置中文-Win11更改成中文的方法教程 Win11怎么設置同步時間-Win11手動同步時間操作方法 Win11怎么在開始菜單添加快捷方式-開始菜單添加快捷方式操作方法
人氣排行 [聲音故障]XP沒有聲音,丟失Windows Audio服務(AudioSrv)[警告:2003不一定適用 解決Windows 7黑屏的有效方法 windows2003中關于軟路由設置方法的具體介紹 Windows不能在本地計算機啟動OracleDBConsoleorcl 一個空文件夾刪不掉的解決辦法 微軟Windows錯誤代碼大全(2) 用Windows命令行實現(xiàn)自動SSH代理 Windows 7加XP的局域網(wǎng)搭建與文件共享