web security · 2017-11-30 · web security robert malmgren [email protected] +46-708-330378 robert...

25
Web security Robert Malmgren [email protected] +46-708-330378 www.romab.com Robert Malmgren AB Trust is good control is better 2007-11-21

Upload: others

Post on 27-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Web security

Robert [email protected]+46-708-330378www.romab.com

Robert Malmgren AB Trust is goodcontrol is better

2007-11-21

Page 2: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Upplägg

Angreppsscenarios

Hot och risker

Säkerhetsinitiativ

Ofta funna dumheter

Do’s & Don’ts

Något om nya teknologier

Säkerhetskultur & säkerhetsmognad

Sammanfattning

Page 3: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Internet

InternetInternet

Internet

Angreppsprinciper (1)

Klient/Server angrepp Server/Klient angrepp

Riktade angreppAngrepp mot slumpvisa offer

Page 4: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Internet

Internet

Angreppsprinciper (2)

Distribuerad DoS-attackFörtal/parodi/phising-site

Internet

Google hacking

Page 5: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Internet

Angreppsprinciper (3)

Page 6: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Komplexitetsfaktorn

Server operating systems:Solaris

Server operating systems:

Windows 2003

Standardized Client operating

systems:Windows 2000 Windows XP

Netw

ork

com

ponents

Em

bedded O

S

Lin

ux

...

Firmware, BIOS, Drivers, Virtual Host Software

Inte

rne

t E

xp

lore

r

MS

Offi

ce

Acro

bat

rea

de

r

SA

PG

UI

...

IIS

web

serv

er

Ora

cle

Web

serv

er

Exch

an

ge

Mic

rosoft

CA

...

Ap

ach

e

ntp

d

Entr

ust

CA

SA

P

...

PrintS

erv

er

Sim

ula

tion

soft

wa

re

Middleware

Operatingsystems

Low levelsupport software

Applications

Databases, integration software, transaction systems, Java, Perl, ...

Firew

all

so

ftw

are

.NET framework, shared libraries, ...Components

...

Client ServerEnterprise

ServerInfrastr.

components

Page 7: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Hot

Interna system innehållande känslig information blir tillgängliga för angrepp pgr för hård integration utan kontroll på risker och typ/nivå av exponering

Juridiskt ansvar för hur webbplatsen nyttjas eller missbrukas: chattar, kommentarsfält, gästbok

Information på webbsidan förvanskasdefacement, bedrägeri, malwarespridning

Tekniska hot Legala eller andra hot

Opublicerad information läcker ut (vid fel tillfälle)

Värddatorn övertas och missbrukas av obehöriga

Spårdata och annan dynamisk inte sparad och går inte att återskapa

Omedvetna fel Medvetenhandling

Page 8: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Hot: Jakten på säkerhetshål fortsätter

Page 9: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Säkerhetsproblem i populärkulturen...

http://www.xkcd.com/327/

Page 10: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Buzz word bingo: WebServices, Web 2.0

Web clientWeb client

Web Server

Business Logic

Back-end support applications

JavaScript Logic

Web Server

Business Logic

Web client

Back-end support applications

JavaScript Logic

Web Server

Business Logic

Web client

Back-end support applications

Web Server

Business Logic

Back-end support applications

3rd party

Page 11: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Buzz word bingo: WebServices, Web 2.0

Web 2.0 öppnar upp för nya typer av angrepp mot, inte minst, klienten

Brandväggar för WebServices är andra djur än klassiska IP- adressfiltrerande brandväggar

Svårt - Tvingar nät/brand-väggsadministratörerna att tolka affärslogiken

Många lösningar nyttjar inte de säkerhetskoncept som finns framtagna:

autentisering, signering, etc

Skapar en mängd nya säkerhetstjänster

Internet

HTML & CSSJavaScriptXHR-objektHTTP Webb AppServer

Tjänster

Databas

Page 12: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Initiativ för webbsäkerhet

Permanenta tekniska skydd

Permanenta orga- nisatoriska skydd

