您当前的位置:首页 > 电脑百科 > 人工智能

爆火出圈的chatGPT如何在逆向和恶意软件分析中发挥作用

时间:2022-12-27 14:19:33  来源:网易号  作者:嘶吼RoarTalk

ChatGPT人工智能研究实验室AI target=_blank class=infotextkey>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源代码

ChatGPT甚至可以帮助我们编写测试理论所需的源代码。例如,我们可以问AI以下问题:

然而,有时候ChatGPT需要一点引导。在写完我们请求的函数后,它决定将分解任务委托给我们:

首先,我们从前面的答案中复制代码,然后在给出明确的指令后粘贴它。

现在,我们得到了我们正在寻找的分解结果。


5.指令集之间的转换

鉴于汇编代码是特定于平台的,经验更丰富的逆向工程师可以利用ChatGPT查询不同的指令集,而不是他们已经熟悉的指令集。一种方法是指示ChatGPT将编写在一个指令集中的汇编代码转换为另一个指令集。

ChatGPT将x64汇编代码转换为ARM

这为进一步探索感兴趣的指令集提供了基础,例如,通过查询ChatGPT关于翻译后代码中指令的进一步信息。

ChatGPT解释了blx ARM指令


6. 比较语言或特定于平台的约定

有经验的逆向工程师还可以从使用ChatGPT查询编程语言和平台的内存管理技术的差异中受益,例如调用约定。

ChatGPT比较调用约定

在撰写本文时,ChatGPT正在使用2021年之前的训练数据进行训练。因此,如果某些平台或高级语言的特性在某个时间点之后发生了变化,ChatGPT不会提供当前信息。调用约定更改的一个例子是在Golang语言中从基于堆栈的调用约定转换为基于寄存器的调用约定。

有经验的逆向工程师,特别是恶意软件分析师,可以利用ChatGPT来熟悉日益流行的编程语言的高级结构,以及这些结构是如何在汇编中表示的。例如,内存安全的Golang和Rust越来越多地被恶意软件开发人员采用。


7.分析恶意软件样本中的代码段

ChatGPT能够解释和分析与逆向工程相关的代码,包括伪代码和汇编代码。这使得ChatGPT在分析恶意软件可执行文件的代码段(如函数)时非常有用,主要是因为ChatGPT可以提供代码执行活动的摘要。

这可以显著提高恶意软件逆向工程师的效率。Gepetto IDA Pro插件在IDA Pro中集成了ChatGPT,并查询语言模型以提供由Hex-Rays反汇编程序反编译的函数的含义。

解释代码的能力还可以对代码进行比较,使恶意软件分析人员能够了解不同恶意软件样本实现之间的差异。

为了在分析人员通常需要的描述性级别上总结代码的功能,ChatGPT可能缺少所需的关于分析中的可执行文件的更广泛的上下文,而分析人员可能拥有这些上下文。

假设分析师很少或没有向ChatGPT提供上下文,如果所分析的代码与其目的相关,那么该模型将提供最大的即时价值。在实践中,这通常意味着代码不会调用以ChatGPT未知的方式扩展代码功能的用户定义函数,但如果它调用函数,则它们是已知的、公开记录的库函数。由于ChatGPT是基于公开可用的数据进行训练的,因此语言模型此时可以准确地解释在用户提供的代码中使用这些函数的情况。

例如,如果提供给ChatGPT的伪代码引用了公开记录的库函数,则ChatGPT对代码用途的解释将围绕这些函数的功能展开。

ChatGPT通过解释十六进制射线伪代码来讨论函数的用途

为了从ChatGPT中获得更好的代码分析输出,用户仍然需要:

制定实质性的ChatGPT查询,以便提供所需的上下文;

与ChatGPT进行对话,在对话期间提供上下文,并完善ChatGPT的答案;

尝试在回答的末尾使用“重新生成响应”选项,这似乎是对ChatGPT的一种“再努力一点”的指示。

向ChatGPT添加更多上下文可以包括用户定义函数的功能,这些功能是分析师所了解的。上下文信息可以以编程的方式提供,以减少人工分析人员的工作量,例如,通过为此目的开发的反汇编程序插件。

这同样适用于从非技术角度改进ChatGPT的输出。例如,ida_gpt(一个通过查询ChatGPT来协助程序集代码分析的IDA Pro插件)分别为分析和重构程序集代码制定了下面的查询。

下面是ida_gpt ChatGPT查询的几个示例:


8.识别代码中的恶意活动

恶意软件分析师可以使用ChatGPT来识别某个功能可能实现的潜在恶意活动的指示器。这对于将恶意软件可执行文件中的功能映射到特定的恶意功能非常重要,类似于capa IDA Pro插件的功能。

