Hailemeskel-Getaneh/logflash
GitHub: Hailemeskel-Getaneh/logflash
logflash是一款用于静态应用安全测试的模块化工具。
Stars: 0 | Forks: 0
# 日志闪存
一个模块化的**静态应用安全测试 (SAST)**引擎,用于快速本地安全审计。
## 安装
```
pip install logflash
```
## 使用
```
logflash /path/to/your/project
```
该工具将:
1. 遍历项目(忽略像`node_modules`和`venv`这样的重文件夹)。
2. 扫描支持的文件(`.py`, `.js`, `.java`, `.cpp`, `.php`, …)以查找常见漏洞。
3. 输出格式良好、按严重程度排序的控制台报告。
4. 将发现结果导出到`security_audit_report.json`。
### 模拟沙箱
运行工具不带参数以查看演示沙箱:
```
logflash
```
它创建一个包含漏洞文件的临时沙箱并对其进行扫描。
## 可扩展性
- **规则系统** – 规则存储在`logflash/rules/`中的JSON或YAML文件中。可以在不接触源代码的情况下覆盖或添加规则。
- **解析器插件** – 在`src/logflash/parsers/`下添加新的解析器并在`src/logflash/parsers/__init__.py`中注册它。
## 文档
- 完整规则架构:`docs/rules.md`
- 使用指南和贡献说明在`docs/`文件夹中。
## 本地构建包
```
# 确保构建工具是最新的
python -m pip install --upgrade build twine
# 构建源代码和wheel发行版
python -m build
```
生成的文件出现在`dist/`目录中:
- `logflash‑.tar.gz`(源存档)
- `logflash‑-py3-none-any.whl`(wheel)
要验证规则文件是否包含:
```
python -m zipfile -l dist/logflash-*.whl | grep "rules/"
```
你应该看到类似`logflash/rules/default_rules.json`的条目。
## 发布到 PyPI(一旦版本升级)
```
# 在pyproject.toml中提升版本(例如0.2.0)
python -m pip install --upgrade twine
python -m twine upload dist/*
```
## CI 工作流程(GitHub Actions)
CI 在 Python 3.9 和 3.11 上运行,安装测试额外组件(`pip install -e .[test]`),执行`pytest -q`,并构建包。
**注意:** 工作流程使用`actions/checkout@v3`和`actions/setup-python@v4`。它们将在 2026 年 6 月自动迁移到 Node.js 24,因此现在不需要进行任何更改。
## 贡献
1. 分叉仓库并创建一个分支。
2. 在本地运行测试套件:`pytest -q`。
3. 为新的解析器/规则添加或更新测试。
4. 提交一个带有清晰描述的拉取请求。
## 许可证
MIT 许可证 – 欢迎将其用于商业或开源项目。
*如果您觉得这个项目有用,请随意⭐它!*
## 安全用例
**logflash**工具可用于在受控环境中演示和检测常见的安全弱点:
- **缓冲区溢出** – 扫描 C/C++ 源文件中不安全的功能,如`gets`、`strcpy`,并突出显示有漏洞的行。
- **SQL 注入** – 检测 Python 中的字符串插值查询(例如,`f"SELECT * FROM users WHERE id = {user_id}"`)。
- **跨站脚本 (XSS)** – 在 PHP 文件中找到未清理的输出,例如`echo $_GET['name'];`。
- **暴露的秘密** – 标记 JavaScript 配置文件中的硬编码 API 密钥或密码。
- **模拟沙箱** – 运行不带参数的`logflash`创建一个临时项目,其中包含故意有漏洞的示例(C++、Python、PHP、JS),以便您可以立即看到发现结果。
这些示例说明了静态分析引擎如何揭示现实世界的漏洞,使其成为软件安全课程或安全重点代码审查的有用教学辅助工具。
[GitHub 仓库](https://github.com/Hailemeskel-Getaneh/logflash)
标签:GitHub Actions, JSON报告, pip安装, PyPI发布, Python, Python包管理, SAST, YAML规则, 安全测试, 开源框架, 扩展性, 持续集成, 攻击性安全, 无后门, 模块化, 沙箱演示, 盲注攻击, 自动笔记, 逆向工具, 静态应用安全测试