Ha genomtänkt informationsstruktur, test- och produktionssättningförfarande

Inför en BRA utvecklings-metodik / kräv att leverantören kan påvisa att de nyttjar sådan

Nätbaserad brandvägg

Hostbaserad brandvägg

Hostbaserad IDSNätbaserad IDS

Pärlor för svin?Investeringarna felaktiga alt. ofullständiga om vi inte förstår tekniska förutsättningar, vad som skall skyddas eller skyddsvärdet på det som skall skyddas

Reverseproxy

Hostbaserad IPS

Nätbaserad IPS

Härdat OS på värddator

Microsoft Secure

Development

Lifecycle Model

Penetrationstester

Page 13: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Försvar i djupled

Nät

verk

ssky

dd

Sky

dd i

OS

Sky

dd i

appl

ikat

ion

Åtk

omst

skyd

d

Beh

örig

hets

kont

roll

Sek

rete

ss

Åtk

omst

skyd

d

Beh

örig

hets

kont

roll

Sek

rete

ss

Skyddadinformation

Åtk

omst

skyd

d

Beh

örig

hets

kont

roll

Sek

rete

ss

Barriär 1 Barriär 2 Barriär 3

Page 14: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Seriöst dumma idéer

Slita på E-legitimation för än det ena, än det andra - ena dagen privat, andra dagen på jobbet, tredje dagen för en förenings räkning

Att lita på indata som kommer från något som en användare kan påverka

PIN-kodsbaserade inloggningar, medför såväl enkla uttömmande sökningar som DoS-attacker

Att använda samma dator till alltför många tjänster

Att hyra en “hacker” för att testa säkerheten

Att lägga ut information publikt på webben som egentligen skulle ligga på ett skyddat och begränsat åtkomligt extranet

Hårdkodade lösenord i program och skript

Att naivt tro att alla är snälla som läser filen robots.txt

Page 15: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Do’s & Dont’s

Blanda inte utveckling, test och produktionsmiljöer

Förstå riskerna med införande av nya lösningar

Gör inte utveckling i produktionsmiljön Förstå databasen som nyttjas -

använd fullt ut de säkerhets- mekanismer som ingår

Använd mekanismer som finns i programspråk för att undvika säkerhetsproblem:

taint, sandlådor, etc

Försvar på djupet

Undvik att koda fast dig i specifika versioner, tex av appservern

Do’s Don’ts

Lägg inte ut information i tron att den inte syns bara för att den saknar länkar från webbsidor

KISS-principen

Ge inte ut för mycket information i felmeddelanden

Page 16: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Do’s & Dont’s

Do’s Don’ts

LOGGAR!!!

Använd inte Pop-up-rutor med text som ändå ingen läser....

Loggar behöver vara korrekta, kompletta och användbara

Skydda den personliga integriteten

Okontrollerad indexering och sökning av de egna webbsidorna

Som användare på webben - lämna inte integritetskänslig information

Lägg inte in säkerhetsfunktioner i enbart klientsidan

Kom ihåg: Internet glömmer inte

Page 17: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

OWASP är din vän!

BRA utvecklingsguider

BRA testguider

mängder med BRA testverktyg

BRA topplistor över angrepp

www.owasp.org

Exempel för utbildning

Open Web Application Security Project

Page 18: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

!

!"#$%&'(%)*+,'(-.+/0+1"$2+033456,+7"8#-9.+:33/;/<=/+ !'>-+?+)@+=