在这种情况下,我们观察到ChatGPT能够对函数中恶意活动的所有指标的强度进行优先级排序。因此,恶意软件分析师可以确定与ChatGPT的交互范围,以更详细地讨论最强指标。

例如,OpenGPT将vssadmin.exe的执行确定为下面伪代码中恶意活动的最强指标。

ChatGPT评估恶意活动的指标


9.推测功能目的和目标

除了识别恶意活动指标外,恶意软件分析师还可以进一步与ChatGPT对话,以推测并更好地了解恶意软件如何使用特定平台或软件结构以及达到何种目的。即使在分析师没有提供全面背景的情况下,这也可能是有效的。

例如,下面的勒索软件伪代码代码使用Microsoft Cryptographic API(CAPI),也称为CryptographicAPI:下一代(CNG)加密架构,用于加密数据。

ChatGPT讨论了恶意软件对CAPI的使用


10. 了解漏洞并利用代码

了解漏洞是如何工作的,恶意软件开发者如何利用它们,以及我们如何识别和检测它们在代码中的使用是一项极具挑战性的任务。ChatGPT在这方面也可以帮助我们。

让我们以CVE-2022-468889为例,看看ChatGPT是否可以帮助我们理解代码的工作原理。

ChatGPT为我们提供了以下解释。

人工智能最初找到的答案还是可以的,但它显然不了解漏洞的更广泛背景。我们可以通过提供更多信息来帮助它。因为ChatGPT是上下文感知的,所以我们不需要重复前面的问题或再次粘贴前面的代码。

让我们看看它现在提供了什么答案。

ChatGPT解释了CVE-2022-46889的漏洞代码

由于ChatGPT的上下文意识,研究人员有可能深入了解这一解释中他们希望了解更多信息的任何特定部分。

正如我们在前面的挑战中看到的,我们还可以要求在反汇编中表示,以查看恶意软件示例中的部分或全部利用代码。


11. 协助自动化逆向工程任务

反向工程师转而使用脚本语言来自动化手动完成的重复或容易出错的任务,例如重命名变量或大规模地对混淆的代码进行解混淆。这可以显著地加快和提高逆向工程任务的效率。ChatGPT能够编写代码,包括IDAPython/ target=_blank class=infotextkey>Python, IDA Pro反汇编程序的脚本语言。

ChatGPT编写IDAPython脚本

由于ChatGPT目前使用2021之前的数据进行培训,并且IDAPython正在进行定期更改,我们观察到ChatGPT经常编写过时的IDAPythin脚本。因此,我们评估了ChatGPT生成的IDAPython代码最实际的用例可能是作为模板代码,用户可能需要对其进行轻微或适度的调整,以使代码在当前部署中发挥作用。这通常涉及更改引用的模块和函数名,以适应IDAPython API中的更改。需要少量或适度修改的模板IDAPython代码在需要编写的IDAPython代码中非常实用。


总结

总的来说,ChatGPT可以:

生成恶意代码执行的功能和操作的解释和摘要,这可以帮助逆向工程师和恶意软件分析师了解其目的和行为。

协助分解和反编译代码,将其分解为更小、更易于管理的块进行分析。

帮助逆向工程师和恶意软件分析师了解代码库不同部分之间的关系以及它们如何协同工作,这对识别和理解代码依赖性很有用。

通过生成漏洞及其潜在影响的解释和摘要,协助识别和理解代码漏洞。

帮助逆向工程师和恶意软件分析师了解用于混淆代码的技术,这对于分析和消除恶意代码非常有用。

协助生成代码分析和恶意软件分析结果的文档和报告。

为进一步分析提供指导和建议,帮助逆向工程师和恶意软件分析人员确定工作的优先级,并将重点放在工作的最重要方面。

用于创建逆向工程和恶意软件分析培训的教材和练习,帮助培养这些领域的技能和知识。

通过提供信息和分析结果的共享存储库,帮助促进团队成员之间的协作,这有助于提高效率和有效性。

协助生成用于代码和恶意软件分析的测试用例和场景,帮助确保分析是彻底和全面的。

通过生成代码和恶意软件行为的解释和摘要,为法律和法医调查提供帮助,这对于构建案例和演示恶意活动的影响非常有用。

对于初学者,ChatGPT可以全面介绍掌握逆向工程所需的概念和技能,例如汇编语言的基础知识和了解程序如何构造和运行所需的背景知识。

对于经验丰富的逆向工程师和恶意软件分析师,ChatGPT可以用于自动化和加速逆向工程任务,例如分析代码和了解其功能。ChatGPT对逆向工程师和恶意软件分析师的回答的价值取决于提供给语言模型的上下文信息的数量。这可以通过向ChatGPT发出上下文完整查询或与ChatGPT进行对话以改进答案来实现。

