Přeskočit na hlavní obsah

Steel Shield

Steel Shield je framework pro bezpečnostní zpevnění platformy NetRecon. Poskytuje několik vrstev ochrany pro self-hosted nasazení a zajišťuje integritu a autenticitu všech komponent platformy.

Přehled​

Steel Shield zahrnuje čtyři základní bezpečnostní mechanismy:

FunkceÚčel
Integrita binárních souborůOvěření, že spustitelné soubory nebyly pozměněny
Připnutí certifikátůPrevence útoků typu man-in-the-middle na API komunikaci
Reakce na manipulaciDetekce a reakce na neoprávněné modifikace
Ochrana za běhuOchrana proti manipulaci s pamětí a ladění

Ověření integrity binárních souborů​

Každý binární soubor NetRecon (backend sondy, agenti, služby) je digitálně podepsán. Při spuštění každá komponenta ověřuje svou vlastní integritu.

Jak to funguje​

  1. Během sestavení je každý binární soubor podepsán privátním klíčem drženým společností NetRecon
  2. Podpis je vložen do metadat binárního souboru
  3. Při spuštění binární soubor vypočítá SHA-256 hash sám ze sebe
  4. Hash je ověřen proti vloženému podpisu
  5. Pokud ověření selže, binární soubor odmítne spuštění a zaloguje upozornění

Ruční ověření​

Ručně ověřte integritu binárního souboru:

# Ověření backendu sondy
netrecon-verify /usr/local/bin/netrecon-probe

# Ověření agenta
netrecon-verify /usr/local/bin/netrecon-agent

# Očekávaný výstup:
# Binary: /usr/local/bin/netrecon-probe
# SHA-256: a1b2c3d4e5f6...
# Signature: VALID
# Signed by: NetRecon Build System
# Signed at: 2026-03-15T10:00:00Z

Ověření Docker obrazu​

Docker obrazy jsou podepsány pomocí Docker Content Trust (DCT):

# Povolení ověřování důvěryhodnosti obsahu
export DOCKER_CONTENT_TRUST=1

# Stažení s ověřením podpisu
docker pull netrecon/api-gateway:latest

Připnutí certifikátů​

Připnutí certifikátů zajišťuje, že komponenty NetRecon komunikují pouze s legitimními servery, čímž brání odposlouchávání i v případě kompromitace certifikační autority.

Připnutá spojení​

SpojeníTyp připnutí
Agent na ProbePřipnutí veřejného klíče
Admin Connect na ProbeOtisk certifikátu
Probe na Update ServerPřipnutí veřejného klíče
Probe na License ServerOtisk certifikátu

Jak to funguje​

  1. Očekávaný hash veřejného klíče certifikátu je vložen do každého klientského binárního souboru
  2. Při navazování TLS spojení klient extrahuje veřejný klíč serveru
  3. Klient vypočítá SHA-256 hash veřejného klíče
  4. Pokud hash neodpovídá připnuté hodnotě, spojení je odmítnuto
  5. Neúspěšná validace připnutí spustí bezpečnostní upozornění

Rotace připnutí​

Při rotaci certifikátů:

  1. Nová připnutí jsou distribuována prostřednictvím update serveru před změnou certifikátu
  2. Během přechodného období jsou platná jak stará, tak nová připnutí
  3. Po přechodu jsou stará připnutí odebrána v další aktualizaci

Pro self-hosted nasazení aktualizujte připnutí v konfiguraci:

# /etc/netrecon/security.yaml
certificate_pins:
api_gateway:
- "sha256/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" # Aktuální
- "sha256/BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB=" # Záložní

Reakce na manipulaci​

Steel Shield monitoruje kritické soubory a konfigurace pro neoprávněné změny.

Monitorované položky​

PoložkaFrekvence kontrolyReakce
Binární souboryPři spuštění + každou hodinuUpozornění + volitelné vypnutí
Konfigurační souboryKaždých 5 minutUpozornění + obnovení ze zálohy
Integrita databázeKaždých 15 minutUpozornění + kontrola konzistence
TLS certifikátyKaždých 5 minutUpozornění při změně
Systémové balíčkyDenněUpozornění při neočekávaných změnách

Reakce​

Při detekci manipulace může Steel Shield:

  1. Zalogovat — zaznamenat událost do bezpečnostního auditního logu
  2. Upozornit — odeslat oznámení prostřednictvím nakonfigurovaných kanálů
  3. Obnovit — obnovit pozměněný soubor ze známé dobré zálohy
  4. Izolovat — omezit síťový přístup pouze na správu
  5. Vypnout — zastavit službu pro prevenci dalšího kompromitování

