Szolidaritás Ukrajnával. Az ukrán vállalatoknak felajánlott szolgáltatás, ameddig a háború tart. Ingyenes hozzáférés kérése
Biztonság · nyilvános dokumentum

Nyilvános <em>fenyegetési modell.</em>

Amit védünk, ki ellen, hogyan, és amit <em>nem</em> védünk. Jobb egy megnevezett kör, mint rejtett ígéretek.

v1.0 verzió · felülvizsgálva: {{ "now"|date("d/m/Y") }} · minden jelentős kiadásnál felülvizsgálva.

Módszertan: STRIDE (Spoofing / Tampering / Repudiation / Information disclosure / Denial of service / Elevation of privilege) a termék öt felületére alkalmazva. Minden sor: fenyegetés · ARDNTECH mérséklés · vállalt kompromisszum.

CISO-knak, auditoroknak és biztonsági kutatóknak szánt dokumentum. Az AGPL forráskód nyilvános a github.com/aegirex/server címen. A részletes operatív runbookok a design partnerek számára fenntartottak maradnak NDA alatt.

1. Modellezett szereplők

A modellben figyelembe vett kilenc támadói profil.

Szereplő Leírás Képességek
Külső támadó Internet, semmilyen kezdeti hozzáférés Brute force, phishing, webes exploitok, hálózati MITM
Phishelt felhasználó Egy klónozott webhely célfelhasználója Egy támadói domainhez küldi a hitelesítőit
Rosszindulatú társbérlő Egy másik ARDNTECH szervezet felhasználója Megpróbálja elolvasni a szomszédos szervezetek titkait
Kompromittált böngésző Malware vagy rosszindulatú bővítmény által fertőzött böngésző Hozzáférés a DOM-hoz, el tudja olvasni a beviteli mezőket
Szerver-adminisztrátor Infrastruktúra-üzemeltető SSH hozzáféréssel a szerverhez Olvassa az adatbázist, olvassa a memóriát, módosítja a kódot
Adatbázis-kiszivárogtatás Ellopott backup, kiszivárgott SQL dump Az adatbázis teljes snapshotja
Bírósági hatóság Törvényes megkeresés, közigazgatási rendelvény A tárhelyszolgáltatót a tárolt adatok kiadására kényszeríti
ARDNTECH insider A(z) ARDNTECH jövőbeli alkalmazottja vagy szolgáltatója Kódfelülvizsgálat, telepítési hozzáférés, naplók olvasása
Kvantum-ellenfél Működőképes kvantumszámítógép (horizont > 2030) Megtöri az RSA / ECC-t polinomiális időben (Shor)

2. Védett adatok

Az adatok osztályozása és a nyugalmi védelmi szint.

Adat Érzékenység Tárolás
Felhasználói mesterjelszó Kritikus Kizárólag Argon2id hash (RFC 9106)
A titkok tartalma (payload) Kritikus Végpontok között titkosítva (OpenPGP), a szerver átláthatatlan blobot tárol
Felhasználói OpenPGP privát kulcs Kritikus Soha nincs a szerveren. Helyileg tárolva, felhasználói jelmondattal védve
TOTP titkok nyugalmi állapotban Kritikus XChaCha20-Poly1305-tel titkosítva (kulcs az adatbázison kívül)
Webhook titkok nyugalmi állapotban Kritikus XChaCha20-Poly1305-tel titkosítva (kulcs az adatbázison kívül)
Titkok és mappák nevei Mérsékelt Tiszta szövegben a szerver oldalán. Kompromisszum dokumentálva 5.1
Auditnapló Magas HMAC-SHA-256 lánc, tamper-evidence O(1) idejű

3. Fenyegetések és mérséklések felületenként

3.1 SaaS webalkalmazás

