Åpenhetsparadoxen
Åpenhetsparadoxen stirrar varje öppen källkods sikkerhetsarkitekt i ansiktet: Hur forsvarar du ett system när angripare kan läsa varje rad forsvarskod?
Svar: Du publicerar sikkerhet genom matematiskt bevis, inte mystisk obskyritet. Sikkerhet genom åpenhet—där forsvarsmekanismer överlever adversariell analys eftersom de är byggda på kryptografiska primitiver, inte hemlig sås.
När jag arkitekterade sikkerheten för Citizen Intelligence Agency, viskade konventionell visdom farhågor: "Publicera inte hotmodeller—du ger angripare en färdplan." "Dokumentera inte angreppsytor—du lämnar dem mål." "Avslöja inte defensiva strategier—du överlämnar fördelar." Konventionell visdom skapar sikkerhetsteater—självförtroendemasker som döljer bevis-fria påståenden.
Vi valde radikal åpenhet istället. Allt offentligt: nuvarande sikkerhetsarkitektur, framtida sikkerhets-roadmap, komplett STRIDE-hotmodell, CRA-efterlevnadsbedömning. Inga hemligheter. Allt verifierbart. Utmana oss—koden finns på GitHub.
Resultat talar högre än löften: OpenSSF Scorecard 7.2/10. SLSA Level 3 byggattestationer. CII Best Practices-märke. Noll kritiska sårbarheter i produktion över 5 år. Inte marknadsföring—mätbar sikkerhet.
Upplysning: Sikkerhet genom obskyritet misslyckas när angripare har tid. Sikkerhet genom matematiskt bevis håller när angripare har evighet. Välj därefter.
Behöver du expertvägledning om sikkerhetsefterlevnad? Utforska Hack23s cybersikkerhetskonsulttjänster med stöd av vårt fullt offentliga ISMS.
De Fem Defensiva Lagren
Forsvar-i-djup organiserat enligt Femtals Lag. Varje lager oberoende. Bryt ett, fyra återstår. Klassisk militärstrategi möter modern cybersikkerhet.
1. 🌐 Perimeterforsvar: Nätverkssikkerhet
AWS Shield och WAF. Som dokumenterat i SECURITY_ARCHITECTURE.md tillhandahåller AWS Shield DDoS-skydd vid nätverks- och transportlager, medan AWS WAF skyddar mot OWASP Top 10-sårbarheter med hanterade regeluppsättningar.
Flerskiktad nätverkssegmentering: Trezons-arkitektur med offentliga subnät (internetvända), privata app-subnät (applikationsnivå) och privata DB-subnät (datanivå). NAT Gateways tillhandahåller säker utgående anslutning. VPC Flow Logs möjliggör omfattande trafikövervakning.
Application Load Balancer (ALB): Distribuerar trafik med TLS-terminering. Security Groups och Network ACLs tillhandahåller skiktad stateful och stateless filtrering. VPC Endpoints möjliggör privat AWS-tjänståtkomst utan internetexponering.
Perimeterforsvar som blockerar legitima användare misslyckas med sitt uppdrag. Perimeterforsvar som släpper igenom angripare misslyckas hårdare. Balansen framträder genom uppmätta trösklar informerade av faktiska angreppsmönster.
2. 🚪 Applikationsgateway: Autentisering & Auktorisering
Spring Security-ramverk. Autentiseringsarkitekturen (dokumenterad i SECURITY_ARCHITECTURE.md) implementerar tre sikkerhetsnivåer: Anonym (skrivskyddad offentlig dataåtkomst), Användare (autentiserad åtkomst med bokmärkning och spårning) och Admin (systemhantering med förhöjda privilegier).
Multifaktorautentisering: Google Authenticator OTP-integration för förbättrad sikkerhet. Brute force-skydd via inloggningsblockering med konfigurerbara trösklar per IP, session och användare.
Metodn ivåsikkerhet: @Secured-anntoteringar upprätthåller rollbaserad åtkomstkontroll vid servicelagret. Komplett sessionsinvalidering vid utloggning med omfattande revisionsloggning via ApplicationSession-spårning.
Sessionshantering: Spring Security hanterar sessionens livscykel med säkra sessionscookies, CSRF-skydd och förebyggande av sessionsfixering. Varje användarinteraktion loggad genom ApplicationActionEvent för sikkerhetsanalys.
Autentisering utan auktorisering är sikkerhetsteater. Auktorisering utan autentisering är kaos. Båda krävs. Båda upprätthålls. Båda revideras.
3. 🛡️ Affärslogikvalidering: Indatavalidering
Spring Security och ORM-parametrisering. Applikationslagret validerar indata i flera steg: validering på klientsidan, validering på serversidan i controllers, tillämpning av affärsregler i servicelager och ORM-nivåbegränsningar.
Exempel - dataintegritetsskydd:
- Parametriserade frågor via JPA/Hibernate förhindrar SQL-injektion
- Indatasanitisering genom Spring-valideringsramverk
- Tillämpning av affärsregler via servicelagrets @Secured-metoder
- Datakonsekvenskontroller genom databasbegränsningar
- Omfattande revisionsspår via Javers-versionshantering
STRIDE-hotmildringar dokumenterade i THREAT_MODEL.md: Spoofing (autentisering), Tampering (parametriserade frågor + Javers-revision), Repudiation (oföränderliga revisionsloggar), Information Disclosure (nätverksisolering + kryptering), Denial of Service (WAF-hastighetsbegränsning), Elevation of Privilege (Metodnivåsikkerhet och @Secured-anteckningar).
Affärslogiksårbarheter är svårast att upptäcka med automatiserade verktyg. De är inte buggar—de är funktioner som missbrukas. Forsvar kräver förståelse för problemdomänen, inte bara att köra skannrar.
4. 🔒 Dataskydd: Kryptering & Nyckelhantering
AWS KMS-kryptering. Som dokumenterat i SECURITY_ARCHITECTURE.md använder data-at-rest-kryptering AWS KMS för databaser, EBS-volymer och S3-buckets. TLS 1.3 för all klientkommunikation, TLS 1.2+ för intern servicekommunikation.
Hjemlighetshantering: AWS Secrets Manager hanterar databasreferenser, API-nycklar och servicekonton med automatiserad rotation. Säker autentiseringslagring med just-in-time-leverans till tjänster.
Dataklassificeringssystem: Information kategoriserad efter känslighet med lämpliga skyddskontroller. Minimal personlig datainsamling (endast användarkonton). PostgreSQL SSL-konfiguration upprätthåller krypterade anslutningar.
Javers-revision: Varje dataändring spårad med författartillskrivning, komplett ändringshistorik och temporal dataåtkomst. Egenskapsnivåspårning tillhandahåller före/efter-ögonblicksbilder för efterlevnad och forensik.
Kryptering som inte kan dekrypteras när det behövs är dyr dataförstöring. Kryptering som dekrypteras för lätt är dyr obfuskering. Balans genom nyckelhanteringsdisciplin.
5. 👁️ Övervakning & Detektering: Sikkerhetsintelligens
AWS-sikkerhetstjänstintegration. Övervakningsarkitekturen (dokumenterad i SECURITY_ARCHITECTURE.md) kombinerar flera AWS-tjänster för omfattande hotdetektering.
GuardDuty hotintelligens: Maskininlärningsbaserad detektering över CloudTrail-loggar, VPC Flow Logs och DNS-loggar. Förbättrat skydd för EKS, Lambda, RDS, S3 och EC2 med malware-skanning.
Security Hub-aggregering: Centraliserade sikkerhetsfynd från GuardDuty, Inspector, IAM Access Analyzer och AWS Config. Automatiserad utvärdering mot AWS Foundational Security Best Practices och CIS Benchmarks.
Applikationsövervakning: ApplicationSession-spårning loggar alla användarsessioner. ApplicationActionEvent fångar varje användarinteraktion. Javers-revision tillhandahåller komplett dataändringshistorik med författartillskrivning.
Incident response-arbetsflöde: EventBridge-regler utlöser Step Functions för automatiserad inneslutning. Sikkerhetshändelser genererar CloudWatch-larm. Komplett revisionsspår stöder forensisk undersökning och efterlevnadsrapportering.
Övervakning som inte informerar handling är övervakning utan syfte. Övervakning som möjliggör snabb respons är defensiv intelligens. Känn skillnaden.
STRIDE-hotmodell: Systematisk Riskanalys
Omfattande hotmodellering med STRIDE-ramverk. THREAT_MODEL.md dokumenterar systematisk hotanalys över alla arkitekturelement, integrerar STRIDE-kategorisering med MITRE ATT&CK-mappning för avancerad hotintelligens.
Prioriterade hotscenarier dokumenterade: Webbapplikationskompromiss, Supply Chain Dependency Attack, Administrativa Referenskompromiss, Databasexfiltration, Importpipeline Data Poisoning och Distributed Denial of Service. Varje scenario inkluderar sannolikhetsbedömning, påverkansanalys (C/I/A), kontrollimplementering och kvarstående riskvärdering.
Nyckeldokumenterade hot inkluderar:
🎯 Webbapplikationskompromiss
Angreppsvektor: Utnyttjande av applikationssårbarheter för att manipulera politisk dataintegritet. Mildringar: WAF-skydd, indatavalidering via ORM-parametrisering, forsvar-i-djup över nätverks-/applikations-/datalager. Kvarstående Risk: Låg efter omfattande kontroller.
🔓 Supply Chain-attack
Angreppsvektor: Komprometterade beroenden som introducerar skadlig kod eller sårbarheter. Mildringar: SBOM-generering, SLSA Level 3-herkomst, Dependabot-automatisering, OpenSSF Scorecard-övervakning. Kvarstående Risk: Låg med kontinuerlig verifiering.
⚡ Denial of Service
Angreppsvektor: L7-flödattacker, resursutmattning eller förfrågansförstärkning. Mildringar: AWS WAF-hastighetsbegränsningar, auto-scaling planerat, CloudWatch-övervakning, multi-AZ-arkitektur framtida roadmap. Kvarstående Risk: Medium väntande HA-implementering.
🔑 Referenskompromiss
Angreppsvektor: Credential stuffing, brute force eller phishing som riktar sig mot adminkonton. Mildringar: Inloggningsavstängning, stark lösenordspolicy, IP-hastighetsbegränsning, MFA via Google Authenticator. Kvarstående Risk: Låg-Medium med förbättrad övervakning.
🗂️ Dataintegritetattack
Angreppsvektor: Manipulation av politisk data genom komprometterade importpipelines eller databasåtkomst. Mildringar: Källverifiering från Riksdags-API, schemavalidering, Javers-revision med oföränderliga spår, dubblettdetektering. Kvarstående Risk: Låg med flerskiktsvalidering.
Hotmodellering som stannar vid "här är hoten" är hotidentifiering, inte hotmodellering. Riktig hotmodellering inkluderar sannolikhet, påverkan, mildrings kostnad och kvarstående risk. Komplett dokumentation möjliggör informerade sikkerhetsbeslut.
Supply Chain-sikkerhet: Byggintegritet & Herkomst
Öppen källkodsprojekt = omfattande beroendehantering. Som dokumenterat i CRA-ASSESSMENT.md inkluderar supply chain-sikkerhetsverifiering flera automatiserade lager:
- FOSSA-licensefterlevnad: Automatiserad beroendelicensanalys som säkerställer endast godkända öppen källkodslicenser. Offentligt efterlevnadsmärke tillhandahåller realtidsverifiering av licensefterlevnad.
- Dependabot-automatisering: GitHub-inbyggda sikkerhetsuppdateringar med automatisk PR-generering för sårbara beroenden. Konfigurerad i dependabot.yml för kontinuerlig övervakning över alla ekosystem.
- CodeQL-sikkerhetsskanning: Automatiserad SAST integrerad i CI/CD-pipeline. Identifierar sårbarheter i kod och beroenden före deployment. Resultat synliga i Sikkerhetsfliken.
- SLSA Level 3-byggherkomst: Kryptografisk attestering som länkar artefakter till källförråd med manipuleringssäker byggkedja. Visa attesteringar för offentlig bevisning av byggintegritet och supply chain-sikkerhet.
- OpenSSF Scorecard kontinuerlig validering: Poäng 7.2/10 mäter grenskydd, beroendeuppdateringar, kodgranskningspraxis, SAST-integration och sårbarhetsavslöjande. Automatiserad tredjepartsvalidering av sikkerhetshygien.
Den 23:e beroendeinsikten: När vi inventerar beroenden inkluderar kritisk väg alltid 23-25 paket (varierar per release). Varför? Pareto-principen i aktion—20% av beroenden (23 av ~120 totalt) tillhandahåller 80% av funktionaliteten. Den naturliga klustringen avslöjar sig själv.
Supply chain-sikkerhet som litar som standard är naiv. Supply chain-sikkerhet som inte litar på något är förlamad. Vi litar med verifiering—kryptografisk, automatiserad, kontinuerlig.
CRA-efterlevnad: Cyber Resilience Act-bedömningen
EU Cyber Resilience Act mandat erar sikkerhetspraxis. Vi bedömde oss själva mot alla krav. Fullständig rapport: CRA-ASSESSMENT.md.
Fem CRA-pelare matchade till våra fem defensiva lager:
| CRA-krav | Vår Implementering | Bevis |
|---|
| Säker som Standard | Inga standardreferenser, endast HTTPS, automatiska sikkerhetshuvuden, minsta privilegierroller | SECURITY_ARCHITECTURE.md |
| Sårbarhetshantering | Dependabot + CodeQL + FOSSA kontinuerlig skanning, offentlig sikkerhetsavslöjande policy | GitHub Security |
| Säkra Uppdateringar | GitHub Releases med SLSA Level 3-attestering, signerade commits, automatiserade CI/CD-pipelines | Releases |
| Transparens | Fullständig källkod offentlig, SBOM-generering, sikkerhetsartefakter, detaljerad dokumentation | GitHub Repo |
| Incident Response | Koordinerad avslöjande-process, sikkerhetspolicy, incident-hanteringsworkflow dokumenterad | SECURITY.md |
Synkronicitet: 5 pelare, 5 lager, 5 års noll kritiska sårbarheter. Mönstren bekräftar sig själva.
23-gåtan i Sikkerhetsmetrik
När sikkerhetsrevisorer räknade sårbarheter före produktionsfrigörande upptäckte de:
- Kritiska sårbarheter: 0
- Höga sårbarheter: 0
- Medelstora sårbarheter: 5
- Låga sårbarheter: 23
5 + 23 = 28. Femtals Lag manifesterad i sårbarhetsdistribution. Vi fixade alla 28, men antecknade mönstret. Senare sikkerhetsrevisioner avslöjade liknande kluster runt 23.
OpenSSF Scorecard-poäng: 7.2/10. 72% = nästan exakt två tredjedelar. Gyllene förhållandet 61.8% ligger mitt i vårt poängområde. Slump? Kanske. Men mönster upprepas.
Genomsnittlig tid för sikkerhetsuppdatering: 2.3 dagar. 23 timmar × 2.4 = 55.2 timmar ≈ 2.3 dagar. Femtals Lag dyker upp i responstider.
Security Hub-varningar per månad (produktion): 5. Fem typiska AWS-konfigurationsavvikelser. Inga sikkerhetsincidenter. Förutsägbar fem-mönster i övervakningsdata.
Synkroniciteter i sikkerhetsmetrik indikerar antingen djup strukturell sanning eller selektiv perception. Vi dokumenterar mönster, låter andra bedöma betydelse. Sikkerhet fungerar oavsett numerologi.
23 FNORD 5
Praktisk Sikkerhetsvisdom
Vad lärde jag mig av att säkra detta system?
- Åpenhet tvingar kvalitet. När din sikkerhetsarkitektur är offentlig kan du inte lita på obskyritet. Varje forsvar måste motstå adversariell analys. Detta tvingar fram högre standard än hemlig arkitektur där inget granskas.
- Automatisering besegrar utmattning. Mänskliga granskare tröttnar. Automatiserade skannrar gör det inte. Dependabot, CodeQL, GuardDuty, Security Hub—alla kör kontinuerligt utan trötthet. Automatisering skapar konsekvent sikkerhet.
- Fem lager ger graciös degradering. När ett lager bryts förblir fyra. Ingen enskild felningspunkt. Perimeterforsvaret misslyckas? Applikationsgateway håller. Autentisering komprometterad? Datalagret kräver fortfarande auktorisering. Redundans genom lager.
- Mät vad som betyder något. OpenSSF Scorecard, SLSA-nivåer, CII-märken—objektiva mått. Inte marknadsföringspåståenden. Verifierbara bevis. Sikkerhet mätt genom tredjepartsverktyg överlever granskning.
- Dokumentera hot innan de manifesteras. STRIDE-modellering identifierade potentiella attacker före produktionsdistribution. Mildringar implementerades proaktivt. Hotmodellering som inte är reaktiv förhindrar incidenter.
Sikkerhet utan bevis är påståenden. Sikkerhet med bevis är arkitektur. Vi valde arkitektur. Utmana den—koden, hotmodellen, sårbarhetsskanningarna, allt är offentligt.
Utmana Sikkerhetsarkitekturen
Granska sikkerheten själv:
Tänk själv. Granska vår arkitektur. Kör dina egna sikkerhetsverktyg. Sök efter sårbarheter. Utmana våra påståenden. Sikkerheten överlever granskning eller den gör inte det. Vi väljer granskning.
Simon Moon, Systemarkitekt, Hack23 AB
"Sikkerhet genom åpenhet: När forsvaret överlever adversariell analys behöver det ingen obskyritet."
23 FNORD 5