开发人员永远都闲不下来,不管他们是渗透测试人员还是恶意软件作者,而每周几乎都有新的入侵工具面世。
今天我们要了解的是于9月份上线的一款远程访问工具Pupy,它是一款完全由Python写成的工具。它是一种款平台兼容工具,也就是说它能在三大主要操作系统中运行,并且允许攻击者在监控目标时拥有更多的选择。
无文件运行模式
尽管支持三大主要的操作平台,但Pupy在Windows中运行最好,它有着100%的内存功能。由于Pupy的有效负载被编译成一种反射性DLL,将整个Python解释器加载在目标内存中并在不接触磁盘的的情况下运行。这让传统的反病毒解决方案的检测稍微有了难度,并且为任何想要盗取数据的人提供了更多关键事件。Pupy有着模块化的结构,允许开发人员在受感染系统中部署基本的线框,随后根据需要将模块下载到内存中。
通过Pupy模块化结构启动多种攻击
这些模块包含的一些功能包括进入其他在受害者操作系统中运行的进程,在后台运行模块、运行一种交互性逆向shell、并自动化编译命令和参数。
此外,攻击者能够从受感染系统中上传并下载文件、截取屏幕截图、视频截图、记录鼠标和键盘输入内容并执行shell代码。Pupy僵尸和主服务器之间的通信都由SSL(默认)完成,不过其它四种传输渠道也支持通信。
由于Pupy有自己的Python解释器,Pupy模块可以是简单的Python文件或编译的Python C扩展。这让写Pupy文件就变得更加容易,因为Python是当前使用范围最广泛也最容易学习的编程语言。
Pupy的源代码是通过BSD证书发布的,可从GitHub上获取。从这个项目的里程碑拉力看,未来的版本可能可以记录麦克风声音、支持更多的传输层、记录网络流量、而且会在*NIX设备上更加静默。