在未来,ChatGPT有可能变得更强大,对逆向工程师和恶意软件分析师更有用。随着不断的发展,可能会克服其当前的一些限制,例如对数据的操作依赖性是有限的,并且具有过去的时间戳。通过解决这些限制,ChatGPT可以成为逆向工程师和分析师不可或缺的工具,提供准确高效地分析代码所需的信息。

参考及来源:https://www.sentinelone.com/labs/11-problems-chatgpt-can-solve-for-reverse-engineers-and-malware-analysts/



Tags:chatGPT   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
ChatGPT 应用商店?可能是一个万能应用程序!
OpenAI 在去年 11 月召开了一次开发者大会,首席执行官 Sam Altman 希望软件制造商在 ChatGPT 之上进行进一步的构建。OpenAI 表示,它将很快推出一个市场,开发人员和非技术人员...【详细内容】
2024-04-12  Search: chatGPT  点击:(3)  评论:(0)  加入收藏
OpenAI 宣布向 ChatGPT 付费用户开放新 GPT-4 Turbo 模型
IT之家 4 月 12 日消息,OpenAI 今日宣布,新 GPT-4 Turbo 现已向付费 ChatGPT 用户开放。与 1 月份相比,新版本提高了写作、数学、逻辑推理和编码的能力。GPT-4 Turbo 可在 Chat...【详细内容】
2024-04-12  Search: chatGPT  点击:(2)  评论:(0)  加入收藏
ChatGPT官宣免注册,全球互联网变天!OpenAI将取代谷歌搜索?
新智元报道编辑:编辑部【新智元导读】OpenAI这份愚人节礼物,实在是太大了:今天起,ChatGPT不用注册,可以直接使用。用户狂欢,竞品颤抖,我们仿佛已经听到,谷歌搜索引擎这位巨人轰然倒...【详细内容】
2024-04-02  Search: chatGPT  点击:(10)  评论:(0)  加入收藏
无需注册!OpenAI宣布放开ChatGPT使用限制
工智能初创公司OpenAI宣布,即日起用户无须注册即可开始使用ChatGPT的功能。OpenAI在最新公告中写道:“让ChatGPT等工具广泛可用,让人们能够体验到人工智能的好处,这是我们使命的...【详细内容】
2024-04-02  Search: chatGPT  点击:(7)  评论:(0)  加入收藏
ChatGPT 突然放开了账户限制,面向所有人开放
大门终于打开。奥特曼 OpenAI 的旗舰产品 ChatGPT 突然宣布:将面向所有人开放,无论你有没有注册账户。从今天开始,访问 Chat.openai.com 将不再要求用户登录,用户将直接进入与 C...【详细内容】
2024-04-02  Search: chatGPT  点击:(3)  评论:(0)  加入收藏
今天起,ChatGPT无需注册就能用了!
 来源:量子位    金磊 克雷西 发自 凹非寺  就在刚刚,OpenAI狠狠地open了一把:从今天起,ChatGPT打开即用,无需再注册帐号和登录了!  像这样,直接登录网站,然后就可以开启对...【详细内容】
