宽带拨号连接密码恢复原理
2008-04-09 04:12:38来源:互联网 阅读 ()
编者按:在读者来信中,经常有朋友询问如何做一名成功的黑客或安全专家,如何才能找到好的安全技术学习方法。其实,除了掌握一些必备的基础知识和工具外,还要懂得编程等技术;另外攻防思路的养成和培训也是很重要的。因为技术可以通过努力学习而有所成就,但攻防的思维方式即使苦心钻研往往也无大的收获,就得多多借鉴高手的经验了。在本文中,作者通过对NT平台拨号连接密码恢复原理的研究,层层索引,步步入微的思维方法就值得推荐。 ??前段时间我的ADSL密码忘记了,但幸好还保存在拨号连接里面,于是我到网上找了些星号密码显示工具,可惜不起作用。后来找到一种名为Dialupass的工具,这家伙不负我所望,把密码给我还原出来了 (用的Dialupass v2.42,我的系统是Windows XP) 。抱着浓厚的兴趣,我决定深入研究。略有收获,愿与大家共享。 ??Dialupass星号密码显示之谜 ??看上去,Dialupass是非普通的星号密码显示工具,那它的原理是什么呢?上Google查了一番,没找到相关资料。一生气便抄起家伙——Windbg,准备把它大卸八块。郁闷的是,用Windbg加载后,密码就不能还原出来了,显示的是星号。换替补Ollydbg上场,情况依旧。怪了,莫非这小工具有Anti-Debug功能?当时只是一丝怀疑,因为实在不相信这样的小工具作者会花心思来保护。 ??小知识: ??Windbg工具: ??Windbg是微软开发的免费源码级调试工具。可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。 ??Anti-Debug技术: ??Anti-Debug,即反跟踪技术。防止 Cracker 用 SoftICE 之类的调试器动态跟踪,分析软件。反跟踪技术一般是具有针对性的,即针对某种调试器的反跟踪,而不能防止所有的调试器跟踪。 ??在用S-ICE跟踪的过程中,发现有这么一个调用:GetProcAddress(xx, “IsDebugPresent”)。原来真的有Anti-Debug功能,好在比较简单。统计了一下,总共有五处进行了Anti-Debug检查。 ??OK,情况查明了,便换回Windbg来调试。在Windbg里面有这么一个断点可绕过Anti-Debug检测:bp KERNEL32!IsDebuggerPresent “g poi(esp);r eax=0;g”。 ??花了些时间跟踪了一下,把Dialupass恢复密码的流程都搞清楚了。这小程序猫腻还挺多的,总结如下: ??1. 关键函数不直接调用,而是用LoadLibraryA和GetProcAddress来获取函数地址后再CALL;
??2. 函数名是经过编码的,反汇编后看字符串是看不到的;
??3. 关键地方一概用花指令来迷惑你和反汇编软件。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:黑客攻击方式的四种最新趋势
下一篇:黑客营传奇系列之五:十面埋伏
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash