5

智能漏洞攻防探索 Note

 3 years ago
source link: http://zeroyu.xyz/2020/11/26/Intelligent-Vulnerability-Attack-and-Defense/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

智能漏洞攻防探索 Note

Z3R0YU
2020-11-26

0x00 前言

PS: 本笔记来自张超教授的现场talk总结

漏洞攻击 –> 漏洞
漏洞防御 –> 补丁

漏洞攻防路线:
机器辅助人来挖(CTF, 主要依靠个人能力) –> 自动攻防(人的经验规则为主,启发探索为辅,无法攻防博弈) –> 智能攻防(智能为主,规则经验为辅)

0x01 稍等下,马上就来

考虑到知识版权问题,PPT图片部分暂时删除,随后会以个人理解的角度来对其中的内容进行表述

0x07 Q&A

  1. 目前好用的工具?
    SVF 静态分析工具
    DFT 动态分析工具 - 污点跟踪
    angr 符号执行 -> libc的库函数都是模拟的不准确
    S2E 符号执行

  2. 漏洞挖掘评价问题?
    CVE 是一个侧面,目前最想看到的是在相同数据集上的不同表现
    benchmark 没有统一,所以能测的就都测一下
    fuzzing都说自己的策略好,但是这个属于无穷空间探索问题,并不能说所有情况下该策略都能比别人好,所以就需要实验支撑。但是实验是有随机性的。

  3. 请求建议一下,如何在程序分析中培养自己的能力?
    程序分析基本已经进入到了瓶颈期,想做大突破就比较难。(也就是静态分析技术,目前很多采用AI技术应用到静态分析上的,所以要改进的话可以从AI角度入手)。建议入门还是先熟悉目前的经典解决方案。数据充分的情况下,机器学习的效果可能比人提出的规则要好一些。

  4. 未来Driller这种模糊测试的情况的发展?
    符号执行虽然在学术界上价值高,热度也不低,但是在很多情况下应用不起来,比如在chrome的测试上。所以目前该组还是在改进fuzz本身上做研究。

  5. 前面提到的arm上的防护研究?
    在RISC-V上做了验证。敏感数据的特点->不应该被任何人修改,应该是只读的。如果敏感数据是从可修改区来的,那么就会出现问题。所以从硬件上限制了敏感数据的来源,如果不是来自只读区就限制。
    arm pac (pointer authentication code) 理论上是可以绕过的,mte和pac相结合实现新的防护方法。
    在硬件上做地址空间隔离,同进程内的隔离,因为有些是可控的有些是不可控的。

  6. 接下来的fuzzing应该更关注什么方面?
    目前更多的关注的是fuzzing在复杂目标上的应用,比如协议、驱动。协议的状态信息的自动化提取。驱动的模糊测试。自动提取知识来引导模糊测试的进行。目前在往更实用的方面来做。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK