
CVE-2021-44228 के लिए डॉकराइज़्ड हनीपॉट।
व्यापक सुरक्षा सुविधाओं, निगरानी और अलर्टिंग क्षमताओं के साथ CVE-2021-44228 के लिए उन्नत डॉकरीकृत हनीपॉट।
# Generate SSL certificates
./generate-ssl.sh
# Start with docker-compose
docker-compose up -d
# Monitor logs
./monitor.py --tail
# Run as root for fail2ban setup
sudo ./deploy.sh
# x86_64
docker run -d -p 8080:8080 \
-e HONEYPOT_NAME="log4shell-honeypot" \
-e LOG_FORMAT="json" \
-e RATE_LIMIT_REQUESTS="100" \
--name="log4shell-honeypot" \
msanford/log4shell-honeypot:latest
# ARM (e.g., Raspberry Pi)
docker run -d -p 8080:8080 \
-e HONEYPOT_NAME="log4shell-honeypot" \
--name="log4shell-honeypot" \
msanford/log4shell-honeypot:arm-latest
# Load from config file
docker-compose --env-file config.env up -d
हनीपॉट निम्नलिखित Log4Shell पैटर्न का पता लगाता है:
${jndi: - JNDI लुकअप (प्राथमिक हमला वेक्टर)${ldap: - LDAP निर्देशिका लुकअप${rmi: - RMI रिमोट मेथड इनवोकेशन${dns: - DNS लुकअप${env: - पर्यावरण चर तक पहुंच${sys: - सिस्टम प्रॉपर्टी एक्सेस${java: - Java रनटाइम जानकारी# Tail logs with formatted output
./monitor.py --tail
# Analyze last 24 hours
./monitor.py --hours 24
# Analyze last hour
./monitor.py --hours 1
curl http://localhost/health
curl http://localhost/metrics
sudo fail2ban-client status log4shell-honeypot
उन्नत JSON लॉग प्रारूप में शामिल है:
{
"timestamp": "2024-01-15T10:30:45Z",
"honeypot": "log4shell-honeypot",
"event_type": "log4shell_attempt",
"source_ip": "192.168.1.100",
"real_ip": "10.0.0.5",
"method": "POST",
"url": "http://honeypot.local/",
"user_agent": "Mozilla/5.0...",
"detected_patterns": ["${jndi:", "${env:"],
"detection_source": "form_field:username",
"headers": {...},
"form_data": {...},
"query_params": {...},
"content_length": 45
}
संरचित JSON लॉग को आसानी से निम्न द्वारा इन्जेस्ट किया जा सकता है:
इस आधार पर अलर्ट सेट करें:
# Build container
docker build -t log4shell-honeypot:latest .
# Build with specific tag
docker build -t log4shell-honeypot:v2.0 .
docker-compose ps
docker-compose logs log4shell-honeypot
curl -f http://localhost/health || echo "Health check failed"
sudo fail2ban-client status
sudo tail -f /var/log/fail2ban.log
# Check for recent attacks
./monitor.py --hours 1
# View raw logs
tail -f /var/log/log4shell-honeypot.log
RATE_LIMIT_REQUESTS बढ़ाएँMAX_LOG_SIZE और LOG_BACKUP_COUNT समायोजित करें# In docker-compose.yml
deploy:
resources:
limits:
cpus: '0.5'
memory: 256M
reservations:
cpus: '0.1'
memory: 128M
यह BinaryDefense/log4shell-honeypot-flask का एक उन्नत फोर्क है जिसमें महत्वपूर्ण सुरक्षा और परिचालन सुधार हैं।
| चर | डिफ़ॉल्ट | विवरण |
|---|
HONEYPOT_NAME | log4shell-honeypot | हनीपॉट के लिए नाम पहचानकर्ता |
LOG_LEVEL | INFO | लॉगिंग स्तर (DEBUG, INFO, WARNING, ERROR, CRITICAL) |
LOG_FORMAT | json | लॉग प्रारूप (json या text) |
MAX_LOG_SIZE | 10485760 | बाइट्स में अधिकतम लॉग फ़ाइल आकार (10MB) |
LOG_BACKUP_COUNT | 5 | रखने के लिए बैकअप लॉग फ़ाइलों की संख्या |
RATE_LIMIT_REQUESTS | 100 | प्रति विंडो प्रति IP अधिकतम अनुरोध |
RATE_LIMIT_WINDOW | 3600 | सेकंड में दर सीमा विंडो (1 घंटा) |