
CVE-2021-44228 (Log4Shell) के लिए पूर्ण-चक्र सुरक्षा ऑडिटिंग, WAF परिहार, OOB LDAP सत्यापन, स्व-सुधार (स्वचालित पैचिंग) और अनुपालन रिपोर्टिंग हेतु एक स्वायत्त रिफ्लेक्टिव Go एजेंट।
स्वायत्त रिफ्लेक्सिव निष्पादक एजेंट (Go/Java) का पृथक डेमो स्टैंड
Русский 🇷🇺 • English 🇬🇧 • 中文 🇨🇳 • Español 🇪🇸 • Deutsch 🇩🇪 • Italiano 🇮🇹 • العربية 🇸🇦
[!NOTE] AUTO AUDIT एक सॉफ़्टवेयर कॉम्प्लेक्स है जो क्रिटिकल भेद्यता Log4Shell (CVE-2021-44228 / БДУ ФСТЭК:2021-06103) के लिए 100% स्वायत्त बंद-लूप (Sense-Think-Act) — पहचान, सत्यापन, एक्सप्लॉइटेशन, स्वचालित सुधार (Self-Healing / Auto-Remediation) और कंप्लायंस रिपोर्टिंग — का प्रदर्शन करता है।
यह स्टैंड Java Spring Boot पर आधारित एक लोकल वेब एप्लिकेशन, एक अंतर्निहित LDAP TCP Callback Listener और Go-एजेंट का संज्ञानात्मक कोर तैनात करता है, जो बाहरी वातावरण की आंशिक अवलोकनीयता की स्थितियों में निर्णय लेता है (Partially Observable Markov Decision Process — POMDP)।```mermaid %%{init: { 'theme': 'dark', 'themeVariables': { 'background': '#0f172a', 'primaryColor': '#1e293b', 'primaryTextColor': '#cbd5e1', 'primaryBorderColor': '#3b82f6', 'lineColor': '#38bdf8', 'secondaryColor': '#1e1b4b', 'tertiaryColor': '#0f172a', 'edgeLabelBackground': '#0f172a' } }}%% graph TD classDef sense fill:#0284c7,stroke:#0ea5e9,stroke-width:2px,color:#fff; classDef think fill:#4f46e5,stroke:#6366f1,stroke-width:2px,color:#fff; classDef act fill:#059669,stroke:#10b981,stroke-width:2px,color:#fff; classDef target fill:#dc2626,stroke:#ef4444,stroke-width:2px,color:#fff;
subgraph Sense ["🔍 СЕНСОРНЫЙ АНАЛИЗ (Sense)"]
A[Внешние отклики / TCP-коллбеки]:::sense --> B(Обновление Базы Знаний):::sense
end
subgraph Think ["🧠 КОГНИТИВНОЕ ЯДРО (Think)"]
B --> C{Вычисление Utility Policy}:::think
C -->|Рефлексивный вывод| D[Выбор эффектора из реестра]:::think
end
subgraph subgraph_Act ["⚡ ИСПОЛНЕНИЕ (Act)"]
D --> E[Выполнение Tool.Execute]:::act
E -->|Воздействие| F((Java Spring Boot Target)):::target
F -.->|Обратный канал OOB| A
end
---
## 🛠️ तकनीकी वास्तुकला और घटक
एजेंट की प्रोग्राम संरचना स्वच्छ वास्तुकला (*Hexagonal Architecture / Ports and Adapters*), SOLID और TDD के सिद्धांतों के अनुसार डिज़ाइन की गई है:
* 📂 **[cmd/agent/main.go](https://github.com/c00ln3t/log4shellauditor/blob/main/cmd/agent/main.go)** — प्रवेश बिंदु। बैकग्राउंड प्रक्रियाओं के जीवनचक्र को प्रबंधित करता है और एजेंट गोरूटीन के लॉन्च को समन्वित करता है।
* 📂 **`internal/`** — संज्ञानात्मक लूप की मुख्य व्यावसायिक तर्क:
* 🧠 **[agent/agent.go](https://github.com/c00ln3t/log4shellauditor/blob/main/internal/agent/agent.go)** — संज्ञानात्मक लूप। नियंत्रण चक्र और रणनीति चयन हेतु निर्णय नियम `Think()` लागू करता है।
* 💾 **[core/model.go](https://github.com/c00ln3t/log4shellauditor/blob/main/internal/core/model.go)** — `sync.RWMutex` पर आधारित थ्रेड-सेफ़ ज्ञानकोश (`KnowledgeBase` / LTM)।
* 🔌 **[core/effector.go](https://github.com/c00ln3t/log4shellauditor/blob/main/internal/core/effector.go)** — इफ़ेक्टर के लिए `Tool` इंटरफ़ेस।
* ⚙️ **[effectors/](https://github.com/c00ln3t/log4shellauditor/blob/main/internal/effectors)** — पॉलीमॉर्फ़िक इफ़ेक्टर (टूल) का रजिस्ट्री:
* 🔍 `ToolPortScanner` — नेटवर्क परिधि की टोह लेना।
* 🌐 `ToolDiscovery` — कनेक्शन बिंदु और इनपुट वेक्टर (`X-Api-Version`) खोजना।
* 🔬 `ToolPayloadGenerator` — JNDI सिग्नेचर वेक्टर का संश्लेषण।
* 🚀 `ToolProber` — आउट-ऑफ़-बैंड (Out-of-Band) ट्रेसिंग द्वारा कमज़ोरी की जाँच।
* 🛡️ `ToolSemanticFuzzer` — नेस्टेड सिंटैक्टिक म्यूटेशन द्वारा फ़िल्टरिंग क्लासिफ़ायर (WAF Evasion) को बायपास करना।
* 🩹 `ToolRemediator` — स्वचालित पैचिंग (Self-Healing)।
* 📄 `ToolReporter` — ГОСТ Р 56939-2016 के अनुसार रिपोर्ट तैयार करना।
* 📂 **`pkg/`** — सहायक पैकेज और लाइब्रेरी:
* 📡 **[oob/](https://github.com/c00ln3t/log4shellauditor/blob/main/pkg/oob)** — आउट-ऑफ़-बैंड श्रोता (LDAP और HTTP)।
* ☕ **[jvm/](https://github.com/c00ln3t/log4shellauditor/blob/main/pkg/jvm)** — स्थानीय Java लक्ष्य के जीवनचक्र और पुनः आरंभ का प्रबंधन।
* 📂 **[deployments/](https://github.com/c00ln3t/log4shellauditor/blob/main/deployments)** — तैनाती हेतु कॉन्फ़िगरेशन फ़ाइलें (Docker, Compose)।
* 📂 **[test/vulnerable-app/](https://github.com/c00ln3t/log4shellauditor/blob/main/test/vulnerable-app)** — कमज़ोर परीक्षण Java Spring Boot ऐप।
---
## 🎯 गणितीय तंत्र और संज्ञानात्मक चक्र की विशिष्टता (Think-Act Loop)
एजेंट द्वारा निर्णय लेने को **आंशिक रूप से प्रेक्षणीय मार्कोव निर्णय प्रक्रिया (POMDP)** के रूप में औपचारिक रूप दिया गया है, जिसे टुपल $\langle S, A, T, R, \Omega, O, \gamma \rangle$ द्वारा वर्णित किया जाता है:
* $S$ — लक्ष्य परिवेश की छिपी अवस्थाओं का असतत स्थान (पोर्ट उपलब्धता, कमज़ोर पैरामीटरों की मौजूदगी, WAF गतिविधि, समझौता का तथ्य, पैचिंग स्थिति, कंप्लायंस रिपोर्ट की उपलब्धता)।
* $A$ — इफ़ेक्टर क्रियाओं का स्थान (टूल कॉल: `port_scanner`, `discovery`, `payload_generator`, `prober`, `semantic_fuzzer`, `remediator`, `reporter`, `stop`)।
* $\Omega$ — प्रेक्षणों का स्थान (प्राप्त HTTP प्रतिक्रियाएँ, OOB TCP कॉलबैक, फ़ाइल सिस्टम रिकॉर्ड)।
* $O(o \mid s', a)$ — प्रेक्षण फ़ंक्शन, जो प्रतिक्रिया $o \in \Omega$ प्राप्त करने की संभावना निर्धारित करता है।