hemendran-py/Cloud-Security-Log-Analyzer

GitHub: hemendran-py/Cloud-Security-Log-Analyzer

基于 Python 的 Linux auth.log 安全分析工具,通过规则检测暴力破解和异常 IP 行为并生成告警。

Stars: 1 | Forks: 0

# Security Log Analyzer 一个基于 Python 的网络安全工具,用于分析 Linux 身份验证日志(`auth.log`),通过基于规则的检测来发现潜在的安全威胁,例如暴力破解攻击和异常 IP 行为。 ## 🚀 功能 - **日志解析**:使用正则表达式解析 `auth.log` 风格的条目 - **数据提取**:提取时间戳、IP 地址和登录状态 - **安全检测**: - 暴力破解攻击:同一 IP 在 2 分钟内出现超过 5 次失败的登录尝试 - 异常 IP 行为:同一 IP 在 5 分钟内发出超过 20 个请求 - **告警生成**:生成 SOC 风格的告警 - **输出选项**:在控制台打印告警并保存到文件 - **模块化设计**:代码简洁易读,包含独立的解析、规则和分析模块 ## 📁 项目结构 ``` security-log-analyzer/ ├── analyzer.py # Main script ├── rules.py # Detection logic and SecurityAnalyzer class ├── utils.py # Log parsing utilities ├── logs/ │ └── auth.log # Sample log file ├── requirements.txt # Dependencies ├── alerts.txt # Generated alerts output └── README.md # This file ``` ## 🚀 使用方法 1. 将您的 `auth.log` 文件放置在 `logs/` 目录中,或修改 `analyzer.py` 中的路径 2. 运行分析器: python analyzer.py 3. 在控制台查看告警,并检查 `alerts.txt` 以获取保存的结果 ## 📊 示例输出 ``` [ALERT] Possible brute-force attack from 192.168.1.100: 7 failed attempts in 2 minutes [ALERT] Abnormal IP behavior from 192.168.1.200: 31 requests in 5 minutes Analysis complete. 39 alerts generated and saved to alerts.txt ``` ## 🔍 工作原理 ### 1. 日志解析 (`utils.py`) `parse_log_line()` 函数使用正则表达式提取: - 时间戳(转换为 datetime) - IP 地址 - 登录状态(成功/失败) - 用户名 ### 2. 检测规则 (`rules.py`) `SecurityAnalyzer` 类跟踪: - 每个 IP 带有时间戳的失败尝试 - 每个 IP 带有时间戳的所有请求 **暴力破解检测**: - 计算 2 分钟时间窗口内的失败登录次数 - 当检测到超过 5 次失败时触发告警 **异常行为检测**: - 计算 5 分钟时间窗口内的总请求数 - 当检测到超过 20 个请求时触发告警 ### 3. 告警生成 (`analyzer.py`) - 处理每条日志记录 - 应用检测规则 - 生成格式化的告警 - 输出到控制台和文件 ## ⚙️ 自定义 ### 调整检测阈值 修改 `rules.py` 中的值: ``` # 更改 brute-force 阈值 if len(recent_fails) > 3: # Instead of 5 # 更改异常行为阈值 if len(recent_requests) > 10: # Instead of 20 ``` ### 支持不同的日志格式 更新 `utils.py` 中的正则表达式: ``` pattern = r'your_custom_regex_here' ``` ### 添加新的检测规则 扩展 `rules.py` 中的 `SecurityAnalyzer` 类: ``` def check_new_rule(self, entry): # Your detection logic here pass ``` ## 📝 示例日志文件 包含的 `logs/auth.log` 内容包括: - ✅ 正常的成功登录 - 🚨 模拟的暴力破解攻击(来自同一 IP 的多次失败) - 🚨 异常流量模式(高请求量) 在此文件上运行分析器以查看实际的检测效果! ## 🔒 安全说明 - **教育目的**:这是一个用于学习的基础的基于规则的分析器 - **生产使用**:在实际部署中请考虑与 SIEM 系统集成 - **日志格式**:实际日志可能有所不同;请根据您的环境调整解析规则 - **不执行任何操作**:此工具仅进行分析和告警,不会进行拦截或响应 - **隐私**:在分析日志时,请确保遵守数据处理策略 ## 🤝 贡献 欢迎贡献!请: 1. Fork 该仓库 2. 创建一个特性分支 3. 进行您的更改 4. 如适用,添加测试 5. 提交 pull request
标签:AMSI绕过, auth.log, BlueTeam, DNS枚举, Python, 云计算, 免杀技术, 威胁检测, 子域名枚举, 安全告警, 安全运营, 异常IP检测, 扫描框架, 攻击分析, 无后门, 日志解析, 暴力破解检测, 系统安全, 红队行动, 网络安全, 网络安全工具, 自动化分析, 蓝军工具, 规则引擎, 证书伪造, 跨站脚本, 逆向工具, 隐私保护