Fenyegetés Mérséklés Állapot
Brute force a jelszón Sebességkorlátozó 5 próbálkozás / 15 perc IP-nként + Argon2id (256 MiB, 5 menet) · 1 mp helyi próbálkozásonként Szállítva
Credential stuffing Ugyanaz a sebességkorlátozó + HIBP szkennelés opt-in a bejelentkezés után (kifejezett GDPR-hozzájárulás) Szállítva
2FA megkerülés TOTP RFC 6238 issuer pinninggel + egyszer használatos helyreállítási kódok + WebAuthn PRF Szállítva
Tárolt vagy reflektált XSS Szigorú CSP (script-src 'self' 'wasm-unsafe-eval'), aktivált Trusted Types, automatikus Twig escaping Szállítva
Az OpenPGP.js függőség kompromittálódása A buildnél ellenőrzött SHA-256 ujjlenyomattal csomagolt könyvtár (SRI integritási manifeszt) Szállítva
A mesterjelszó phishingje Erős mérséklés hamarosan: WebAuthn PRF passkeyek, amelyek megszüntetik a jelszó továbbítását, és amelyeket a böngésző az eredeti domainhez köt. Addig: felhasználói képzés + UI-jelzők. Hamarosan

3.2 Titkosított tárolás

Fenyegetés Mérséklés Állapot
Ellopott adatbázis-dump OpenPGP E2E titkosított payload, a felhasználói privát kulcs nélkül olvashatatlan. Argon2id hashben lévő, nem visszaállítható jelszavak Szállítva
Ellopott backup Titkosított backupok (Argon2id + ChaCha20-Poly1305), több címzettes. Automatizált visszaállítási teszt a CI-ben Szállítva
A szerver-adminisztrátor elolvassa egy titok tartalmát Lehetetlen a felhasználói privát kulcs nélkül. A szerver csak átláthatatlan blobokat tárol Szállítva
Az auditnapló módosítása (tampering) HMAC-SHA-256 lánc, O(1) idejű felismerés az ellenőrzéskor. A lánc részlete Szállítva

3.3 REST API

Fenyegetés Mérséklés Állapot
Szervezetek közötti adatszivárgás Minden API-token egyetlen szervezethez kötve. Szisztematikus szűrés minden endpointnál. Kifejezett elszigetelési tesztek a CI-ben minden commitnál Szállítva
API-token ellopása Argon2id-vel hashelt token az adatbázisban. Szabad rotáció a felhasználó által. Konfigurálható minimális scope (olvasás / írás) Szállítva
Alkalmazás szolgáltatásmegtagadás Sebességkorlátozó tokenenként és IP-nként (Symfony keret) Szállítva

3.4 Böngészőbővítmények

Fenyegetés Mérséklés Állapot
A build pipeline kompromittálódása A függőségek buildhez láncolt SHA-256 ujjlenyomatának ellenőrzése. Aláírt SBOM tervezve Szállítva
A popup bezárása = a hozzáférés átmeneti elvesztése Az első verzió kompromisszuma: a privát kulcs nincs perzisztálva a támadási felület korlátozására. Hamarosan: paraméterezhető auto-lock + perzisztencia kontrollált service workeren keresztül. Hamarosan
Hitelesítők elfogása egy phishing-webhelyen A felhasználó látja a valós domainnevet a bővítmény popupjában, mielőtt a "Mentés" gombra kattintana Szállítva

3.5 Önállóan üzemeltetett infrastruktúra

Fenyegetés Mérséklés Állapot
Kompromittált Docker-image Automatizált sebezhetőség-szkennelés a CI-ben. Sigstore aláírás tervezve a felhasználói ellenőrzéshez a telepítés oldalán Folyamatban
Nem tesztelt backup Automatizált visszaállítási teszt a CI-ben minden kiadásnál. Nincs nem ellenőrzött backup éles környezetben Szállítva
mTLS éles környezetben Konfigurációval aktiválható. Audit (csak naplók), majd enforcement módok elérhetők Szállítva

4. Védelmi kör · vállalt korlátok

Szerkesztőségi őszinteség: íme azok a felületek, amelyeket az ARDNTECH nem fed le egyedül, és az ajánlott mérséklés.

