Bandit简介
Bandit是用来查找Python代码中存在的通用安全问题的工具。可以逐文件进行扫描,并输出扫描报告。是OpenStack Security项目组维护的项目。
项目维护地址:https://github.com/openstack/bandit
安装
支持pip安装和源码安装两种方式。
pip install bandit
或
git clone https://git.openstack.org/openstack/bandit && cd bandit
python setup.py install
使用
扫描文件夹:bandit –r nova
只报告高危漏洞:bandit –r nova –lll
Bandit检查项
Bandit检查项有很多,例如:文件权限、硬编码密码、硬编码临时目录、密码未设置为隐私、以root身份执行、密码算法模式、url访问、不安全的ssl版本、硬编码sql语句等。
Bandit应用情况
Bandit在OpenStack中的应用并不算广泛,只有少数几个核心项目使用到bandit。
目前,OpenStack中已经集成Bandit检查的项目有Keystone、Glance、Neutron、Barbican,bandit已经和这些项目的CI系统集成,所有代码提交必须使bandit检查通过才能合入主线。
Nova、Cinder项目集成了Bandit,但CI系统并未加入bandit检查,因此提交的代码可能会有一些漏洞。