ChatGPT在信息安全领域的应用前景

admin 2022年12月27日12:18:01安全闲碎评论35 views3980字阅读13分16秒阅读模式
ChatGPT在信息安全领域的应用前景


一.  关于ChatGPT

据报道,GPT-3.5系列模型自2021年四季度就开始混合使用文本和代码进行训练[1]。而在今年11月30日,OpenAI推出了一款新的自然语言对话模型ChatGPT,该模型是对GPT-3.5中一个2022年初完成训练的模型的微调实现[2]。
在发布至今的一周时间里,ChatGPT模型便受到全球范围的广泛关注,并获得了普遍正面的评价[3]。ChatGPT不仅能够以非常自然的词句与人类用户交流,还能保持聊天过程的上下文状态。不仅如此,ChatGPT在信息行业中的应用也非常令人惊艳,它可以在短短几秒内按照用户的要求编写简单的代码实现。
目前,OpenAI开放了ChatGPT的WEB交互面板https://chat.openai.com/chat,本文案例如无特殊标注均通过该接口运行得到。关于信息安全领域之外的应用,已有大量文章进行探讨,本文不再深入。

二.  ChatGPT在安全行业的应用


2.1  

安全工具开发

首先,既然ChatGPT能够按照用户的要求编写代码,那自然就可以用来制作安全工具(不论是用于进攻还是防御)。目前已经有人指出通过ChatGPT可以生成实际可用的漏洞利用工具[4]:
ChatGPT在信息安全领域的应用前景
图1  通过ChatGPT生成漏洞利用代码
我们粗略地测试了一些用例,大部分情况下都能得到质量上乘的结果。但可能由于测试方法尚不完善,也可能是安全领域的训练样本相对较少,ChatGPT的发挥似乎并不是非常稳定:
ChatGPT在信息安全领域的应用前景
图2  非常不错的功能实现
ChatGPT在信息安全领域的应用前景
图3  虽然有待优化,但姑且实现了功能
ChatGPT在信息安全领域的应用前景
图4  看上去有模有样,但并没有正确实现功能
结果看来,ChatGPT确实能够帮助用户完成相当一部分的代码编写工作,而且代码注释、变量命名等都非常完善。但由于输出质量的不稳定性,这种方法仍然对用户自身的技术水平有一定的要求,至少需要能够验证AI模型输出的代码是否正确。
只要运用得当,ChatGPT将会大大提高安全工具的开发效率,但要想完全依赖该模型完成复杂系统的实现,目前看来还有一段距离。

2.2  

逆向分析

ChatGPT还在逆向分析领域大放异彩。例如,可以用它来分析机器语言ShellCode的功能:
ChatGPT在信息安全领域的应用前景
图5  ChatGPT解析ShellCode。
图片扩散广泛而原始出处不详,有知情者还请留言告知
甚至还有人为知名逆向分析工具IDA制作了一个插件,可以通过OpenAI的API(davinci-003,为GPT-3.5系列中的一个[1])为反编译代码生成注释描述和修复变量名[5]:
ChatGPT在信息安全领域的应用前景
图6  IDA插件Gepetto
我们也进行了一些相关测试,要求ChatGPT对给定的反编译代码进行解释:
ChatGPT在信息安全领域的应用前景
图7  CobaltStrike Beacon中的一个函数,效果还可以
ChatGPT在信息安全领域的应用前景
图8  GMiner中的一个函数,效果一般
ChatGPT在信息安全领域的应用前景
图9  来自一个加有VMP壳的恶意样本,效果不太好
从测试情况看来,如果代码中包含有对标准库或API函数(如上面的LoadLibraryW等)的显式调用,ChatGPT就能够从更抽象的、注重目的而非实现的角度去解释。但除此之外的情况,往往就只会按代码字面意思进行翻译:数据从哪里拷贝到哪里、做了什么加减乘除比较操作等,诸如此类。此外,由于ChatGPT目前开放的接口有输入长度的限制,每次只能输入少量代码,这导致现阶段实际使用起来还是不太方便。

2.3  

安全检查和漏洞挖掘

目前已有很多利用ChatGPT在现有代码中寻找潜在BUG或漏洞的成功案例。对此我们也进行了一些尝试:
ChatGPT在信息安全领域的应用前景
图10  DVWA靶场中SQL注入漏洞页面high.php,ChatGPT正确识别并修复了漏洞
ChatGPT在信息安全领域的应用前景
图11  但ChatGPT给出的漏洞验证脚本明显是不正确的
ChatGPT在信息安全领域的应用前景
图12  DVWA靶场中命令注入漏洞页面high.php,ChatGPT正确识别了漏洞
ChatGPT在信息安全领域的应用前景
图13  给出的测试代码虽然逻辑正确,但受页面中的过滤机制影响,实际上不可用
ChatGPT在信息安全领域的应用前景
图14  ChatGPT确实理解了页面中的过滤机制,但始终无法给出有效的绕过方法
目前看来,ChatGPT确实在一定程度上具备发现漏洞的能力,但还是不太擅长处理较为复杂的漏洞结构。如果要与代码审计等常规方法比较,ChatGPT的准确性和有效性尚需观察。除此之外,受“content policy”影响,通过ChatGPT生成漏洞利用代码时也会受到一些限制。
但ChatGPT的一个优势是能够给出完整且定制化的修复方案。相比传统漏洞扫描或自动化SAST等给出的模板化修复方案而言,ChatGPT对于企业安全运营来说无疑是更具有吸引力的。

2.4  

安全告警评估

