4. SoTware
é
ubíquo
Dependemos
do
soTware
para
tratar
de
dados
sensíveis
e
de
elevado
valor,
que
tem
um
impacto
direto
nos
diversos
aspectos
da
nossa
vida
Funções
crí<cas
de
negócio
no
governo
e
na
indústria
dependem
por
completo
de
so=ware
5. Exposição
aumentada
torna
o
so=ware
(e
os
dados)
visíveis
para
pessoas
que
nem
sabiam
que
os
mesmos
exis]am
anteriormente
SoTware
está
cada
vez
mais
exposto
à
Internet
7. So=ware
é
cada
vez
mais...
...COMPLEXO
Ataques
exploram
bugs
designados
por
vulnerabilidades
Es]ma-‐se
entre
5-‐50
bugs
por
1000
linhas
de
código
Windows
XP
40
milhões
de
linhas
de
código
8. So=ware
é...
...EXTENSÍVEL
O
que
é
o
soTware
hoje
em
dia
nos
nossos
computadores...
smartphones,
tablets,
televisões,
automóveis
(...)?
SO
+
soTware
em
produção
+
patches
+
3rd
party
DLLs
+
device
drivers
+
plugins
+
....
9. So=ware
está
cada
vez
mais...
...CONECTADO
Internet
(1+
biliões
de
u]lizadores)
+
sistemas
de
controlo
+
tablets
e
smartphones
+
automóveis
+
sistemas
de
personal
fit
e
healthcare
+
(...)
10. 2013.2014
Segurança
em
Redes
de
Computadores
(00700)
10
“We
wouldn’t
have
to
spend
so
much
3me,
money,
and
effort
on
network
security
if
we
didn’t
have
such
bad
so<ware
security”
Viega
&
McGraw,
Building
Secure
SoTware,
Addison
Wesley
2002
“the
current
state
of
security
in
commercial
so<ware
is
rather
distasteful,
marked
by
embarrassing
public
reports
of
vulnerabili3es
and
actual
a>acks
(...)
and
con3nual
exhorta3ons
to
customers
to
perform
rudimentary
checks
and
maintenance.”
Jim
Routh,
Beau]ful
Security,
O'Reilly,
2010
“So<ware
buyers
are
literally
crash
test
dummies
for
an
industry
that
is
remarkably
insulated
against
liability”
David
Rice,
Geekonomics:
The
Real
Cost
of
Insecure
SoTware,
Addison-‐Wesley,
2007
11. “We wouldn’t have to spend so much ,
, and on network security if we
didn’t have such
”!
Viega & McGraw, Building Secure Software, Addison Wesley
13. ...informa]on
accessed
on
360,069
accounts
They
simply
logged
on
to
the
part
of
the
group's
site
reserved
for
credit
card
customers
-‐
and
subs9tuted
their
account
numbers
which
appeared
in
the
browser's
address
bar
with
other
numbers.
It
allowed
them
to
leapfrog
into
the
accounts
of
other
customers
-‐
with
an
automa9c
computer
programme
le=ng
them
repeat
the
trick
tens
of
thousands
of
9mes.
hLp://www.dailymail.co.uk/news/ar]cle-‐2003393/How-‐Ci]group-‐hackers-‐broke-‐door-‐using-‐banks-‐website.html
20. Falta
de
percepção
da
segurança
Algumas
organizações
não
investem
o
suficiente
em
segurança
(ou
investem
incorretamente)
Programadores
não
percebem
os
riscos
de
segurança
(ou
não
podem
ou
querem
perceber)
SEGURANÇA
PROGRAMADORES
24. Rede
Sistema
Opera]vo
Aplicações
Base
de
Dados
Servidor
Web
Aplicações
Web
standard
Aplicações
Web
específicas
WhiteHat
Security,
Website
Security
Sta]s]cs
Report,
Winter
2011
Vulnerabilidades
Específicas
Vulnerabilidades
conhecidas
e
documentadas
26. ... an open community dedicated to enabling organizations to
develop, purchase, and maintain applications that can be trusted
27.
28.
29. OWASP?
§ Open
Web
Applica]on
Security
Project
§ Promove
o
desenvolvimento
seguro
de
so=ware
§ Orientado
para
o
desenvolvimento
de
serviços
baseados
na
web
§ Focado
principalmente
em
aspectos
de
desenvolvimento
do
que
em
web-‐design
§ Um
fórum
aberto
para
discussão
§ Um
recurso
gratuito
e
livre
para
qualquer
equipa
de
desenvolvimento
30. OWASP?
§ Open
Web
Applica]on
Security
Project
§ Organização
sem
fins
lucra]vos,
orientada
para
esforço
voluntário
§ Todos
os
membros
são
voluntários
§ Todo
o
trabalho
é
“doado”
por
patrocinadores
§ Oferecer
recursos
livres
para
a
comunidade
§ Publicações,
Ar]gos,
Normas
§ SoTware
de
Testes
e
de
Formação
§ Chapters
Locais
&
Mailing
Lists
§ Suportada
através
de
patrocínios
§ Suporte
de
empresas
através
de
patrocínios
financeiros
ou
de
projectos
§ Patrocínios
pessoais
por
parte
dos
membros
36. OWASP
Top
10
hLps://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
37. OWASP?
§ Top
10
Web
Applica]on
Security
Risks/Vulnerabili]es
§ Uma
lista
dos
10
riscos
de
segurança
mais
crí]cos
§ Actualizado
numa
base
(quase)
anual
§ Crescente
aceitação
pela
indústria
§ Federal
Trade
Commission
(US
Gov)
§ US
Defense
Informa]on
Systems
Agency
§ VISA
(Cardholder
Informa]on
Security
Program)
§ Está
a
ser
adoptado
como
um
standard
de
segurança
para
aplicações
web
40. • Free,
Open
source
• Cross
pla}orm
• Easy
to
use
• Easy
to
install
• Interna]onalized
• Fully
documented
• Involvement
ac]vely
encouraged
• Reuse
well
regarded
components
All
the
essen]als
for
web
applica]on
tes]ng
Intercep]ng
Proxy
Ac]ve
and
Passive
Scanners
Spider
Report
Genera]on
Brute
Force
(using
OWASP
DirBuster
code)
Fuzzing
(using
OWASP
JBroFuzz
code)
Auto
tagging
Port
scanner
Smart
card
support
Session
comparison
Invoke
external
apps
BeanShell
integra]on
API
+
Headless
mode
Dynamic
SSL
Cer]ficates
An]
CSRF
token
handling
41. OWASP
Webgoat
WebGoat
is
a
deliberately
insecure
web
applica9on
maintained
by
OWASP
designed
to
teach
web
applica9on
security
lessons.
Cross-‐site
Scrip]ng
(XSS)
Access
Control
Thread
Safety
Hidden
Form
Field
Manipula]on
Parameter
Manipula]on
Weak
Session
Cookies
Blind
SQL
Injec]on
Numeric
SQL
Injec]on
String
SQL
Injec]on
Web
Services
Fail
Open
Authen]ca]on
Dangers
of
HTML
Comments
...
and
many
more!
hLps://www.owasp.org/index.php/Category:OWASP_WebGoat_Project
42. OWASP
Cheat
Sheets
hLps://www.owasp.org/index.php/Cheat_Sheets
The
OWASP
Cheat
Sheet
Series
was
created
to
provide
a
concise
collec9on
of
high
value
informa9on
on
specific
web
applica9on
security
topics.
BUILDERS
BREAKERS
DEFENDERS
Authen9ca9on
Cheat
Sheet
Choosing
and
Using
Security
Ques9ons
Cheat
Sheet
Clickjacking
Defense
Cheat
Sheet
C-‐Based
Toolchain
Hardening
Cheat
Sheet
Cross-‐Site
Request
Forgery
(CSRF)
Preven9on
Cheat
Sheet
Cryptographic
Storage
Cheat
Sheet
DOM
based
XSS
Preven9on
Cheat
Sheet
Forgot
Password
Cheat
Sheet
HTML5
Security
Cheat
Sheet
Input
Valida9on
Cheat
Sheet
(…)
A[ack
Surface
Analysis
Cheat
Sheet
XSS
Filter
Evasion
Cheat
Sheet
REST
Assessment
Cheat
Sheet
Virtual
Patching
Cheat
Sheet
43. OWASP
ESAPI
ESAPI
(The
OWASP
Enterprise
Security
API)
is
a
free,
open
source,
web
applica9on
security
control
library
that
makes
it
easier
for
programmers
to
write
lower-‐risk
applica9ons.
hLps://www.owasp.org/index.php/Cheat_Sheets
Permite
o
desenvolvimento
de
aplicações
com
algumas
preocupações
básicas
de
segurança,
normalizando
as
prá]cas
de
desenvolvimento
seguro.
Linguagens:
Java
(J2EE)
PHP
Ruby
(…)
(Entreprise
Security
API)
44. OWASP
ASVS
hLps://www.owasp.org/index.php/Category:OWASP_Applica]on_Security_Verifica]on_Standard_Project
(Applica]on
Security
Verificaton
Standard)
The
primary
aim
of
the
OWASP
Applica9on
Security
Verifica9on
Standard
(ASVS)
Project
is
to
normalize
the
range
in
the
coverage
and
level
of
rigor
available
in
the
market
when
it
comes
to
performing
Web
applica9on
security
verifica9on
using
a
commercially-‐workable
open
standard.
Desenvolvido
com
os
seguintes
requisitos
U<lizado
como
uma
métrica:
oferecer
aos
programadores
e
donos
de
aplicações
uma
forma
de
avaliar
o
nível
de
confiança
nas
suas
aplicações.
Usado
como
um
guia:
oferecer
apoio
para
o
desenvolvimento
de
controlos
de
segurança
de
forma
a
que
possam
responder
aos
requisitos.
Usado
durante
procurement:
oferecer
a
base
para
requisitos
de
segurança
em
contratos
de
aquisição
de
soTware
45. OWASP
SAMM
hLps://www.owasp.org/index.php/Category:SoTware_Assurance_Maturity_Model
The
So^ware
Assurance
Maturity
Model
(SAMM)
is
an
open
framework
to
help
organiza9ons
formulate
and
implement
a
strategy
for
so^ware
security
that
is
tailored
to
the
specific
risks
facing
the
organiza9on.
hLp://www.opensamm.org
(SoTware
Assurance
Maturity
Model)
Avaliar
as
prá]cas
de
segurança
de
soTware
numa
organização
Construir
um
programa
de
segurança
de
soTware
balanceado
e
com
iterações
bem
definidas
Demonstrar
melhorias
concretas
num
plano
de
verificação
de
segurança
Definir
e
medir
as
ac]vidades
relacionadas
com
segurança
numa
organização
47. OWASP
Dev.
Guide
hLps://www.owasp.org/index.php/Category:OWASP_Guide_Project
The
Developer
Guide
2014
is
a
"first
principles"
book
-‐
it's
not
specific
to
any
one
language
or
framework,
as
they
all
borrow
ideas
and
syntax
from
each
other.
There
are
highly
specific
issues
in
different
languages,
such
as
PHP
configura9on
se=ngs
or
Spring
MVC
issues,
but
we
need
to
look
past
these
differences
and
apply
the
basic
tenets
of
secure
system
engineering
to
applica9on
security.
Founda]on
Architecture
Design
Build
Configure
Operate