屌丝の逆袭——如何干掉一个黑客


发布人:admin分类:网络安全浏览量:1084发布时间:2017-12-12

最近,在搜检垃圾信息时,我偶然看到了这样一个很普通的邮件。它使用了一个很简单的编造八卦的伎俩,推测奥巴马的性取向,并提供了一个指向一个证明图片的链接。

这条垃圾信息没有什么特别的,但链接指向的这个具有双重后缀的,叫做“you.jpg.exe”的文件却有点研究价值。出于好奇,我把这个文件下载下来,检查它会干些什么事。

我首先做的是看看这个文件真正的文件类型。很显然,它不是一个关于奥巴马的图片,而是一个可以自解压的RAR文件。

通过RAR提取工具,我打开了这个自解压文件,看到了里面的内容。

解压了“you.jpg.exe”,检查里面的每一个文件,但发现它们都是经过加密的。于是,我在测试机上直接运行了“you.jpg.exe”,看看会有什么事情发生。双击它后,下面的这个图片跳了出来。嘿嘿,果然不是奥巴马。

在后台,下列文件被自动安装到了Windows System32目录下:

bpk.dat
bpk.exe
bpkhk.dll
bpkr.exe
inst.dat
pk.bin

而且,在注册表里创建了一个自动运行的autorun命令:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
bpk =

我在谷歌上搜索这些文件名称,找到了一些有用的信息,测试机上被安装的这些文件是一种键盘监控程序,特别之处是,这是一款商业版的软件,来自 Blazing Tools公司,叫做Perfect Keylogger (PK)。这款键盘监控软件可以通过正常的渠道购买和合法的使用,公开宣传功用是监控孩子或员工的上网行为,等等。你可以想象,它同样可以拿来做坏事。

我的分析到这儿差不多准备结束了。但几分钟后,有趣的事情出现了。监控软件连接上了一个远程的FTP服务器,这样我就有了机会捕获这个入侵者的FTP帐户信息了。

通过拦截到的用户名和密码,我登入了这个FTP服务器,发现了大量的存放有监控日志和受害人桌面屏幕截屏的文件夹。从这些数目众多的日志就可以看出,这个垃圾信息制造者的一条八卦信息的伎俩是多么的有效。

下面是这个FTP服务器的注册信息:

我还不想就这么结束,我对这个监控软件的安装程序做了更进一步的研究,我希望能找到这个窃听事件的幕后人物。

从这个软件的网上帮助页面上的信息中得知,这个程序有一个快捷键能把隐藏着的管理员控制界面或系统托盘图标调出来。缺省的快捷键是组合的 CTRL+ALT+L,但我试了一下,不好使。于是我使用暴力方式尝试各种键组合,终于让我找到了正确的按键。但令人沮丧的是,出现的是下面的窗口:

在打算反编译这款软件、破解它的密码前,我在网上搜索了一下,发现了一些提示。我找到了Chris Pogue的个人博客, 他很巧是在Trustwave SpiderLabs的一位同事,之前也碰到过这种软件。在他的博客里,他指出密码和一些其它配置属性都存放在一个叫做PK.BIN的加密文件里,监视数 据存放在一个叫BPK.DAT的加密文件里。他还说,这些文件可以通过简单的对字节进行和0xAA的XOR运算破解。

我猜测Chris分析的是一个老版本的,因为对0xAA进行XOR并不能解码配置文件。然而,从转换的BPK.DAT文件里可以看出,这种XOR操作还是部分的有效的,为了让转码的效果更好看,我使用了双字节0xAA, 0×00进行XOR操作:

我更感兴趣的是PK.BIN这个文件,因为里面存放着这款软件的详细配置信息,其中可能包含这个软件入侵者的信息。可这需要更多的工作,因为很显然,简单的与0xAA进行XOR操作是不能解码的。所有我猜测很可能需要另外一个不一样的XOR值。

以文本模式查看这个文件是下面这个样子,注意看那些很多重复的片段!

在十六进制模式中,我取出这些重复出现的字符,把它们进行XOR运算:

通过一些python脚本,使我破译了这个文件:

if len(sys.argv) > 1:
    pkhandle = open(sys.argv[1],'rb')
    pkbuffer = pkhandle.read()
    pkhandle.close()

    key=[0x0D,0x0A,0x08,0x05,0x01,0x02,0x06,0x03,0x03,0x0E,0x01,0x08,0x03,0x0C,0x09,0x07,0x05,0x0D,0x0C,0x0B,0x03]
    dec = ''
    ctr = 0
    for i in range(11,len(pkbuffer)):
        a= ord(pkbuffer[i])
        b =key[ctr%len(key)]
        x = a^b
        dec = dec+(chr(x))
        ctr+=1

    dechandle = open('pk.dec','wb')
    dechandle.write(dec)
    dechandle.close()

瞧!(提示:我涂掉了一些细节,以保护FTP服务器上的受害人的信息不外泄)

解码后的PK.BIN文件向我展示了足够的信息让我能进入管理员控制面板,包括这款软件的管理员密码,FTP服务器密码,软件的购买许可证注册姓名和注册号。我输入管理员密码,很好用,里面我看到了入侵者要窃取哪些信息,以及更多的关于软件的配置信息。

在配置文件里,软件许可证的注册姓名是Charles Onuigbo。

现在,我不确定Charles Onuigbo就是这个入侵者,或真有其人。唯一值得一提的是,这是个在尼日利亚——垃圾邮件制造之国——一个非常常见的名称!

我用邮件向ISP举报了这个FTP站点,希望这个站点能够尽快的被关闭。

更新:我收到了管理这台服务器的公司的一份邮件,里面写到:

"你好-
不知道我的同事是否就此事给你回复过。
我们已经禁止了你所说的这个帐号对这个服务器
的访问权限... "

我再次尝试登录这个FTP服务器,确认这个恶意的FTP帐号已经被封掉了。感谢Liquid Web公司的Alex Kwiecinski和你们团队行动的这么迅速。

转自:programmeme


被黑站点统计 - 文章版权1、本主题所有言论和图片纯属会员个人意见,与本文章立场无关
2、本站所有主题由该文章作者发表,该文章作者与被黑站点统计享有文章相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和被黑站点统计的同意
4、文章作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、被黑站点统计管理员有权不事先通知发贴者而删除本文

免责声明

本站主要通过网络搜集国内被黑网站信息,统计分析数据,为部署安全型网络提供强有力的依据.本站所有工作人员均不参与黑站,挂马或赢利性行为,所有数据均为网民提供,提交者不一定是黑站人,所有提交采取不记名,先提交先审核的方式,如有任何疑问请及时与我们联系.

admin  的文章


微信公众号

微信公众号


Copyright © 2012-2022被黑网站统计系统All Rights Reserved
页面总访问量:13516873(PV) 页面执行时间:75.24(MS)