ChatGPT是人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具 , 使用了Transformer神经网络架构 , 也是GPT-3.5架构 , 这是一种用于处理序列数据的模型 , 拥有语言理解和文本生成能力 , 尤其是它会通过连接大量的语料库来训练模型 , 这些语料库包含了真实世界中的对话 , 使得ChatGPT具备上知天文下知地理 , 还能根据聊天的上下文进行互动的能力 , 做到与真正人类几乎无异的聊天场景进行交流 。ChatGPT不单是聊天机器人 , 还能进行撰写邮件、视频脚本、文案、翻译、代码等任务 。
接下来就让我们看看ChatGPT如何帮助我们解决一些常见的逆向工程和恶意软件分析难题 。
1.学习如何更有效地使用逆向工程工具
软件工具通常带有不同程度的内置帮助 , 它们所缺少的通常由专门的用户论坛和问答网站(如Stack Overflow、Stack Exchange等)来弥补 。ChatGPT为快速获得逆向工程工具的帮助增加了另一条途径 。
无论你是使用IDA Pro、Ghidra、Radare2、Hopper、Cutter还是其他一些逆向引擎平台 , ChatGPT都能提供帮助 。虽然所有这些平台都包含自己的内置帮助功能 , 但如果ChatGPT的培训模型中已经涵盖了这些问题 , 那么你可能会发现它能够回答与你自己的用例相关的特定问题 , 这是一种更快完成任务的方式 。
文章插图
使用ChatGPT作为radare2的交互式帮助助手
2.自学汇编语言
ChatGPT擅长传达相关信息 。
例如 , ChatGPT提供了关于函数调用基础知识和相关堆栈内存管理活动的回答 。
文章插图
我们可以要求ChatGPT在其输出中或多或少详细一些 。例如 , 在这里 , 我们希望得到一个堆栈帧的视觉表示 。
文章插图
ChatGPT描述了一个堆栈框架
汇编代码是特定于平台和编译器的 。如果向ChatGPT发出的程序集相关问题不包括与编译程序集的平台(即指令集)或更高级别语言相关的特性 , ChatGPT将提供相关的免责声明信息 , 以正确定位答案 。
ChatGPT可以帮助攻克汇编难题的另一种方式是将用户熟悉的高级代码转换为汇编代码 。这通过将熟悉的概念映射到其内部来促进学习 。我们观察到 , ChatGPT可以很好地处理各种主题 , 包括在学习汇编时至关重要的重要概念 , 例如指针和函数指针调用 。ChatGPT的响应通常包括带注释的汇编代码 , 这进一步提高了学习效果 。
文章插图
文章插图
ChatGPT将高级代码转换为程序集
3.了解源代码如何转换为反汇编
作为恶意软件分析师 , 我们大部分时间都是从反汇编者的角度来看待恶意软件 。编程语言的经验和知识在这里至关重要 , 但ChatGPT可以帮助我们了解已知源代码在反汇编程序中的样子 , 以及代码更改如何在反汇编中反映出来 。新手可以通过编写自己的源代码来推断一些反汇编代码可能会做什么 , 并查看它是否与他们正在查看的反汇编类似 。这可以帮助经验不足的分析人员加深对恶意代码的理解 。
文章插图
文章插图
4.快速编写PoC源代码
推荐阅读
- 总结2022年威胁隐私和安全的6大“罪魁祸首”
- 编译器的自动内存管理,静态的GC算法
- 网络安全的未来趋势
- 筷子多长时间换一次比较合适?筷子的标准长度是七寸六分?
- url指的是什么包括哪几个部分 url指的是什么?
- 贝克汉姆|鱼和熊掌都要的贝克汉姆:收了13亿工资却不干活,中途还跑去讨好王室
- 长城结构
- 高空抛物的危害和认识
- 24时计时法
- 自然界的水循环过程包括