Konfigurace úrovně reakce:

# /etc/netrecon/security.yaml
tamper_response:
level: "alert_and_revert" # Možnosti: log, alert, alert_and_revert, isolate, shutdown
notify_email: "[email protected]"

Databáze integrity souborů​

Steel Shield udržuje hashovou databázi všech chráněných souborů:

# Inicializace databáze integrity
netrecon-shield init

# Ruční kontrola integrity
netrecon-shield verify

# Očekávaný výstup:
# Checked 47 files
# Status: ALL INTACT
# Last verified: 2026-03-15T14:30:00Z

Ochrana za běhu​

Ochrana proti ladění​

V produkčním režimu binární soubory NetRecon zahrnují opatření proti ladění:

  • Detekce připojených debuggerů (ptrace na Linuxu, IsDebuggerPresent na Windows)
  • Časové kontroly pro krokové provádění
  • Při detekci ladění v produkci se proces řádně ukončí
info

Ochrana proti ladění je v vývojových sestaveních vypnuta, aby bylo umožněno normální ladění.

Ochrana paměti​

  • Citlivá data (tokeny, klíče, hesla) jsou uložena v chráněných oblastech paměti
  • Paměť je po použití vynulována, aby se zabránilo odhalení zbytkových dat
  • Na Linuxu je použit mlock pro zabránění prohození citlivých stránek na disk

Konfigurace​

Povolení Steel Shield​

Steel Shield je ve výchozím nastavení povolen v produkčních nasazeních. Konfigurujte ho v:

# /etc/netrecon/security.yaml
steel_shield:
enabled: true
binary_integrity: true
certificate_pinning: true
tamper_response: true
runtime_protection: true
integrity_check_interval: 3600 # sekundy
tamper_check_interval: 300 # sekundy

Vypnutí pro vývoj​

Pro vývojová a testovací prostředí:

steel_shield:
enabled: false

Nebo vypnutí konkrétních funkcí:

steel_shield:
enabled: true
binary_integrity: false # Přeskočení ověření hashů během vývoje
runtime_protection: false # Povolení připojení debuggeru

Auditní stopa​

Všechny události Steel Shield jsou zaznamenávány do bezpečnostního auditního logu:

# Zobrazení posledních bezpečnostních událostí
netrecon-shield audit --last 24h

# Export auditního logu
netrecon-shield audit --export csv --output security-audit.csv

Záznamy auditního logu zahrnují:

  • Časové razítko
  • Typ události (integrity_check, pin_validation, tamper_detected atd.)
  • Dotčená komponenta
  • Výsledek (úspěch/neúspěch)
  • Provedená akce
  • Další podrobnosti

Poznámky pro self-hosting​

Při self-hostingu mějte na paměti:

  1. Vlastní certifikáty: Pokud používáte vlastní CA, aktualizujte konfiguraci připnutí certifikátů po nasazení
  2. Aktualizace binárních souborů: Po aktualizaci binárních souborů spusťte netrecon-shield init pro obnovení databáze integrity
  3. Zálohujte databázi integrity: Zahrňte /etc/netrecon/integrity.db do vaší zálohovací rutiny
  4. Monitorujte upozornění: Nakonfigurujte e-mailové nebo webhookové oznámení pro upozornění na manipulaci

Často kladené otázky​

Otázka: Může Steel Shield způsobit falešné poplachy? Odpověď: Falešné poplachy jsou vzácné, ale mohou nastat po systémových aktualizacích, které modifikují sdílené knihovny. Po systémových aktualizacích spusťte netrecon-shield init pro obnovení databáze integrity.

Otázka: Ovlivňuje Steel Shield výkon? Odpověď: Dopad na výkon je minimální. Kontroly integrity běží ve vlákně na pozadí a typicky se dokončí za méně než 1 sekundu.

Otázka: Mohu integrovat upozornění Steel Shield s mým SIEM? Odpověď: Ano. Nakonfigurujte syslog výstup v bezpečnostní konfiguraci pro přeposílání událostí do vašeho SIEM. Steel Shield podporuje syslog (RFC 5424) a JSON výstupní formáty.

Otázka: Je Steel Shield vyžadován pro produkční nasazení? Odpověď: Steel Shield je důrazně doporučen, ale není striktně vyžadován. Můžete ho vypnout, ale tím odstraníte důležité bezpečnostní ochrany.

Pro další pomoc kontaktujte [email protected].