生活好像被复制粘贴了,除了自己没人知道自己的变化

前言

  GPT 已经推出这么久了,很多安全产品或者平台已经内置了大预言模型。熟练使用 GPT 能让你在掌握新的安全知识和分析研判过程中事半功倍,下面是一些安全场景的 GPT 使用技巧。

常用功能

脚本开发

  快速编写一些脚本(python,sql,VBS,C/C++ 等)。但是会有一些问题:
   1、调用不存在的函数。
   2、使用不安全的函数。
   3、使用某些老版本库才有的函数。
   4、不支持太复杂的逻辑,GPT 容易误解。

  举例:

python 脚本编写
python 脚本编写

  常规出现报错就直接把报错提示丢给 GPT,它会进行适当修改。

代码分析

  相比较编写代码,GPT 分析代码更加准确,只需要将需要分析的函数发送即可,即使有时调用其它自定义函数,GPT 也能根据函数名,变量名特征大致进行分析。不过 GPT 文本输入有长度限制,所以需要进行分开发送,建议使用脚本对每个函数单独进行分析。

代码分析
代码分析

反汇编分析

  拿到二进制样本,除了丢进沙箱还可以只用 GPT 进行反汇编分析,将其拖入到 IDA 或者 x64dbg 中,然后将汇编代码复制出来放入反汇编中。如果是动态分析复杂样本,找到了关键解密部分代码,还可以使用 GPT 帮助把汇编代码转成 C 或者 python。目前已有 IDA 插件结合 GPT 进行二进制分析。

webshell 分析

  混淆不是很离谱的 webshell 可以直接分析功能。但面对大马,可能会出现输入问本长度不够的情况,还是只能通过分段进行分析。面对 webshell 加密通讯,如果拿到了 webshell,可以考虑使用 GPT 实现通信解密功能(现在很多 webshell 的通讯密钥就写在代码中)。

辅助研判

  护网过程中公司提供的 GPT 平台发挥了巨大作用。将可疑 payload 脱敏后发送至 GPT,直接询问是否存在可疑行为即可。效率高,比大部分护网请的外援研判能力强,在护网前对外援进行 GPT 使用培训是非常有必要的。但是如果经过复杂混淆,则需要线进行解密再分析,下面是某个混淆 webshell 解密后的分析:

某次解密后 payload 分析
某次解密后 payload 分析

快速了解安全某方面信息

  网络安全涉及知识面比较广,有时候需要现学现用。面对未知的领域,仅仅通过查看资料博客文档还是会出现一些疑问,这时结合 GPT 能帮助解决详细疑问,比如概念的具体定义,两个场景中的区别。

概念问题
概念问题

给一个快速的解决方案

  当客户需求的时候,能快速给出解决方案。但是只能作为应急使用,方案的靠谱程度也需要安全人员自己衡量。可以作为打开思路的突破口。

不建议使用的方法

查询 CVE 相关信息

  GPT 不会回答它不知道,它会一本正经的胡说八道。你问它相关 CVE 问题时,它大概率会给你一个看起来非常真实的漏洞描述和信息,但是和真是的 CVE 完全对不上。

推荐安全资料

  GPT 完全胡说八道,书名,作者,简介,目录都是假的,都是 GPT 生成的,完全不能作为参考。

推荐文章或者开源项目

  半真半假,大部分推荐链接除了非常有名的项目之外访问都是 404。

GPT 解密或者解码

  一定要在网上找在线工具或者手动解。如果非要使用 GPT 的话,则只能让他写解密代码,千万不能让它直接告诉你解码或者解密结果。它会一本正经的胡说八道,对结果准确性不能有保证。连 ASCII 也不要用 GPT 解,经过尝试比如一个字符串 "com.sun.jmx.remote.util.OrderClassLoaders",假设在 webshell 中是 "om.sun.jmx.remote.util.OrderClassLoader" 的 ASCII 编码后再前后拼接一个 c 和 s,让 GPT 解码,它会觉得你这里应该有个 c 和 s,自动给你加上了,导致解码结果出错。