Korlát Miért Ajánlott mérséklés
A felhasználó munkaállomásának teljes kompromittálódása Egy a böngésző RAM-jához hozzáféréssel rendelkező malware el tudja olvasni a visszafejtett privát kulcsot Hardveres passkey (YubiKey, TPM), amely egy biztonságos elembe zárja a kulcsot
Az ARDNTECH szerver kompromittálódása (root) Egy root támadó el tudja olvasni az aktív HTTP munkameneteket A tárolt titkok olvashatatlanok maradnak (zero-knowledge). Csak a kompromittálódás pillanatában nyitott munkamenetek vannak veszélyben. Rövid auto-lock ajánlott
A mesterjelszó elvesztése A szigorú zero-knowledge közvetlen következménye: semmilyen szerver oldali mód a kulcs helyreállítására A létrehozáskor kinyomtatott helyreállítási kódok. Hamarosan: Shamir M-az-N-ből megosztás az Enterprise csomagokhoz
Kvantum-ellenfél (horizont > 2030) Az OpenPGP v6 + AES-256 az ANSSI 2024-es RGS szerint 5-10 évig biztonságosnak becsült Posztkvantum migráció (ML-KEM, ML-DSA) hosszú távú értékelés alatt
Fizikai támadás a felhasználó munkaállomásán Az ARDNTECH egy logikai széf, nem egy fizikai páncélszekrény A széf rövid auto-lockja + hardveres WebAuthn passkey
ARDNTECH insider (jövőbeli alkalmazott) Egy SaaS-kiadó bizalmi modelljének vállalt korlátja NDA, a felelősségek szétválasztása, kötelező kódfelülvizsgálat, tamper-evident audit lánc, a legkisebb jogosultság elve

5. Vállalt kompromisszumok

5.1 Titkok és mappák nevei tiszta szövegben a szerver oldalán

Választás: a nevek tiszta szövegben tárolva a szerver oldalán.

Miért: azonnali szerver oldali keresés, a fastruktúra megjelenítése minden navigációnál való visszafejtés nélkül, hierarchikus mappamegosztás lehetséges.

Hatás: egy a támadó, aki kiszivárogtatja az adatbázist, látja, hogy egy "AWS Prod" nevű titok létezik a "DevOps / Cloud" mappában. NEM látja a tartalmat (E2E titkosított payload).

Mérlegelt alternatíva: egy "anonymise me" opció, amely a neveket is titkosítja. Jelentős UX-költség: nincs szerver oldali keresés, teljes kliensoldali szkennelés minden kérésnél.

5.2 Tiszta szövegű jelszó a DOM-ban a beíráskor

Választás: az OpenPGP azután titkosítja a payloadot, hogy a felhasználó beírta a jelszavát.

Miért: nincs alternatíva · a böngészőnek látnia kell a tiszta szöveget, hogy a felhasználó beírhassa.

Mérséklések: a Trusted Types CSP megakadályozza, hogy a DOM XSS kiszivárogtató JavaScriptet injektáljon. Hamarosan: WebAuthn passkeyek, amelyek teljesen megszüntetik a jelszavak továbbítását.

5.3 Mesterjelszó = a széf egyetlen kulcsa

Választás: nincs helyreállítás, ha a felhasználó egyszerre veszíti el a mesterjelszavát ÉS a helyreállítási kódjait.

Miért: szigorú zero-knowledge. Ha helyre tudnánk állítani, lenne egy visszafejtési út a szerver oldalán.

Hamarosan érkező mérséklés: a privát kulcs Shamir megosztása (M-az-N-ből rész), egy rész az Aegirexnél eljárási védőkorlátokkal (feloldás kizárólag N-1 másik rész jelenlétével, a felhasználó által érvényesítve). Az Enterprise csomagokra fenntartva.

6. Incidensreagálási terv

Szint Kiváltó ok Művelet
L1 Gyanú Anomália az auditnaplóban, felhasználói bejelentés Belső vizsgálat 24 órán belül, az audit lánc ellenőrzése
L2 Megerősített kompromittálódás A vizsgálat által megerősített technikai kompromittálódás Felhasználók értesítése 72 órán belül (GDPR 33. cikk), az érintett kulcsok rotációja, mérséklések bevezetése
L3 Jelentős kompromittálódás Adatbázis vagy forráskód kompromittálódott CNIL és ANSSI értesítés, nyilvános átláthatósági jelentés, külső forenzikus audit

Felelős közzététel: Az RFC 9116-nak megfelelően egy /.well-known/security.txt fájl a webhely gyökerében jelzi a kapcsolattartási címünket: security@aegirex.eu. Visszaigazolási idő: 72 óra.

Pontosítaná a dokumentumot?

Ez a fenyegetési modell egy élő dokumentum. Ha ön CISO, auditor vagy biztonsági kutató, és egy fenyegetés rosszul van modellezve, lépjen kapcsolatba velünk közvetlenül.