2024-04-02  Search: chatGPT  点击:(8)  评论:(0)  加入收藏
ChatGPT之父Altman两小时对谈,首聊GPT-5何时发布、llya去哪里了、Q*究竟是什么
Altman做客油管博主Lex Fridman科技博客 ,被追问了一个又一个辛辣的问题。长达两个小时的对谈,奥特曼从OpenAI宫斗、马斯克诉讼、Sora,一直聊到AGI与外星文明!本文重点梳理了长...【详细内容】
2024-03-20  Search: chatGPT  点击:(8)  评论:(0)  加入收藏
ChatGPT主管最新访谈:未来AI和人类如何共处?
Peter Deng在最新访谈中表示:AI不会取代生产力,人类和AI只有合作才能释放真正潜力,ChatGPT比已知的更强大、最大的挑战在于理解用户需求。当地时间3月13日,OpenAI 消费产品副总...【详细内容】
2024-03-19  Search: chatGPT  点击:(11)  评论:(0)  加入收藏
ChatGPT日耗电超50万度,大模型或带来“电荒”
未来两年内将由“缺硅”变为“缺电”,马斯克的预言可能正在变成现实。据《纽约客》杂志报道,OpenAI的热门聊天机器人ChatGPT每天可能要消耗超过50万千瓦时的电力,以响应用户的...【详细内容】
2024-03-11  Search: chatGPT  点击:(33)  评论:(0)  加入收藏
OpenAI新功能:ChatGPT可调用自定义机器人,对话更高效!
近日,知名科技公司OpenAI推出了一项新的功能——“对话中调用(@)自定义聊天机器人”,让用户在对话中无缝切换不同领域的机器人。这一功能的出现,为用户带来了极大的便...【详细内容】
2024-02-02  Search: chatGPT  点击:(53)  评论:(0)  加入收藏
▌简易百科推荐
ChatGPT 应用商店?可能是一个万能应用程序!
OpenAI 在去年 11 月召开了一次开发者大会,首席执行官 Sam Altman 希望软件制造商在 ChatGPT 之上进行进一步的构建。OpenAI 表示,它将很快推出一个市场,开发人员和非技术人员...【详细内容】
2024-04-12  视角先锋队    Tags:ChatGPT   点击:(3)  评论:(0)  加入收藏
Kyligence发布企业级AI解决方案!AI数智助理降低数据使用门槛
智东西作者 | 长颈鹿编辑 | 李水青智东西4月12日报道,昨日大数据分析和指标平台供应商Kyligence(硅智信息)召开了数智论坛暨春季发布会,并分享和探讨Data+AI产品及解决方案在金...【详细内容】
2024-04-12    智东西  Tags:Kyligence   点击:(3)  评论:(0)  加入收藏
百度Create AI剧透:“三大开发神器”升级,模型增至77个,三步即可生成应用
智东西(公众号:zhidxcom)作者| 香草编辑| 李水青智东西4月11日报道,今日,在百度Create AI开发者大会预沟通会上,百度披露了“三大开发神器”AgentBuilder、AppBuilder、ModelBuild...【详细内容】
2024-04-12    智东西  Tags:Create AI   点击:(3)  评论:(0)  加入收藏
李彦宏最新内部讲话:开源大模型不如闭源,后者会持续领先
界面新闻记者 | 李如嘉界面新闻编辑 | 宋佳楠4月11日,界面新闻获悉,百度创始人、董事长兼首席执行官李彦宏在一场内部讲话中首次谈及文心大模型为何不开源,以及对于大模型开源...【详细内容】
2024-04-12    界面  Tags:李彦宏   点击:(2)  评论:(0)  加入收藏
AI未来或超越“最聪明的人”?专家谈发展如何兼顾公平
中新社北京4月11日电 (记者 马帅莎)到明年底或2026年,人工智能(AI)或超越“最聪明的人”,美国知名企业家埃隆·马斯克近日对人工智能的这一大胆猜想引起关注,这比他去年...【详细内容】
2024-04-12    中国新闻网  Tags:AI   点击:(3)  评论:(0)  加入收藏
行业大模型快速落地的一年,如何做?
生成式AI正成为时下科技企业“讲故事”的关键词之一。但从发展上看,无论是“文生文”的大语言模型,还是“文生图”的多模态模型,更多的是辅助人们进行一些简单的办公,或者提供一...【详细内容】
2024-04-10    钛媒体APP  Tags:行业大模型   点击:(3)  评论:(0)  加入收藏
互联网充斥“针对小白的AI课”,能相信吗?普通人不学AI课程会被淘汰?
早前,一位标榜清华大学博士和多家公司AI顾问名头的百万级粉丝量博主,向用户大力推介“所有人都需要学”的AI入门课程。不过,这些课程最终因贩卖焦虑、蒙骗学员而被平台下架。然...【详细内容】
2024-04-10    九派新闻  Tags:AI课   点击:(9)  评论:(0)  加入收藏
藏在AI背后的“吃电狂魔”
人工智能时代的能耗黑洞据估算,到2027年,人工智能行业每年将消耗85~134太瓦时的电力,相当于瑞典或荷兰一年的总用电量。马斯克判断,电力缺口最早可能会在2025年发生,“明年你会看...【详细内容】
2024-04-09    雪豹财经社  Tags:AI   点击:(4)  评论:(0)  加入收藏
OpenAI和谷歌再起纷争:AI的尽头是内容
日前,纽约时报的一篇报道称,人工智能公司 OpenAI为收集高质量训练数据而开发了一个语音转录模型Whisper。该模型主要用于转录 OpenAI 获取的超过 100 万小时的 YouTube 视频,也...【详细内容】
2024-04-09  小编也疯狂  新浪网  Tags:AI   点击:(4)  评论:(0)  加入收藏
AI产业的灰色暗面:OpenAI、谷歌、META如何搞训练语料
财联社4月7日讯(编辑 史正丞)种种迹象显示,目前站在全世界AI领域潮头浪尖的这些公司,早在几年前就已经陷入对训练语料的“绝望”追逐中——为此他们不惜修改政策条款...【详细内容】
2024-04-09    财联社  Tags:AI产业   点击:(4)  评论:(0)  加入收藏
站内最新
站内热门
站内头条