Any.Run:交互式恶意软件分析工具
一、前言
就在昨天,Any.Run交互式恶意软件分析工具沙箱服务的免费社区版已对公众开放,任何人都可以在官网注册账户,实时、交互式地分析特定文件。
Any.Run最早由安全研究人员Alexey Lapshin于2016年创立,现在该团队由5名开发者所组成,致力于整个平台的改进工作。
Any.Run是一款完全交互式的工具,这也是该工具与其他沙箱分析工具的区别所在。这意味着用户可以上传文件,在分析文件的同时与沙箱服务实时交互,而不是像其他工具那样,用户需要上传文件然后等待沙箱生成最终报告。在这种环境下,即使待分析的程序需要用户点击按钮、或者待分析的文档需要用户启用某些内容或者宏功能,Any.Run也可以完全胜任。
比如,假设我们需要分析一个广告软件包,该软件包在安装其他有害程序之前,需要我们点击各种安装提示窗口,那么我们可以使用Any.Run完成这一任务。
根据Any.Run向BleepingComputer透露的消息,该工具“不适用于不需要用户干预的大规模检测场景,也不适用于针对线程和所执行的进程代码的深入研究场景”,相反,该工具可以为需要用户交互的恶意软件分析场景提供服务,也可以分析攻击向量、新型漏洞利用技术PoC代码、多组件漏洞利用攻击包。
二、使用Any.Run分析文件
Any.Run使用起来非常简单。
首先,我们需要新建一个任务,选择待分析的文件或者URL地址、选择沙箱所使用的操作系统环境(Windows 7/8.1/10)、要使用的网络连接选项、需要预装的软件以及交互式会话的持续时间。
图1. 创建新的分析任务
准备就绪后,我们可以点击“Run”按钮。Any.Run随后会搭建我们配置的环境,展示可以交互的沙箱环境,然后运行我们请求的程序。
图2. 启动沙箱
从此时起,我们可以与桌面环境交互、点击按钮、打开开始菜单以及用户浏览器、打开注册表编辑器、打开任务管理器,也可以像平常那样运行应用程序。不同的地方在于这个沙箱会记录下所有的网络请求、进程调用信息、文件活动信息以及注册表活动信息,如下图所示。
图3. 监控应用活动轨迹
通过这种方法,我们可以实时观察所有的网络请求、正在创建的进程以及文件操作轨迹。如果我们需要深入分析某个网络请求,可以点击这个请求,查看具体的请求数据以及响应数据。
图4. 详细网络请求信息
我们也可以点击已启动的进程,观察该进程所修改的文件、对注册表做了哪些改动、使用了哪些库等等。
图5. 进程活动轨迹
从这些方面我们可知,Any.Run的确可以帮助我们轻松分析恶意软件样本,如果我们在分析过程中需要某些交互操作时,Any.Run更是不二选择。
三、更多功能有待补充
虽然沙箱组件非常给力,但还有一些功能有待补充。比如,目前我们没办法生成对应于特定会话的分析报告。根据Any.Run的说法,他们目前尚未制定计划,该功能的上线时间需等待后续通知。
在免费提供的这个版本中还存在各种限制。比如,使用免费版服务时我们无法使用64位操作系统,样本文件大小也有所限制,并且我们与沙箱的交互时间同样受限。
根据Any.Run向BleepingComputer透露的消息,该团队计划添加不同的订购级别,可以为公众提供差异化的服务。目前我们已经可以在官网上看到这些差异化方案,但具体定价尚未给出。
图6. 差异化服务方案
虽然大家对Any.Run的热情异常高涨,强烈要求及时提供这些服务,但Any.Run表示只有在服务完善并处于稳定状态后才会对外提供更多服务。在这个时间节点之前,用户只能访问免费版的服务,但也足以应付许多场景。