Uffe S. Callesen wrote:
> Målet skal være et website hvor data på webserveren er krypterede og
> hvor al kommunikation (ikke bare login) mellem klienter og serveren skal
> være krypteret (måske en SSH2 løsning). Serveren skal være
> 'tyveri-sikret' i den forstand at der skal angives en key for at få
> adgang til de krypterede data så en evt. tyveknægt ikke kan få adgang
> til dem.
Det er desvaerre et af de afsnit i OSS'en som jeg ikke har faaet skrevet
om endnu: udvikling. Selve det at kryptere end-to-end, som det hedder,
er ganske trivielt. Truslerne og problemerne kommer andre steder fra.
Din trusted computing base, i en loesning som ovenstaaende, vil vaere
ret stor og komplex, og hvis den kompromiteres, forsvinder sikkerheden.
Man kunne let forstille sig, at en angriber broed ind i din server, og
udskiftede den komponent der tager imod adgangskoder/dekryptererer
indholdet af disken, med en komponent der yderligere opbevarede de
indtastede koder og dekrypterede noegler til senere opsamling.
Den simple loesning ville gaa i retning af, at de krypterede data ligger
paa din filserver, men at softwaren til dekryptering ligger paa
klienterne, og krypteringsnoeglerne ligger enten paa klienterne eller
paa et smart card. Det ville kun kraeve at du stoler paa klienterne --
hvis du ikke kan det, har du tabt paa forhaand. Hvis du har utraenede
brugere, kan man let slippe en keystroke logger ind paa deres maskine.
Det bliver saa lidt mere indviklet at bruge, end et dynamisk website.
Jeg kan anbefale at du koeber "Writing Secure Code, 2nd edition" og
laeser kapitel 4 om threat models, eller i hvert fald finder nogle af
Michael Howard's artikler om samme paa msdn.microsoft.com.
Naar du har noget der ligner en specifikation og threat model kan du
vende tilbage, og bede om input. Det er lettere at snakke om noget
konkret end at snakke om problemer og fordele ved specifikke, men
uspecificerede systemer.
--
I prefer the dark of the night, after midnight and before four-thirty,
when it's more bare, more hollow.
http://a.mongers.org