Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
TOM
VÄNTAD
OVÄNTAD
OND
"The amount of code within a system that can be run by an unauthenticated user." -Wikipedia
dörrvakten med nedsatt syn
lååångt felmeddelande
problem
Försöker ta reda på vad vi inte tänkt på.
Gör sånt vi inte tänkt på.
Försöker aktivt tvinga fram felmeddelanden.
Ringer supporten om
det inte fungerar.
Får felmeddelanden,
blir irriterad.
Anpassar indata för att förvirra programlogiken.
Anger datum i fel format.
beräknande
Testar systematiskt att göra saker i fel ordning.
Råkar ibland göra saker i fel ordning.
Provar att utelämna vissa data.
Glömmer att fylla i vissa fält.
Acceptanstestens konung.
Det finns inget spår för säkerhet på konferensen.
Det här är den enda presentationen rörande säkerhet i utvecklingsspåret.
Säkerhet var näst sist i listan över föreslagna ämnen.
Det här verkar vara den enda presentationen om säkerhet på hela Sundsvall 42.
Hur många är programmerare?
Hur många arbetar med utveckling?
prolog
Hur många arbetar uteslutande med webbtillämpningar?
"Reliable software does what it's supposed to do. Secure software does what it's supposed to, and nothing else." -Ivan Arce
"Pålitlig mjukvara gör vad den är avsedd att göra. Säker mjukvara gör vad den är avsedd, och inget annat." -Ivan Arce
Stefan
Pettersson
Att presentera ett antal designprinciper som premierar säkerhet.
Att introducera Murphys tvilling Jeff.
Jag är tyvärr inte programmerare.
Det här handlar inte bara om webbapplikationer.
bra design
Att dessa principer kommer att användas i större utsträckning.
2 tolkningar
Att Jeff hamnar mer i fokus.
antivirus
trafik krypterad med 256 bit AES
fem nivåer av åtkomstkontroll
krav på komplexa lösenord med >10 tecken
IIS Doble Decode...
tvåfaktorsautentisering
Input: http://target/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+dir+c:\
Decode #1: http://target/scripts/..%5c..%5cwinnt/system32/cmd.exe?/c+dir+c:\
Decode #2: http://target/scripts/../../winnt/system32/cmd.exe?/c+dir+c:\
bra design
lösningar
Hur många processer körs?
Hur många tcp-/udp-portar lyssnar?
Hur många indatafält finns i protokollet?
Hur många externa system är vi i beroendeställning till?
Vad gäller då för dessa system?
...
bra design
str = "SELECT * FROM table WHERE username = " + user + " AND password = " + password;
sql.query(str);
kod
data
filer
webbtjänster
databaser
data från
användaren
process
registret
attackyta
"det stora skiftet"
bra design
felmeddelanden & informationsläckage
När det går åt pipan ska det inte leda till att en angripare har bättre förutsättningar än innnan.
bra design
Ge inte alla nyckeln till kassaskåpet.
Stolen from Henning Brauer & Sven Dehmlow
http://quigon.bsws.de/papers/aalborg2009/
if authc == OK
accept
else
reject
if authc == FAIL
reject
else
accept
Drop your rights! Now!
Rättigheter.
Släpp de som inte krävs.
Släpp dem direkt
epilog
security features != secure features
broken security features
unecessary security features
fail safe
use least privilege
minimize attack surface
don't mix code and data
minimize feedback
never trust external systems
Frågor?
http://www.hps.se/
stefan.pettersson@hps.se
Bloggen på High Performance Systems hemsida.
Murphy v. Jeff
exempel
Ange användarnamn och lösenord.
Få tresiffrig kod via telefonsamtal eller SMS.
Helt vanlig tvåfaktorsautentisering.
(1) Visa att du kan det hemliga lösenordet.
(2) Visa att du har kontroll över en föranmäld telefon.
Fakturor från leverantörer.
Skjut inte på en stridsvagn framifrån.
Skyddsnät?
Äh!
How to hack Twitter #1
How to hack Twitter #3
and so on...
How to hack Twitter #0
How to hack Twitter #2