A+0334+:'9(*-9B+6*&C+'*D5)9+%(E+F@@%$%'(-EC+F$$+G%>H(E+G-E-9I-DC+!

+

"#$%&'()!*+(%&'()!,'&$+!-../!

J%>"9-+/+%$$"E(9'(-E+'+&)*E)$%D'(-D+I%-K+)@+(H-+8'("9%(2+)@+E-&"9%(2+L9)>9'8E+%*+:0333+)9>'*%M'(%)*EC+F*+)9>'*%M'(%)*+H'E+()+-I)$I-+(H9)">H+@)"9+D%E(%*&(+8'("9%(2+LH'E-EC+

0'1%&#!23!"#$%&'()!4&51&+6!*+(%&'()7!-../!

89'::;%9

<1=5&+=$#!4>+:#

?@+&#=#::

4>+:#

,5&&#$('A#

4>+:#

BC#&+('5=+9

DE$#99#=$#!4>+:#

*+(%&'()

F'6#

,-I-$)L+7-K

!)$%&2 +N-(

,-E%>*

F9&H%(-&("9-

Initiate StrategicProgram

6*E(%("(-+!9)&-EE-E

O)*&$"D-+O'(&HPQL

!9)R-&(E

S9'&T+S-&H*)$)>2 +'*D

U"E%*-EE+OH'*>-

O)*(%*")"E

!9)&-EE

68L9)I -8-*(

G-I %-K+N('("E+V")

WG-PXYE('#$%EH+N-&"9%(2

S-'8

141781-1

-/G

/.G-.G

/G

+7)(-.+SH-+L)L"$'(%)*+D%E(9%#"(%)*E+9-L9-E-*(+(2L%&'$+$'9>-+:0333P(2L-+)9>'*%M'(%)*EC+

"5%&$#H!I+&(=#&!JK%9)!-..LM!

89'::;%9!<1=5&+=$#!4>+:#!

Z9>'*%M'(%)*E+%*+(H-+#$%EE@"$+%>*)9'*&-+LH'E-+'9-+&H'9'&(-9%M-D+#2+L9-EE"9-+()+9-D"&-+(H-+%*@)98'(%)*+E-&"9%(2+#"D>-(C+N"&H+)9>'*%M'(%)*E+(2L%&'$$2+H'I-+'+K-$$PD)&"8-*(-DB+-[(-*E%I-+E-(+)@+L)$%&%-E+(H'(+%E+'+*"8#-9+)@+2-'9E+)$DB+K%(H+$%(($-+'K'9-*-EE+)@+%(+%*+(H-+"E-9+&)88"*%(2C+F+*"8#-9+)@+%*I-E(8-*(E+H'I-+#--*+8'D-+%*+L9-I-*(%I-+'*D+D-(-&(%I-+E-&"9%(2+(-&H*)$)>%-EC+\H%$-+$%(($-+)9+*)+'*'$2E%E+%E+D)*-+)*+(H-+-@@-&(%I-*-EE+)@+(H-+E-&"9%(2+())$EB+(H-+'EE"8L(%)*+-[%E(E+(H'(+(H-+-*(-9L9%E-+%E+E-&"9-C+F*2+E-&"9%(2+#9-'&H-E+(H'(+D)+)&&"9+'9-+(2L%&'$$2+*)(+9-L)9(-D+)9+'9-+'&&-L(-D+'E+H'I%*>+#--*+"*'I)%D'#$-C+G-'&(%)*E+()+8'R)9+E-&"9%(2+%*&%D-*(E+#2+E"&H+)9>'*%M'(%)*E+&-*(-9+)*+(-&H*)$)>%&'$+E)$"(%)*E+)9+'((-8L(E+()+L9)H%#%(+&-9('%*+#"E%*-EE+'&(%I%(%-EC+6*+E"&H+)9>'*%M'(%)*EB+(H-+E-&"9%(2+EL-&%'$%E(+K)9TE+%*+%E)$'(%)*+'*D+'((-8L(E+()+D%&('(-+E-&"9%(2+&)*(9)$E+()+(H-+#"E%*-EE+K%(H+$%(($-+9->'9D+@)9+E'(%E@2%*>+D%@@-9-*(%'(-D+#"E%*-EE+9-]"%9-8-*(EC+6*D--DB+%*+E"&H+)9>'*%M'(%)*EB+(2L%&'$$2+*)+-@@-&(%I-+&)88"*%&'(%)*+-[%E(E+#-(K--*+(H-+E-&"9%(2+(-'8B+(H-+#"E%*-EE+'*D+(H-+&)9L)9'(-+9%ET5&)8L$%'*&-+@"*&(%)*EC+SH-+E-&"9%(2+#"D>-(+%E+#-%*>+&"(B+'*D+)9>'*%M'(%)*'$$2B+(H-+E-&"9%(2+(-'8+W%@+%(+-[%E(EX+%E+#-%*>+L"EH-D+D)K*+(H-+)9>'*%M'(%)*'$+9-L)9(%*>+H%-9'9&H2C+:'9(*-9^E+D'%$2+%*(-9'&(%)*E+%*D%&'(-+(H'(+'#)"(+0_+L-9&-*(+)@+:0333+)9>'*%M'(%)*E+K-9-+%*+(H%E+E('>-+%*+033_C+N"9L9%E%*>$2B+-I-*+E)8-+@%*'*&%'$+%*E(%("(%)*E+@%*D+(H-8E-$I-E+'8)*>+(H%E+>9)"LC+

Utvecklingskurvan för säkerhet

Page 19: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Utvecklingskurvan för säkerhet 2

11

activities (e.g., incident data, revenue lost to cyber attacks) to the respective requirements and to IT security investments.

3.3 Metrics Types

The maturity of an organization’s IT security program determines the type of metrics that can be

gathered successfully as depicted in Figure 3-1.

Figure 3-1. Security Program Maturity and Types of Measurement

A program’s maturity is defined by the existence and institutionalization of processes and procedures. As a security program matures, its policies become more detailed and better

documented, the processes that it uses become more standardized and institutionalized, and it produces data that can be used for performance measurement in greater quantity. According to NIST SP 800-26, the security program progresses from having policies (Level 1) to having

detailed procedures (Level 2), implementing these procedures (Level 3), testing compliance with and effectiveness of the procedures (Level 4), and finally fully integrating policies and

procedures into daily operations (Level 5). A mature program normally deploys multiple

Page 20: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Designing Systems That People Will Trust

Design for Usability

Psychological Acceptability Revisited

Guidelines and Strategies for Secure Interaction Design

Apropå Gulans föredrag...

Fighting Phishing at the User Interface

Sanitization and Usability

Security Administration Tools and Practices

Privacy Issues and Human-Computer Interaction

A User-Centric Privacy Space Framework

Five Pitfalls in the Design for Privacy

Firefox and the Worry-Free Web

Users and Trust: A Microsoft Case StudyKälla http://www.oreilly.com/catalog/securityusability

Page 21: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Apropå Gulans föredrag...

Källa http://people.ischool.berkeley.edu/~ping/sid/sid72.tif

Page 22: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Att vara förberedd...

Page 23: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Slutsatser (1)

Antagonistfaktorn och programmerade hot utelämnas eller misförstås i riskanalyser

WebServices kan leda till exponering av programåtkomst

“JavaScript is the new Shellcode”

Sårbarheter finns överallt, inte minst i plattformen man nyttjar, tex XML Core components, PHP, Java, Ruby, WAS, IAS, Apache, IIS, etc

Många lösningar skapar cirkelberoenden mellan komponenter, vilket omöjliggör patchning och uppgradering

Det finns ingen magisk silverkula

Page 24: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21

Slutsatser (2)

Spårbarhet är en av de grundläggande säkerhetsfunktionerna. Spårbarhet (i form av loggar) är i praktiken ofta helt oanvändbara när de behövs som mest...

Tänk på det juridiska ansvaret som ändå finns: PuL, Lag om ansvar för elektroniska anslagstavlor, mm, mm

Undvik att bli en tjänst som nyttjas för att skada tredje part: SMS-bombning, phishing,

Att ligga i teknikens framkant medför per automatik större risker: oprövad teknik, oupptäckta säkerhetshål, etc

Angrepp sker numera ofta från server till klient, efter det att en intern användare “bjudit in”.

Page 25: Web security · 2017-11-30 · Web security Robert Malmgren rom@romab.com +46-708-330378  Robert Malmgren AB Trust is good control is better 2007-11-21