हमने एक ऐसा सिस्टम बनाया है जो व्यक्तिगत सिस्टम में अदृश्य हमलों को क्रॉस-सिस्टम लॉग correlation के जरिए detect करता है #
एक firewall port scan, एक VPN authentication failure, एक application login attempt। हर individual event की severity कम होती है। लेकिन जब same IP इन 3 layers में एक साथ दिखाई देता है, तो यह coincidence नहीं है—यह एक attack campaign है। हमने BASTION में एक multi-layer correlation engine implement किया और actual attacks में cross-layer campaign detection को demonstrate किया।
Individual Device Monitoring में structural blind spots होते हैं #
अब तक, BASTION हर device के logs को analyze करके anomalies detect करता आया है। एक firewall port scan, web server पर bot attacks, AD authentication failures—जब भी कोई device threshold से ऊपर जाता है, हम उसे block कर देते हैं।
हालांकि, यह approach ऐसे campaigns detect नहीं कर सकता जो threshold से नीचे के attacks को combine करते हैं।
इस “isolation में अदृश्य, लेकिन systems में visible” pattern को detect करने के लिए, हमने BASTION में एक multi-layer correlation engine implement किया।
बहु-Layer Defense Architecture #
BASTION द्वारा monitor की जाने वाली infrastructure 5 defensive layers से बनी है।
| Layer | रक्षा Target | पता चली Events |
|---|---|---|
| L1: नेटवर्क Boundary | उपकरण: Firewall | जैसे Port scans, DDoS, malformed packets |
| L2: VPN / रिमोट Access | उपकरण: VPN Gateway | जैसे TLS errors, प्रमाणीकरण failures, certificate की जांच |
| L3: प्रमाणीकरण Infrastructure | उपकरण: AD / LDAP | जैसे Login failures, account lockout, क्रेडेंशियल स्टफिंग हमले |
| L4: Application | उपकरण: Web Server / Cloud Applications | जैसे Bot spam, भेद्यता scans, login के प्रयास |
| L5: Endpoint | उपकरण: Windows Clients | जैसे संदिग्ध PowerShell execution, USB कनेक्शन, privilege escalation |
Traditionally, ये 5 layers independently monitor किए जाते थे। Multi-layer correlation engine सभी layers को same IP के साथ correlate करके horizontally track करता है।
Trace Accumulation और Correlation #
Multi-layer correlation engine का core, attack source IPs के “traces” को layers के across accumulate करने का एक mechanism है।
Periodic analysis every 15 minutes → Extract IPs from logs of each layer → Record to trace registry "when, in which layer, what was detected" → Auto-detect IPs appearing in multiple layers → If threshold exceeded, judge as campaign → Auto-block
भले ही individual layers की severity कम दिखे, फिर भी जैसे-जैसे traces कई layers में accumulate होते हैं, correlation score बढ़ता है और campaign के रूप में auto-block engage हो जाता है।
Traces decay होते हैं #
Traces persistent नहीं होते। बिना update के एक समय के बाद उन्हें automatically delete कर दिया जाता है। अगर attackers scanning बंद कर देते हैं, तो traces गायब हो जाते हैं और false positive का risk कम हो जाता है। इसके उलट, अगर कम समय में कई layers में traces overlap करते हैं, तो correlation score तेजी से बढ़ता है और blocking engage हो जाती है। एक “याद रखो, पर भूल भी जाओ” design।
वास्तविक Campaign Detection #
इस multi-layer correlation engine को implement करने के थोड़ी देर बाद ही, एक actual attack पर campaign detection engage हो गया।
Multi-Layer Correlation Campaign Detection
हमले का source IP: xx.xxx.156.12
Appearance layers (3 layers): L1_network, L3_auth, L4_app
Total events: 120
Same IP कई defensive layers में detect हुआ।
इस IP ने निम्नलिखित behavioral patterns दिखाए।
| Layer | क्या Detect हुआ | व्यक्तिगत Judgment |
|---|---|---|
| L1: नेटवर्क Boundary | यहां Firewall द्वारा access block किया गया | — (normal noise range) |
| L3: प्रमाणीकरण Infrastructure | यहां Authentication-related events detect हुए | — (individually threshold से नीचे) |
| L4: Application | यहां Application layer पर access detect हुआ | — (individually threshold से नीचे) |
अकेले किसी भी layer से high judgment trigger नहीं होता। लेकिन क्योंकि same IP 3 layers में दिखाई दिया, multi-layer correlation engine ने इसे एक campaign judge किया और auto-block engage हुआ।
यह क्यों महत्वपूर्ण है #
Fail2Ban से Fundamental Difference #
Fail2Ban एक excellent tool है, लेकिन यह केवल single log file की threshold judgment कर सकता है। “अगर nginx-error.log में 10 403s दिखते हैं तो ban करो”। यह एक device के एक log तक सीमित judgment है।
Multi-layer correlation engine सभी device logs में same IP के behavioral patterns को track करता है। यह log context से “low-frequency, multi-layer” attack campaigns detect करता है—ऐसा कुछ जो individual devices detect नहीं कर सकते।
Connected Devices बढ़ने के साथ Accuracy बढ़ती है #
जब एक new device का syslog BASTION से connect किया जाता है, तो multi-layer correlation में एक “layer” add हो जाती है। जैसे-जैसे layers बढ़ती हैं, same IP का behavioral pattern ज्यादा angles से observe होता है, जिससे campaign detection की accuracy improve होती है।
यह एक ऐसी characteristic है जो traditional monitoring tools (हर device की independent analysis) में नहीं होती। BASTION के साथ, जैसे-जैसे monitored targets बढ़ते हैं, पूरे system की defensive capability मजबूत होती जाती है।
“बस syslog point करो” design एक prerequisite था #
Article 4 में implement किया गया mechanism जो “बस syslog point करने से device type को automatically determine” करता है, वह भी multi-layer correlation के लिए एक onboarding design था। चूंकि new devices add करते समय किसी configuration file editing या device registration की जरूरत नहीं होती, हम customer environments की सभी machines को कम समय में BASTION से connect कर सकते हैं। Easy connection multi-layer correlation की practicality को support करता है।
Safety Design #
चूंकि multi-layer correlation auto-block करता है, false positive risk management बहुत critical है।
| Safety तंत्र | उद्देश्य |
|---|---|
| Automatic trace decay | बिना update वाले traces auto-delete हो जाते हैं। पुराने traces से गलत judgments को रोकता है |
| Whitelist matching | प्राइवेट IPs, कंपनी IPs, DNS servers कभी block नहीं किए जाते |
| Duplicate block check | पहले से block किए गए IPs को दोबारा block नहीं किया जाता |
| 24-hour auto-release | गलत blocks भी 24 hours में automatically recover हो जाते हैं |
| Slack से Immediate release | Business impact होने पर, Slack command से तुरंत release किया जा सकता है |
Summary #
हमने सभी system logs में attack campaigns को automatically detect करने के लिए BASTION में एक multi-layer correlation engine implement किया। individual device thresholds से नीचे के attacks भी, अगर same IP कई defensive layers में दिखता है, तो campaign judge किए जाते हैं और auto-block trigger होता है।
Implementation के तुरंत बाद, एक actual attack पर 3 layers में cross-layer campaign detection engage हुआ, जिससे proof of concept complete हो गया। BASTION “individual device monitoring tool” से evolve होकर “cross-system attack campaign डिटेक्शन engine” बन रहा है।
BASTION एक ऐसी service है जो closed environments में AI security monitoring को realize करती है।
अपनी पूरी infrastructure को BASTION से connect करके, multi-layer correlation defense effective हो जाता है।