2. “Conosci
il
tuo
nemico,
conosci
te
stesso”
–
Sun
Tzu
(L’arte
della
guerra)
INTRODUZIONE
3. INTERNATIONAL
WEBMASTERS
ASSOCIATION
hBp://www.iwa.it
Partecipazioni internazionali
Prima
associazione
al
mondo
(dal
1996)
che
raggruppa
chi
lavora
nel
Web,
sia
nel
settore
pubblico
che
privato
Obiettivo
di
IWA
è
creare
rete
tra
i
soci,
partecipare
all'evoluzione
della
rete
e
divulgare
conoscenza
Partecipazioni nazionali
tramite
i
soci
con
eventi
ed
iniziative
media
partner
3
4. INTERNATIONAL
WEBMASTERS
ASSOCIATION
hBp://www.iwa.it
Perché
associarsi media
partner
1 rete
tra
professionis;
2 partecipazione
a
gruppi
di
lavoro
anche
internazionali
3 convenzioni
per
tutela
professionalità
(esempio:
studi
legali)
quota
speciale
SMAU:
euro
50,00
presso
stand
IWA
4
13. 6.1
Assicurare
che
tuG
i
componen@
di
sistema
ed
il
soIware
siano
proteG
dalle
vulnerabilità
note
mediante
l'installazione
delle
più
recen@
patch
di
sicurezza
dei
fornitori.
Installare
patch
di
sicurezza
cri@che
entro
un
mese
dal
rilascio
14. 6.2
Stabilire
un
processo
per
iden@ficare
ed
assegnare
una
classificazione
di
rischio
alle
vulnerabilità
della
sicurezza
recentemente
rilevate.
15. 6.3
Sviluppare
applicazioni
soIware
in
conformità
agli
standard
PCI
DSS
e
in
base
alle
pra@che
di
seEore
consigliate,
quindi
incorporare
la
protezione
delle
informazioni
nell'intero
ciclo
di
sviluppo
del
soIware
16. 6.4
Seguire
i
processi
e
le
procedure
di
controllo
e
per
tuEe
le
modifiche
apportate
ai
componen@
di
sistema.
17. 6.5
Sviluppare
applicazioni
in
base
a
linee
guida
di
scriEura
di
codice
sicura.
Prevenire
possibili
vulnerabilità
del
codice
comuni
nei
processi
di
sviluppo
del
soIware.
44. Minacce
e
AQacchi
Web
Server Applica;on
Server Database
server
S.M.
D.V.
(I/O)
HTTP/CM
T.L.P
D.A.
B.L.
AT Data
AZ
E.H.A.L. E.H.A.L. E.H.A.L
Host/CM Host
/
CM Host/CM
Beni
StruDura
Jpo
di
un’applicazione
MVC
46. Known
Vulnerabilites,
Denial
of
Service
Au Id Re Su Ct NR Cf Pr It Al
Sistemi
e
InfrastruQura
I
sistemi
sono
aggiornaJ
all’ulJma
versione?
Configurazioni
sicure?
Rilascio
di
infomazioni?
Sono
in
alta
affidabilità/bilanciaJ?
ProteX
nella
comunicazione?
47. “Sì,
ma
tu
chi
sei?”
–
Neo
a
Seraph
(The
Matrix:
Reloaded)
AUTENTICAZIONE
(AT)
48. Authoriza;on
Bypass,
Brute
Force,
Guessable
Account,
Default
User
and
Password,
User
Enumera;on,
Browser
Cache
Management
Au Id Re Su Ct NR Cf Pr It Al
L’auten;cazione
“di
per
se”
E’
implementata
lato
server?
E’
sempre
verificata
dove
necessario?
Si
può
bypassare?
Il
canale
di
comunicazione
è
proteDo?
...sempre
errori
e
tracciatura
49. Authoriza;on
Bypass,
Brute
Force,
Guessable
Account,
Default
User
and
Password,
User
Enumera;on,
Browser
Cache
Management
Au Id Re Su Ct NR Cf Pr It Al
Form
di
auten;cazione
e
di
altre
operazioni
sulle
credenziali
I
daJ
sono
proteX
lato
client?
E’
possibile
bloccare
aDacchi
di
brute
force?
Il
canale
di
comunicazione
è
proteDo?
Sono
forniJ
solo
errori
generici?
...sempre
errori
e
tracciatura
55. Authoriza;on
Bypass,
Brute
Force,
Guessable
Account,
Default
User
and
Password,
User
Enumera;on,
Browser
Cache
Management
Au Id Re Su Ct NR Cf Pr It Al
Credenziali
Sono
proteDe
quando
memorizzate?
Vengono
bloccate
per
un
numero
di
tentaJvi?
Sono
presenJ
credenziali
di
default?
Sono
abbastanza
complesse?
Hanno
una
durata
minima,
massima?
Si
può
inserire
la
stessa
password
ad
ogni
cambio?
56. “
Conosco
solo
quello
che
devo
sapere”
–
Rama
(The
Matrix:
RevoluJons)
AUTORIZZAZIONE
(AZ)
57. Authoriza;on
Bypass
(horizontal/ver;cal),
Path
Traversal
Au Id Re Su Ct NR Cf Pr It Al
L’autorizzazione
su
Risorse
(file/servizi/pagine/
da;)
E’
implementata
lato
client?
E’
sempre
verificata?
Sono
proteDe
anche
le
poliJche
di
autorizzazione?
Si
può
bypassare?
Le
risorse
vengono
trasmesse
su
un
canale
sicuro?
...sempre
errori
e
tracciatura
58. “sa
dirmi
cosa
darebbe
pur
di
mantenere
viva
tale
interazione?”
–
Rama
(The
Matrix:
RevoluJons)
SESSION
MANAGEMENT
(S.M.)
59. Session
Fixa;on,
Session
Hijacking/Cookie
Stealing,
Session
ID
Analysis
(Crypto,
Sta;s;cal)
Au Id Re Su Ct NR Cf Pr It Al
La
sessione
“di
per
se”
L’applicazione
verifica
che
ci
sia
una
sessione
aXva?
E’
possibile
eseguire
aDacchi
di
CSRF?
Sono
permesse
sessioni
contemporanee?
Sessione
legata
all’IP/UA
Viene
distruDa
per
Jmeout
relaJvo
e
assoluto
...sempre
errori
e
tracciatura
60. Session
Fixa;on,
Session
Hijacking/Cookie
Stealing,
Session
ID
Analysis
(Crypto,
Sta;s;cal)
Au Id Re Su Ct NR Cf Pr It Al
Iden;fica;vo
di
Sessione
(SID)
E’
abbastanza
complesso
Viene
cambiato
dopo
gli
evenJ
di
autenJcazione
Viene
mostrato
dove
non
streDamente
necessario?
(es.
GET,
Log,
Errori)
61. Session
Fixa;on,
Session
Hijacking/Cookie
Stealing,
Session
ID
Analysis
(Crypto,
Sta;s;cal)
Au Id Re Su Ct NR Cf Pr It Al
Cookie
ADribuJ
impostaJ
HDponly,
secure,
path,
domain,
expires/max-‐age
ProteDo
nella
comunicazione
(TLP*)
62. “Quasi
inconsciamente,
scrisse
con
le
dita
sul
tavolo
coperto
di
polvere:
2+2
=
5”
–
Winston
Smith
(1984)
BUSINESS
LOGIC
(B.L.)
63. Business
Logic
Flow,
Abuse
of
func;onality,
Insufficient
Process
Valida;on
Au Id Re Su Ct NR Cf Pr It Al
La
logica
“di
per
se”
(limi;/flussi)
i
flussi
“step”
sono
verificaJ
sono
sempre
verificaJ
i
limiJ?
sono
esposJ
parametri
sensibili
lato
client?
...sempre
errori
e
tracciatura
64. “never
trust
the
user
input,
output
too”
DATA
VALIDATION
(INPUT/OUTPUT)
65. Injec;on,
Cross
Site
Scrip;ng,
HTTP
Request/Response
Smuggling/Spliqng
Au Id Re Su Ct NR Cf Pr It Al
La
Data
Valida;on
“di
per
se”
Implementata
lato
server
e
lato
client,
se
necessario*
Errori
GesJJ
e
operazioni
loggate
(EHAL*)
Resiliente
66. Injec;on,
Overflow,
Cross
Site
Scrip;ng,
HTTP
Request/Response
Smuggling/Spliqng
Au Id Re Su Ct NR Cf Pr It Al
Da;
e
File
invia;
da
e
verso
l’applicazione
Si
può
fare
qualche
cosa
con
i
parametri
desJnaJ
ad
intepreJ
(SQL,
XML,
Xpath,
Xquery,
HTML)
...e
per
parametri
usaJ
per
calcoli
od
operazioni
(Overflow)
...e
per
parametri
che
uJlizzano
URL
(Redirect/Iframe)
..e
per
i
file
(nome,
estensione,
contenuto
e
anJvirus)
67. “Sei
sicuro
che
questa
linea
è
sicura?”
–
Trinity
(The
Matrix)
TRANSPORT
LAYER
PROTECTION
68. Eavesdropping
Au Id Re Su Ct NR Cf Pr It Al
La
comunicazione
Sono
proteX
tuX
i
daJ
sensibili
(credenziali,
id
di
sessione,
cookie,
daJ
degli
utenJ…)?
...sempre
errori
e
tracciatura
69. Eavesdropping
Au Id Re Su Ct NR Cf Pr It Al
SSL
e
cifrari
Evitare
Protocolli
insicuri
UJlizzare
solo
cifrari
forJ
70. Eavesdropping
Au Id Re Su Ct NR Cf Pr It Al
Cer;fica;
FirmaJ
da
enJtà
riconosciute
In
corso
di
validità
Devono
corrispondere
all’indirizzo
71. “Avrebbero
potuto
analizzare
e
meDere
su
carta,
nei
minimi
parJcolari,
tuDo
quello
che
s'era
faDo,
s'era
deDo
e
s'era
pensato”
–
Winston
Smith
(1984)
ERROR
HANDLING
AND
LOGGING
72. Non
Repudia;on,
Log
AQacks
Au Id Re Su Ct NR Cf Pr It Al
I
Log
Devono
contenere
informazioni
uJli
a
tracciare
le
richieste
(sia
fallite
che
non)
Vanno
verificaJ
i
daJ
inseriJ
nei
log
(DV*)
Resilienza
Errori
GesJJ
e
LoggaJ
(!)
73. Non
Repudia;on,
Log
AQacks
Au Id Re Su Ct NR Cf Pr It Al
Errori
Sempre
generici
lato
client
DeDagliaJ
lato
server
76. InformaNon
ConfiguraNon
Secure
Gathering Management Transmission
Data
Session
AuthenNcaNon AuthorizaNon
ValidaNon Management
Denial
of
Business
Logic Cryptography
Service
Risky
HTML
5
FuncNonality
hDps://www.owasp.org/index.php/
Web_ApplicaJon_Security_TesJng_Cheat_Sheet
80. “vincere
le
baDaglie
e
raggiungere
i
propri
obbieXvi
militari,
ma
trascurare
di
sfruDarne
i
risultaJ,
è
un
faDo
molto
negaJvo”
-‐
Sun
Tzu
(L’arte
della
guerra)
PRESENTARE
I
RISULTATI
81. “la
misurazione,
la
valutazione,
il
raffronto
e
la
viDoria”
-‐
Sun
Tzu
(L’arte
della
guerra)
LA
METRICA
CVSS
V2
82. metriche metriche
di
metriche
di
base
temporali ambiente
VeQore SfruQabilità Danno
Riservatezza Req.Riservatezza
Collaterale
Auten;cazione Integrità Rientro Distribuzione Req.Integrità
Complessità Disponibilità Confidenza Complessità Req.Disponibilità
gli
elemenJ
che
compongono
il
CVSS
v2
94. ImpaQo CVSS
v2 Priorità
di
Rientro Patch
SLA
da
eseguire
a
Basso 0.00
-‐
1.99 P5 discrezione
dei
preposJ
secondo
Medio 0.00
-‐
2.00 P4 pianificazione
ordinaria
massimo
prossime
4
Alto 0.00
-‐
2.01 P3
seXmane
massimo
prossime
2
Importante 0.00
-‐
2.02 P2
seXmane
nell’immediato
o
Cri;co 0.00
-‐
2.03 P1
entro
1
seXmana
95. “vincere
le
baDaglie
e
raggiungere
i
propri
obbieXvi
militari,
ma
trascurare
di
sfruDarne
i
risultaJ,
è
un
faDo
molto
negaJvo”
-‐
Sun
Tzu
(L’arte
della
guerra)
UN
RISULTATO
101. Mappature
e
Classificazioni
OWASP
TesJng
Guide:
OWASP-‐DV-‐005
OWASP
Category:
Data
Valida;on
Tes;ng
OWASP
ASVS:
V6.4
OWASP
TOP
10
2010:
2010-‐A1
OWASP
TOP
10
2007:
2007-‐A2
WASC
Threat
ClassificaJon
v2:
WASC-‐19
PCI-‐DSS:
6.5.1
CWE:
CWE-‐89
Area
di
Analisi:
Validazione
dei
da;
Tipologia:
Development
102. Riferimen;
OWASP
ASVS
WASC
MITRE
CVE
...note
per
la
prevenzione