-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AIGC在安全领域的思考和尝试 - AI安全助手 #2
Comments
如何注册? |
师傅怎么注册 |
你好,可以问下这是使用什么开源模型吗 |
请问怎么注册体验啊 |
哈哈哈哈哈那张图“我不喜欢这个域名……你懂我意思吧?”,AI 居然真懂了哈哈哈,笑死 |
好厉害 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
0x0 背景
随着ChatGPT在2022年底发布,AI正式出圈火爆全网,各行各业都开始思考和尝试如何利用AI来辅助或代替人工作。而互联网巨头的加入,更加速了这个过程,涌现出大量利用AIGC改进的产品,例如微软的Microsoff 365 Copilot、new bing,Google的bard、Workspace,还有其他初创公司或开源的:自动开发网站、自动开发APP、自动3D设计、AI修图、数字人、AutoGPT等等,持续半年每周都涌现出令人惊喜的AI产品,作为一个安全从业者,也有一定的工程能力,看得我心痒痒,决定在安全领域也尝试一番。
为什么这次值得尝试呢:
0x1 调研
应用路线
当前大语言模型有两种应用路线
其一的路线在文字类的工作上应用是强大的,几乎无所不能,但在非文字类是较为受限的,因为它只能通过文字形式跟你描述,无法帮你更进一步的工作,因为在工程领域知道怎么做只是第一步且大部分情况下都是知道怎么做,但更重要的是需要有人去执行,所以只能相对的代替搜索引擎,在整体生产力的提升上是有限的。
二路线为当前较为专业的应用方式,例如new bing,其原理即调用搜索结果再根据原有知识库进行整理回答,还有offer全家桶、Workspace、AutoGPT、Chat2DB,均为此原理,根据用户输入的自然语言,由AI转换为操作指令控制专业程序,当前最强的ChatGPT也在3月份增加了插件功能,此路径给了AI应用无限的可能,但对模型的逻辑推理能力有很高的要求。
由此,在安全领域上,一路线我能想到的就是学习阶段和搜索非擅长的知识领域时,能起到一定的作用,但并不能与Google等搜索引擎有多少效率的提升,且全球TOP的搜索引擎也都接入了AI解读能力,由此我认为此方向是意义较小的。
所以我更倾向于看好二路线,通过AI调用专用工具或者在已有的专业工具上进行改造,改变人和程序的交互的方式,由原本的专业操作流程变为自然语言表达需求,大大降低了专业门槛,如同当初的GUI操作系统出现,降低了电脑的入门难度,由原本只有高端工程师才会使用变化到现在几十亿人用电脑来作为生产力工具,也如同当初横空出世的iphone手机,由硬件按钮进入纯屏幕操作时代,APP/游戏的体验上升了一个量级,对此,我预言后续的网站、APP、程序可能会专门给AI提供相对标准的接口。
AI如何操控第三方程序
这里就不展开描述,可以参考AutoGPT和langchain项目或者使用OpenAI接口的function能力,目前已经进入行业标准化时段,至于最后谁能统一这个标准,拭目以待。
模型选择
而在模型的选择上,目前也有2条路线
经过简单测试,开源方案目前只在路线一表现可以,二线路难以满足,目前能满足二路线的大模型是少之又少。
0x2 落地
安全领域哪些场景可以落地呢?在专业模型上已经有不少的应用场景,例如:防火墙、流量分析、人机对抗(人机验证/过人机验证)、代码泄露检测等等,但目前看仅少有的场景真实发挥了技术优势,其余的颇有阿斗与赵云七进七出曹营的味道,鉴于现在的趋势看,AI还是将会慢慢的增强或代替常规技术方案。
不过不管从原理、性能还是效果上看,在此纬度上大语言模型的能力是不如专业模型的甚至不如常规的技术方案的,当然这也不是它的应用方式,只是强大的知识库和逻辑能力让他看起来无所不能,都能秀上两把。
故我认为目前只有2种有价值的落地方式:
受限于当前所有AI产品均有的token上限和其他瓶颈,难以同时满足1和2,只能在全面和精细权衡。
很遗憾之前维护的开源项目因为工作和风险原因烂尾了,第二个落地方式只能放弃了,最后决定尝试做一个会操作大量安全工具和服务,通过对话即可让AI帮我们完成一些较为简单琐事的工作,就像你的助手一样,所以暂且就叫他AI安全助手把。
0x3 效果
能力
经过多个晚上的开发和调教,实现了以下能力:
talk is cheap show me the code,真实效果如下:
使用第三方服务
例子:dnslog测试
使用第三方工具
例子:查询/扫描端口
什么都可以
建立漏洞靶场/漏洞测试/修复建议一条龙
例子:加解密/解编码
例子:找漏洞/解读漏洞/找EXP
不需要具体的操作命令(用什么去做什么),而是告诉他需求,他能理解并挑选合适的插件来回答你
碰到底线问题它也会拒绝
单个对话可识别执行多个任务并综合回答
上下文关联
非文本交互
除了支持文字交互,也支持文件、图片的方式
搜集子域名,打包成文件(可以看到AI可以理解v2ex就是指v2ex.com)
访问网站,然后截图给你
当然这个交互是双向的
发送apk给AI助手,让他帮你反编译,可以看到有时候它会说将执行但实际上没有使用插件,这个时候跟它说请执行就可以。
插件扩展
AI能使用的安全工具决定了它的能力范围,所以支持灵活的插件扩展是必须的。
这里实现了在线的Python插件扩展,且只需要遵守最基本的格式即可,其他自由发挥,AI能立马就学会使用他。
0x4 价值/意义
根据以上的例子可以看到AI可以使用工具来完成你的任务,这与自动化程序和常规的IM机器人有什么差异呢?
所以AI助手的意义就是你可以把它当作你的员工,用正常分配工作的方式安排事情给他,他会自己去尝试用各种工具来完成(当前实验的这个版本还达不到,但此从技术角度是可行的),说不定将来有这么一天,在钉钉或企业微信上与你协同工作的同事原来都是一个个的AI机器人,而你还无法识别出来。
0x5 计划
由于每天只有晚上1-2个小时可以开发,进度缓慢,目前还只是个有趣的玩具,但我相信再过几个月,随着AI能使用的安全工具和服务越来越全面,将是一个真正能帮你提高生产力的助手。
项目已部署到http://secasst.com,鉴于当前项目还不够完善和部分能力存在风险,先进行小范围的测试,对此项目有兴趣的可以联系我(wx: _ywolf email:wolf_cn#outlook.com),我会给你邀请码。
目前大语言模型的生态还在快速发展中,此测试项目背后的技术也在快速变化,例如前几天openai就出了function功能,降低了操作工具的门槛,说不定过几天就有针对如何更好调用第三方程序的微调模型,所以在背后的技术方案较为稳定后,这个项目在Github开源也是选项之一(主要看实际反馈,如果最后发现意义不大那就放弃)。
0x6 总结
The text was updated successfully, but these errors were encountered: