文章总结: 本文分析jumpserver_decrypto开源项目的供应链投毒事件,揭示其表面为解密工具实则为间谍软件,通过伪造的第三方库窃取资产信息与密钥。关键发现包括恶意代码调用链:main.py传递数据至被篡改的Crypto库,利用日期函数外泄敏感数据。可操作建议强调使用开源工具前需代码审计,避免直接使用预编译文件。 综合评分: 85 文章分类: 恶意软件,供应链安全,漏洞分析,安全工具,威胁情报
jumpserver_decrypto 投毒项目分析
蚁景网安
2026年6月18日 16:30 湖南
在小说阅读器读本章
去阅读
以下文章来源于潇湘信安 ,作者嘞萌
潇湘信安 .
一个不会编程、挖SRC、代码审计的安全爱好者,主要分享一些安全经验、渗透思路、奇淫技巧与知识总结。
这篇文章由@嘞萌师傅原创投稿,记录的是他2026年6月10日看到网上说有工具被投毒了,所以想分析研究下看看怎么个事儿。
看到附有github链接所以看看项目,结果项目中有之前推广链接是某DN,某BUF的链接。
有好几个平台都有相似的文章,并且作者的文章列表还都出奇的一致,并且有一个平台作者简介里还有另一个项目,我觉得这个项目肯定也有问题,所以来审查看看。
0x01 正文
将项目下载下来后大概一个看,并没有看出什么问题。但是发现vendor文件夹中含有打包好的第三方库,并且他还支持CI自动打包,他是如此贴心…。
项目源地址:
https://github.com/yigexiaoyunwei/jumpserver_decrypto
于是直接让ai帮我把这些库反编译了,结果他还真发现了有趣的地方,于是有了下面的内容。
完整调用路径是:
main.py->__main__ #第733行将查询到的资产信息传递给write_data_to_file函数。
main.py->__main__-> write_data_to_file #第718行将资产信息和密钥逐行传递给Crypto实例。
cipher_jp-3.21.2\pycryptodo\math.py->__init__ #第160行Crypto初始化,会调用伪造的获取时间函数。
cipher_jp-3.21.2\pycryptodo\math.py->__init__-> get_jp_time() #第201行伪造的获取时间函数将Crypto.self传递给了Dateformat 。
cipher_jp-3.21.2\pycryptodo\piico\date_format.py-> __init__
因为get_jp_time将self传递给了Dateformat,所以这里形参times实际类型应该是Crypto实例,并且Crypto类又接收了SECRET_KEY和资产信息作为参数,所以在这里获取的并不是真实的配置,而是将资产信息、密钥、目标域名、混淆包装成年月日等信息。
cipher_jp-3.21.2\pycryptodo\math.py->__init__->get_date() #第202行调用伪造的获取日期的函数。
cipher_jp-3.21.2\pycryptodo\piico\date_format.py-> get_date 会将初始化时构造的信息传递出去,至此披着正常解密工具外衣的间谍工具的调用链就水落石出了。
攻击链:
0x02 结论
开源有风险,使用需谨慎,越是想拿来就用越是危险,这个项目目标人群就是想直接用exe的人群。相反你想直接用脚本还真不一定会触发这个逻辑,这个里边还有很多细节并没有仔细深究,不过知道这个项目他干了啥坏事就行了,
另外他们还有个TelegramMessage监听TG群的项目,实际后门藏在他们构建好的docker镜像里,这个人发的项目一个都不能信,投毒专业户…!!!
学习网安实战技术,戳“阅读原文”
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:蚁景网安 《jumpserver_decrypto 投毒项目分析》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论