HITB 2020:二进制漏洞挖掘仍是会议主流方向

作者:广东南方信息安全研究院 | 国际 2020/12/18 23:15:11 82
文章来源:http://riusksk.me/2020/06/07/HITB-2020:二进制漏洞挖掘仍是会议主流方向/


本周Hack In The Box官方已经将大会演讲视频上传到YouTube,之前在官网有提供部分议题的pdf下载,但有些未提供的议题,这次也公开了视频,可以看到议题ppt内容。

今年的议题更多集中在二进制漏洞挖掘上,占比43%,而这些议题涉及(Windows、macOS、IoT、工控等等),其它议题方向包括恶意软件、二进制分析工具、容器安全、漏洞奖励计划等等,可以看出当前工业界的一些研究议题,还是比较喜欢二进制漏洞挖掘这个方向,这次一个Web相关议题都没有。

精彩议题推荐

1、60 CVEs in 60 Days

img

主要分享Windows平台下高权限进程的Symlink攻击(高权限进程在操作文件时,未作严格的权限校验,导致攻击利用符号链接到一些受保护的目录文件,比如C盘的系统DLL文件,后面系统或应用去自动加载时,实现代码执行并提权),这种攻击方式最早是由Project Zero大牛James Forshaw公布的,当时还开源了个利用测试工具(https://github.com/googleprojectzero/symboliclink-testing-tools) ,指定目录参数来测试,但它还算不上完整的漏洞挖掘工具。

漏洞原理较为简单,关键在于如何批量自动化挖掘,为此作者实现了一款叫 Ichanea 的自动化漏洞挖掘工具。

1.29.54

原理:通过过滤驱动捕获文件操作相关的IRP包,然后获取归属进程的相关信息,包括路径、进线程token等等,然后判断是否为高权限进程,若是就拿Token去检测文件的访问权限,如果可以就发消息给高权限的服务进程,创建/RCP/Control的加载点及符号链接进行DLL劫持测试,从而将监控、发现和利用集成一体。

最后在26家厂商(包括微软、Intel、Adobe、华为等等)产品中,挖到上百个漏洞,其中已有60个CVE致谢,产量颇丰。

2、Pwning Adobe Reader Multiple Times with Malformed Strings

屏幕快照 2020-07-05 下午1.30.18

腾讯玄武实验室出品,分享Adobe Reader在处理字符串时的安全问题。通过PDF JS来构造恶意字符串去触发,JS上的漏洞也更便于写exploit。虽然Adobe用了一些自定义的字符串安全处理函数,但其使用不当导致仍会造成漏洞。主要有两方面原因:

1、传错参数,比如拷贝字符时max_bytes参数误传0x7FFFFFFF,可能造成溢出;

2、字符串类型检测不当,比如误将ASNI当作Unicode字符串处理,千万类型混淆漏洞。

感觉这个攻击面还是有点偏门,找到一块新大陆,刷起漏洞来应该很爽,但估计也就一波过,可能没剩下啥了。

3、Exploiting directory permissions on macOS

屏幕快照 2020-07-05 下午1.30.30

有点类似前面Windows Symlink攻击提权的思路,介绍了macOS下系统对文件及目录的权限管控方式,用fs_usage去监控进程的文件操作行为,从而找出一些可能被用于提权的目录/文件。利用的正是文件与目录高低权限的差异化,借助软硬链实现对受保护文件的越权操作。有些只能写,但内容不可控,或者只能删除,也有可被用于root提权的漏洞。最后作者也简单地介绍一些文件操作方面的安全建议,比如对于安装器,若是/tmp就生成随机名目录,其它的要控制好权限,比如就root权限,其它则收回,安装前清理目录,删除移动文件时避免支持链接方式等等。

4、Documents of Doom – Infecting Macos Via Office Macros

屏幕快照 2020-07-05 下午1.31.01

img

以前Office宏病毒在Windows还是流行过一段时间的,其实macOS上也有,作者就列举了2017、2018、2019年的三次真实的宏攻击案例,也介绍了olevba之类的分析工具。

除此之外,还介绍了一些mac版Office沙盒逃逸的漏洞,用户打开doc后,可以无提示无交互的实现代码执行。作者自己也挖过一个沙盒逃逸漏洞,正是利用Python这条漏网之鱼,于用它将app添加版系统的自启动项,实现非沙盒下的执行权限。

5、Fuzzing File System Implementations to Uncover Security Bugs

屏幕快照 2020-07-05 下午1.31.56

PPT上写的关键信息不多,但重要的是作者把工具开源了,针对BSD文件系统(支持FFS、UFS、EXT、ZFS文件系统格式)进行Fuzzing,工具地址:https://github.com/0xricksanchez/fisy-fuzz 。所以重点可以看下该工具,支持Ubuntu,要求KVM、QEMU和libvirt,采用的是暴力Fuzzing 文件系统,直接用到了radamsa,自己也作了全局的随机变异,然后尝试加载,若加载成功就调用syscall执行一些文件操作,看是否崩溃,最后再借助虚拟机快照还原运行环境。

屏幕快照 2020-07-05 下午1.32.14


完整议题列表

  1. 60 CVEs in 60 Days
  2. The State of ICS Security: then and Now
  3. Pwning Adobe Reader Multiple Times with Malformed Strings
  4. Open the Gates – the (In)Security of Cloudless Smart Door Systems
  5. Hiding in Plain Sight: Analyzing Recent Evolutions in Malware Loaders
  6. Building Next-gen Security Analysis Tools with Qiling Framework
  7. Exploiting Directory Permissions on macOS
  8. Documents of Doom – Infecting Macos Via Office Macros
  9. From Man-in-the-Middle to Privesc and Rce: Exploiting the Netlogon Protocol
  10. The Dna of Hidden Cobra – a Look at a Nation State’s Cyber Offensive Programs
  11. Prisoner Number 6
  12. Fuzzing File System Implementations to Uncover Security Bugs
  13. Breaking and Securing Cloud Platforms
  14. Army of Undead: Tailored Firmware Emulation
  15. Bugrank: a Community Bug Bounty Platform
  16. Virtual Lab: Bare-metal Reverse Engineering & Hardware Hacking

议题ppt及视频地址参见:https://conference.hitb.org/lockdown-livestream/

推荐关注

指导单位
广东省公安厅网络警察总队 | 广东省信息安全等级保护协调小组办公室