黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 网管频道 >> 入侵检测 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[图文]利用IAT hook实现windows通用密码后门
        ★★★★★

利用IAT hook实现windows通用密码后门

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2008-5-27 9:18:30

windows有通用密码吗?
去问比尔大叔吧。

先不管是不是真的有,我们可以自己实现一个这样的后门。

先简单介绍一下windows登陆过程中的一些过程。
winlogon进程用gina.dll获取用户名和密码,通过LPC传给lsass进程。
然后lsass进程调用默认认证包msv1_0.dll来验证密码的对错。
而msv1_0则从SAM中获得用户的信息,包括密码的哈希。

要实现这样一个后门,首先要找到登陆验证这一系列函数的最底层的一个,然后在那里做手脚。
很明显,这个最底层的函数在lsass进程的msv1_0.dll模块中。

lsass调用msv1_0.dll的是这个函数:

代码:
msv1_0!LsaApLogonUserEx2

LsaApLogonUserEx2 in MSDN

那我们就应该调试lsass进程然后在msv1_0!LsaApLogonUserEx2下断点。
这里我使用windbg和vmware并利用dbgsrv进行远程的用户态调试。
http://blogs.msdn.com/spatdsg/archiv…27/507265.aspx
上面Spat在blog中介绍了如何用dbgsrv调试(Debugging LSA via dbgsrv.exe)。
在虚拟机(被调试端)运行

代码:
dbgsrv.exe -t tcp:port=1234,password=spat

然后在调试端运行

代码:
windbg.exe -premote tcp:server=192.168.1.102,port=1234,password=spat

然后选择附加lsass进程。
但这里我们不能登陆之后再运行dbgsrv,那样dbgsrv就被关掉了,所以我利用windows的任务计划让dbgsrv开机就运行起来。

虚拟机启动后,dbgsrv也起来了,然后用windbg连上并附上lsass进程。
在下了断点msv1_0!LsaApLogonUserEx2后,让lsass继续运行。
然后登陆,果然windbg断下来了。

这个时候给大家介绍windbg的一个强劲的命令,那就是wt,它能所有的记录函数调用关系,一直记录到ret,具体用法请看windbg帮助。
我猜wt是单步运行,所以很慢。
但是wt输出的文本很多,太难看了,于是我写了个python脚本把wt的输出转成一个TreeCtrl,附图:

大家注意看我鼠标点上的那个函数:ntdll!RtlCompareMemory。

[1] [2] 下一页

文章录入:cainiaowang    责任编辑:xinlian 
【字体:
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886