JOSIAHTHEPROGRAMMER/vulnerability-scanner

GitHub: JOSIAHTHEPROGRAMMER/vulnerability-scanner

面向开发者和安全工程师的模块化命令行漏洞扫描器,一站式覆盖依赖 CVE、代码静态分析、端口探测与 Web 配置审计。

Stars: 0 | Forks: 0

# 漏洞扫描器 ![Python](https://img.shields.io/badge/python-3.12%20|%203.13%20|%203.14-blue) ![License](https://img.shields.io/badge/license-MIT-green) ![Tests](https://img.shields.io/badge/tests-41%20passed-brightgreen) 一个模块化、基于 CLI 的漏洞扫描器,使用 Python 构建。涵盖四个攻击面: 依赖项 CVE、静态代码分析、网络端口扫描和 Web 应用配置错误检查。 ## 模块 | 命令 | 扫描内容 | | --------- | -------------------------------------------------------------------------------------- | | `deps` | 将 `requirements.txt` 与 OSV 数据库进行比对,检查已知的 CVE | | `code` | 扫描 Python 文件以查找危险模式(硬编码密钥、eval、shell 注入等) | | `network` | 对主机进行端口扫描并抓取服务 banner | | `web` | 检查在线 URL 是否缺少安全标头、暴露文件以及服务器信息披露 | ## 安装 ``` git clone https://github.com/JOSIAHTHEPROGRAMMER/vulnerability-scanner.git cd vulnerability-scanner python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate pip install -r requirements.txt ``` ## 使用说明 ### 依赖扫描器 ``` python main.py deps requirements.txt python main.py deps requirements.txt --json ``` ### 静态代码分析器 ``` python main.py code scanner/ python main.py code path/to/file.py ``` ### 静态分析规则 检测项:硬编码密钥、`eval`/`exec`、通过 `shell=True` 进行 shell 注入、SQL 注入、 不安全的反序列化(`pickle`、`marshal`)、弱哈希(`md5`/`sha1`)、不安全的 `yaml.load`、 禁用 SSL 验证、存在漏洞的 XML 解析器、不安全的 `random` 用法、`tempfile.mktemp`、 禁用 Jinja2 自动转义,以及未加密的协议(FTP/Telnet)。 ### 网络扫描器 ``` python main.py network scanme.nmap.org python main.py network 192.168.1.1 --ports 22,80,443 python main.py network 192.168.1.1 --ports 1-1024 --timeout 0.5 ``` ### Web 应用扫描器 ``` python main.py web https://example.com python main.py web http://example.com --json ``` 检查项:缺失的安全标头(CSP、HSTS、X-Frame-Options 等)、服务器版本 信息披露,以及暴露的敏感路径(`.env`、`.git/config`、`wp-config.php` 等)。 ## 输出 所有命令均支持 `--json` 以输出机器可读的格式: ``` python main.py deps requirements.txt --json | jq '.[] | select(.severity == "HIGH")' ``` 严重级别:`CRITICAL` `HIGH` `MEDIUM` `LOW` ## 测试 ``` pytest tests/ -v ``` 涵盖所有四个模块的 41 个测试。CI 会在每次推送时通过 GitHub Actions 自动运行, 针对 Python 3.12、3.13 和 3.14 进行测试。 ## 项目结构 ``` vulnscanner/ ├── scanner/ │ ├── deps.py # OSV CVE lookup │ ├── code.py # static analysis │ ├── network.py # port scanner │ └── web.py # web misconfiguration checks ├── tests/ │ ├── test_deps.py │ ├── test_code.py │ ├── test_network.py │ └── test_web.py ├── main.py # CLI entry point └── requirements.txt ``` ## 已知限制 - 静态代码分析器使用 regex,而不是 AST 解析。如果 字符串字面量包含被标记的关键字(例如注释或规则定义中的 `eval` 一词),将会产生误报。 - 网络扫描器是单线程的。扫描大范围端口会很慢。 - Web 检查仅为被动检查——不会进行任何主动注入尝试。 - OSV 的结果反映了扫描时已知的信息。请定期重新扫描,以便获取新发布的 CVE。 ## 法律声明 仅扫描您拥有或获得明确测试许可的系统。
标签:Python, 云存储安全, 加密, 安全专业人员, 安全规则引擎, 实时处理, 插件系统, 文档结构分析, 无后门, 漏洞扫描器, 网络扫描, 网络调试, 自动化, 逆向工具, 错误基检测, 静态代码分析