宽带拨号连接密码恢复原理

2008-04-09 04:12:38来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


编者按:在读者来信中,经常有朋友询问如何做一名成功的黑客或安全专家,如何才能找到好的安全技术学习方法。其实,除了掌握一些必备的基础知识和工具外,还要懂得编程等技术;另外攻防思路的养成和培训也是很重要的。因为技术可以通过努力学习而有所成就,但攻防的思维方式即使苦心钻研往往也无大的收获,就得多多借鉴高手的经验了。在本文中,作者通过对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
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:黑客攻击方式的四种最新趋势

下一篇:黑客营传奇系列之五:十面埋伏