等等,Cain 不是通常被用于嗅探吗?它竟然还能还原加密密码?
没错,这确实是 Cain 一个不常被提及但非常实用的技巧——尤其是当你从管理员电脑中提取到 FlashFXP 的密文时。其原理其实很简单:任何登录信息在提交时,最终都必须以明文形式发送,否则服务器无法识别。这与网页木马的解密机制类似——木马在本地还原为正常网页代码后,浏览器才能执行。FlashFXP 也是同样的道理。
我们先来看看 FlashFXP 的加密密文长什么样。它的连接记录保存在 Stats.dat 文件中。
打开本机的 Stats.dat 查看:
500)this.width=500" title="点击这里用新窗口浏览图片" />
内容一目了然:
IP:60.169.2.160
User=sXXXXdio
Pass=……一堆密文
有人可能会问——既然已经有了配置文件,直接连接上去获取 webshell 不就好了?何必费劲还原这个密码?没做过渗透测试的人确实会这么想。但换个角度思考:如果这个管理员的 FTP 密码恰好与服务器密码相同呢?或者就是域名管理密码呢?很多时候,网站的密码都是统一的,甚至直接以明文形式保存在服务器或管理员 OA 系统的某个角落。
在渗透过程中获取一个明文密码,对于摸清管理员的密码命名习惯来说,价值巨大。废话不多说,到底实不实用,谁用谁知道。现在打开 Cain。
首先选择网卡,点击配置图标。
500)this.width=500" title="点击这里用新窗口浏览图片" />
500)this.width=500" title="点击这里用新窗口浏览图片" />
确定后点击 Sniffer 开始嗅探,右键扫描局域网。
500)this.width=500" title="点击这里用新窗口浏览图片" />
然后点击左下角的 ARP 标签。
500)this.width=500" title="点击这里用新窗口浏览图片" />
再点击上方的蓝色加号,添加要嗅探的目标。
500)this.width=500" title="点击这里用新窗口浏览图片" />
左侧选择路由器地址,右侧建议全选目标 IP。这里全选,然后确认,再点击黄色辐射图标,嗅探就正式开始了。
500)this.width=500" title="点击这里用新窗口浏览图片" />
进入 Password 页面,这里会显示嗅探到的密码。一开始是空的。现在本机启动 FlashFXP 进行连接,然后观察 Cain 的嗅探结果:
500)this.width=500" title="点击这里用新窗口浏览图片" />
可以看到,刚才输入密码时,Cain 已经将其还原成了明文。拿到明文后具体怎么用,就看各位的本事了。这个密码可能不只是一个 FTP 账户的凭证——它很可能就是服务器、域名管理,甚至数据库的入口。思路,一定要打开。
