mirror of
https://github.com/mukul975/Anthropic-Cybersecurity-Skills.git
synced 2026-07-20 14:30:59 +03:00
Mapped every skill to NIST CSF 2.0 subcategory IDs (GV/ID/PR/DE/RS/RC functions) based on subdomain and content analysis. Restores 11 skills corrupted during prior rebase, re-enriching with ATLAS, D3FEND, NIST AI RMF, and CSF 2.0 fields. All 754 skills now carry structured mappings for all 5 security frameworks: - MITRE ATT&CK (in tags) - MITRE ATLAS v5.5 (atlas_techniques) - MITRE D3FEND v1.3 (d3fend_techniques) - NIST AI RMF 1.0 (nist_ai_rmf) - NIST CSF 2.0 (nist_csf)
69 lines
2.3 KiB
Markdown
69 lines
2.3 KiB
Markdown
---
|
|
name: analyzing-web-server-logs-for-intrusion
|
|
description: Parse Apache and Nginx access logs to detect SQL injection attempts, local file inclusion, directory traversal,
|
|
web scanner fingerprints, and brute-force patterns. Uses regex-based pattern matching against OWASP attack signatures, GeoIP
|
|
enrichment for source attribution, and statistical anomaly detection for request frequency and response size outliers.
|
|
domain: cybersecurity
|
|
subdomain: security-operations
|
|
tags:
|
|
- analyzing
|
|
- web
|
|
- server
|
|
- logs
|
|
version: '1.0'
|
|
author: mahipal
|
|
license: Apache-2.0
|
|
nist_csf:
|
|
- DE.CM-01
|
|
- RS.MA-01
|
|
- GV.OV-01
|
|
- DE.AE-02
|
|
---
|
|
|
|
|
|
# Analyzing Web Server Logs for Intrusion
|
|
|
|
|
|
## When to Use
|
|
|
|
- When investigating security incidents that require analyzing web server logs for intrusion
|
|
- When building detection rules or threat hunting queries for this domain
|
|
- When SOC analysts need structured procedures for this analysis type
|
|
- When validating security monitoring coverage for related attack techniques
|
|
|
|
## Prerequisites
|
|
|
|
- Familiarity with security operations concepts and tools
|
|
- Access to a test or lab environment for safe execution
|
|
- Python 3.8+ with required dependencies installed
|
|
- Appropriate authorization for any testing activities
|
|
|
|
## Instructions
|
|
|
|
1. Install dependencies: `pip install geoip2 user-agents`
|
|
2. Collect web server access logs in Combined Log Format (Apache) or Nginx default format.
|
|
3. Parse each log entry extracting: IP, timestamp, method, URI, status code, response size, user-agent, referer.
|
|
4. Apply detection rules:
|
|
- SQL injection: `UNION SELECT`, `OR 1=1`, `' OR '`, hex encoding patterns
|
|
- LFI/Path traversal: `../`, `/etc/passwd`, `/proc/self`, `php://filter`
|
|
- XSS: `<script>`, `javascript:`, `onerror=`, `onload=`
|
|
- Scanner signatures: nikto, sqlmap, dirbuster, gobuster, wfuzz user-agents
|
|
- Brute force: >50 POST requests to login endpoints from same IP in 5 minutes
|
|
5. Enrich with GeoIP data and generate a prioritized findings report.
|
|
|
|
```bash
|
|
python scripts/agent.py --log-file /var/log/nginx/access.log --geoip-db GeoLite2-City.mmdb --output web_intrusion_report.json
|
|
```
|
|
|
|
## Examples
|
|
|
|
### Detect SQLi in URI
|
|
```
|
|
192.168.1.100 - - [15/Jan/2024:10:30:45 +0000] "GET /products?id=1' UNION SELECT username,password FROM users-- HTTP/1.1" 200 4532
|
|
```
|
|
|
|
### Scanner User-Agent Detection
|
|
```
|
|
Nikto/2.1.6, sqlmap/1.7, DirBuster-1.0-RC1, gobuster/3.1.0
|
|
```
|