💡
原文中文,约4600字,阅读约需11分钟。
📝
内容提要
本文介绍了Jumpserver系统中的一个漏洞,由于django-simple-captcha组件库泄露随机数种子,再配合Jumpserver使用了错误的随机数方案导致。文章分析了漏洞的成因和影响,并介绍了使用Joern工具分析漏洞的过程。提出了修复方案,即用新种子替代原来的随机数方案。
🎯
关键要点
-
Jumpserver是一个开源的django架构的堡垒机系统,存在一个漏洞。
-
漏洞源于django-simple-captcha组件库泄露随机数种子,结合Jumpserver错误的随机数方案。
-
django-simple-captcha允许通过key指定随机数种子,导致种子泄露。
-
Jumpserver的密码重置功能受到影响,可能导致超级管理员权限被获取。
-
修复方案是用新种子替代原来的随机数方案,Jumpserver在获取密码重置token时重置随机数种子。
-
使用Joern工具分析漏洞时,需注意随机数种子泄露和未重置种子的问题。
-
Jumpserver的代码量较大,分析时需确认随机数调用次数和重置情况。
-
最终修复方案是用secrets替代random,增强随机数生成的安全性。
➡️