CVE-2015-7755: Juniper ScreenOS认证后门分析

华盟原创文章投稿奖励计划

         CVE-2015-7755: Juniper ScreenOS认证后门分析

  此声明涉及两个不同的问题;一个通过VPN实现的后门使恶意窃听者破解流量,以及另一个后门在SSH和Telnet防护进程中允许攻击者绕过身份验证。不久后,Juniper网络发布了这个声明,FoxIT的一名员工表示,他们能够在6小时之内破解后门密码。一个快速Shodan检索发现约26,000个

  面向Internet的NetScreen设备使用公开的SSH 。鉴于这一问题的严重性,我们决定进行调查。

  Juniper网络公司的顾问提到,版本6.2.0r15到6.2.0r18和6.3.0r12到6.3.0r20受到影响。Juniper网络提供了新的6.2.0和6.3.0版本,还重建了省略了后门代码的旧包。重建后的旧包版本有“b”后缀,并有一组很小的变化,这使它们成为分析的最佳选择。为了分析此固件,它必须被打包然后解压缩。该固件包含一个二进制的ZIP文件。这个二进制是一个解压缩的存根,有一个gzip压缩的内核。x86图像可以很容易地用binwalk提取,但获取XScale图像需要做更多的工作。ScreenOS不是基于Linux或BSD的,而是作为一个单一的整体的内核运行。该SSG500固件使用x86架构,而SSG5和SSG20固件使用的是XScale(ARMB)架构。解压缩的内核可加载到IDA Pro以便分析。作为分析工作的一部分,我们已经取得了解压缩二进制文件,可以从GitHub仓库获取。

  与ARM相比虽然大多数人都更为熟悉x86,但是由于编译器输出最小的变化,ARM的二进制文件更容易进行比较。为了加载SSG5(ssg5ssg20.6.3.0r19.0.bin)固件到国际开发协会(IDA),

  应该选择ARMB CPU,使用0x80000负载地址和文件偏移量0x20。一旦二进制被加载,它有助于识别和标记常见功能。在搜索文本“STRCMP”来找到一个sub_ED7D94函数引用的静态字符串。观察串输出,我们可以看到一些有趣的字符串引用,包括auth_admin_ssh_special和auth_admin_internal。搜索“auth_admin_internal”找到sub_13DBEC功能。这个函数有一个6.3.0r19b固件中不存在的“STRCMP”调用:

 CVE-2015-7755: Juniper ScreenOS认证后门分析

  该STRCMP调用的参数是

          CVE-2015-7755: Juniper ScreenOS认证后门分析

  虽然攻击者一旦获取权限也可以删除该日志,但是任何发送到集中记录服务器(或SIEM)的日志都将被捕获并且可以用来触发警报。

  FoxIT形成了一整套Snort规则可以使用后门密码通过Telnet来检测权限并且建立到ScreenOS Telnet或SSH服务的任何连接访问:

       CVE-2015-7755: Juniper ScreenOS认证后门分析

    如果你正在尝试更新一个ScreenOS系统,或遇到任何和权限密码有关的问题,请参考Steve Puluka的博客文章

  我们要感谢Comsecuris的Ralf-Philipp Weinmann,他帮助拆包和分析固件,还要感谢Fox-IT 的Maarten Boone确认我们的调查结果,并提供上述的Snort规则。

原文地址:https://hack.77169.com/201512/221608.shtm

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容