告警评估是安全运营过程中费时费力的一环,各个企业SOC至今为止已经采取了各种方法尝试进行告警筛选。ChatGPT能否用于安全告警评估呢?
ChatGPT在信息安全领域的应用前景
图15  Jenkins RCE漏洞利用载荷,ChatGPT给出了非常准确的结论
看上去好像还不错?我们再试试正常业务误报告警载荷:
ChatGPT在信息安全领域的应用前景
图16  一个正常业务误报告警载荷,ChatGPT也给出了正确的识别结论
目前开放的查询接口似乎存在一些限制,查询提交经常失败(可能与包含恶意代码有关)。虽然API具备内置的Base64解码功能,但似乎表现得不太稳定:
ChatGPT在信息安全领域的应用前景
图17  蚁剑WebShell列出目录操作,提交完整请求或请求体都未能正确处理
ChatGPT在信息安全领域的应用前景
图18  但如果单独提交表单参数值,就能得到相对正确的识别结论
菜刀WebShell的情况和蚁剑差不多:
ChatGPT在信息安全领域的应用前景
图19  PHP中国菜刀通信,提交完整请求不能判断
ChatGPT在信息安全领域的应用前景
图20  但提交请求体就可以判断了
我们再追加一些测试用例:
ChatGPT在信息安全领域的应用前景
图21  ThinkPHP RCE漏洞攻击(可能来自某种蠕虫),直接提交完整请求报文即可
ChatGPT在信息安全领域的应用前景
图22  Java反序列化RCE漏洞利用载荷片段,未能正确判断
ChatGPT在信息安全领域的应用前景
图23  GoAhread RCE漏洞利用载荷,未能正确判断
结果看来,ChatGPT在很多情况下确实作出了准确的判断和良好的解释,尤其是对于包含明显操作系统命令、编程语言函数和关键字的情况,几乎都能正确识别,且受混淆措施干扰较小。
但它的效果很不稳定,对输入数据格式要求反复无常,解释信息也时好时坏。对于非文本类的载荷(比如序列化数据、ELF片段等),ChatGPT的识别能力似乎也未达预期。此外,非常致命的一点是,ChatGPT运行起来实在太慢了,根本不可能应对企业SOC庞大的告警数量和实时处理需求。综上,仅针对告警评估任务,现阶段还不适合直接投入使用。
但ChatGPT在告警评估场景中是没有价值的吗?显然不是。长久以来,我们一直苦于无法有效地从告警载荷中提取关键信息——这是人类专家判断告警性质时最关注的因素之一。此前的难点在于,我们很难从告警数据中提取出足以适应现代信息系统复杂程度的,关于操作系统、编程语言、应用组件的知识。一段恶意代码如果成功执行会导致怎样的后果,此前所使用的模型根本不得而知,而这对于准确判断一个告警所指示网络行为的危害程度而言是不可或缺的。
以笔者浅见,ChatGPT通过在代码项目和自然语言上进行训练,确实提炼出了这些目前告警评估任务中最缺失的知识。虽然当前这种文本到文本的聊天机器人模式未能充分满足告警评估的需要,但这种预训练方法和模型如果用于告警评估中的分类任务,想必能够成为非常强大的输入特征或系统单元。

三.  后记和展望

除了上面提到的几种应用之外,目前我们也正在尝试将ChatGPT用于二进制漏洞挖掘、渗透测试用例生成、项目交付报告编写等诸多细分领域。
风云变幻莫能测,且看今朝谁英雄。这份来自NLP学科的大礼包,也许能够给安全行业的发展带来一股新风。
更多前沿资讯,还请继续关注绿盟科技研究通讯。
如果您发现文中描述有不当之处,还请留言指出。在此致以真诚的感谢~

参考文献

[1] OpenAI. Model index for researchers[J/OL] 2022, https://beta.openai.com/docs/model-index-for-researchers.

[2] OpenAI. ChatGPT: Optimizing Language Models for Dialogue[J/OL] 2022, https://openai.com/blog/chatgpt/.

[3] OpenAI. ChatGPT[J/OL] 2022, https://en.wikipedia.org/wiki/ChatGPT.

[4] dyngnosis.无标题[J/OL] 2022, https://twitter.com/dyngnosis/status/1598750927447502848

[5] Ivan K. Gepetto[J/OL] 2022, https://github.com/JusticeRage/Gepetto.


内容编辑:创新研究院  吴复迪
 责任编辑:创新研究院  董炳佑

本公众号原创文章仅代表作者观点,不代表绿盟科技立场。所有原创内容版权均属绿盟科技研究通讯。未经授权,严禁任何媒体以及微信公众号复制、转载、摘编或以其他方式使用,转载须注明来自绿盟科技研究通讯并附上本文链接。

关于我们


绿盟科技研究通讯由绿盟科技创新研究院负责运营,绿盟科技创新研究院是绿盟科技的前沿技术研究部门,包括星云实验室、天枢实验室和孵化中心。团队成员由来自清华、北大、哈工大、中科院、北邮等多所重点院校的博士和硕士组成。

绿盟科技创新研究院作为“中关村科技园区海淀园博士后工作站分站”的重要培养单位之一,与清华大学进行博士后联合培养,科研成果已涵盖各类国家课题项目、国家专利、国家标准、高水平学术论文、出版专业书籍等。

我们持续探索信息安全领域的前沿学术方向,从实践出发,结合公司资源和先进技术,实现概念级的原型系统,进而交付产品线孵化产品并创造巨大的经济价值。

ChatGPT在信息安全领域的应用前景

长按上方二维码,即可关注我


原文始发于微信公众号(绿盟科技研究通讯):ChatGPT在信息安全领域的应用前景

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月27日12:18:01
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  ChatGPT在信息安全领域的应用前景 http://cn-sec.com/archives/1456310.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: