Vulpy 是一个使用 Python / Flask / SQLite 开发的双面 web 应用。
好的一面:尝试遵循安全开发最佳实践来编写代码。
坏的一面:尝试像(可能)你一样编写代码。:p
它作为以下课程的实验室而开发:
Securetia 的安全开发课程 (https://www.securetia.com/cursos.html) EducaciónIT 的安全开发课程 (https://www.educacionit.com/curso-de-desarrollo-seguro)
但你可以随意使用它(MIT 许可证)
“好”版本(尚未完成)将遵循 OWASP ASVS:
https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project
这将帮助学习如何按照最佳安全实践开发 Python 代码。
::
git clone https://github.com/fportantier/vulpy
cd vulpy
pip3 install --user -r requirements.txt
“坏”版本中存在的一些漏洞:
注意: “好”版本(尚未完成)本应没有漏洞,但我是人类,所以...
“坏”和“好”版本都需要初始化数据库。
这通过每个目录(bad 和 good)中的脚本 "db_init.py" 完成。
每个版本都有各自的 sqlite 文件用于存储用户和帖子。
脚本的执行示例:
::
cd bad ./db_init.py
数据库初始化后,会创建三个用户:
::
用户名 密码
admin SuperSecret elliot 123123123 tim 12345678
你可以使用任何用户登录,该应用没有权限系统,因此三个用户拥有相同的权限。