简单测试 GPT 您所在的位置:网站首页 简单的黑客代码 简单测试 GPT

简单测试 GPT

2023-03-23 18:34| 来源: 网络整理| 查看: 265

GPT-4/ChatGPT 能帮着读代码,也可以帮忙解释代码的意思,辅助阅读代码,生成一定程度的注释。

但是,ChatGPT 的能力不仅仅是读一般的代码,或者说shell脚本,还可以读些更有趣的代码。

关于阅读代码这点,已经有很多人写文了,我来换个角度观察下这个问题。

GPT-4或者ChatGPT,不仅能帮着读正常人写的代码,还可以帮忙静态分析一些恶意攻击者可以用来逃避安全检测的代码,帮助安全人员做代码的静态分析工作。

故事是这样的:刚刚睡前去网上冲浪逛了逛,看到自己关注的博主分享了一个“深入混淆 PowerShell 有效负载的各个组件的方法”。

于是,我点进去看了看

点开网站链接后,我看到这个网站里,给出了一个混淆后的代码示例

Generator 2 >> 4444 >> $(0-0+0+0-0-0+0+4444) Generator 1 >> 65535 >> $((65535)) [*] Obfuscating strings Generator 2 >> 127.0.0.1 >> $([char](16*49/16)+[char](109*50/109)+[char](0+55-0)+[char](20*46/20)+[char](0+48-0)+[char](0+46-0)+[char](0+48-0)+[char](0+46-0)+[char](51*49/51)) Generator 2 >> PS >> $([char](1*80/1)+[char](86+83-86)+[char](0+32-0)) Generator 1 >> > >> ([string]::join('', ( (62,32) |%{ ( [char][int] $_)})) | % {$_}) [*] Obfuscating cmdlets Generator 2 >> New-Object >> & ([string]::join('', ( (78,101,119,45,79,98,106,101,99,116) |%{ ( [char][int] $_)})) | % {$_}) Generator 2 >> New-Object >> & ([string]::join('', ( (78,101,119,45,79,98,106,101,99,116) |%{ ( [char][int] $_)})) | % {$_}) Generator 1 >> Out-String >> & (("Tpltq1LeZGDhcO4MunzVC5NIP-vfWow6RxXSkbjYAU0aJm3KEgH2sFQr7i8dy9B")[13,16,3,25,35,3,55,57,17,49] -join '') [*] Writing payload to /home/tristram/obfuscated.ps1 [*] Done" dir="auto">

本着恶作剧的想法,我把这段混淆后的,意欲逃过防御手段和语义分析的代码,扔到了 GPT-3.5 和 GPT-4 里,让它们去分析下这段代码的功能。

这是GPT-3.5(ChatGPT)给出的回答:

总体来说,这段代码通过字符串混淆和数学运算等方式,生成了一个难以被轻易识别和防御的PowerShell payload。

这是GPT-4给出的回答:

总的来说,这段代码的目的是生成一个包含混淆字符串和cmdlets的PowerShell脚本,以增加其难以阅读和识别的程度。这种技术通常用于恶意软件或恶意脚本,试图逃避安全系统的检测。

可以看到,这两者都分析除了这段代码的基本作用,并且识别出了写代码之人的意图所在。

关于这点,还是GPT-4说的最为直接明了:“这种技术通常用于恶意软件或恶意脚本,试图逃避安全系统的检测。”

就如上来看,GPT-4 或者 ChatGPT 不仅能帮着读代码,而且还能较好的分析这种不易读的混淆代码,做很好的静态分析。

作为一名网络安全人员,我觉得这还是很好的~



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有