Vous êtes sur la page 1sur 22

segurana em aplicaes

web
myke hamada
mykesh <at> gmail
RejectConf
SP07

whoami
cincia da computao

segurana da informao
ruby rails c# vbscript
opensource microsoft
ethical hacking

RejectConf
SP07

agenda
introduo
ontem e hoje
input validation
security on ruby on rails
ferramentas
consideraes finais
concluso
referncias
RejectConf
SP07

sql injection
xss
csrf

introduo
web application um alvo fcil
sql injection uma tecnica bem documentada
muitos desenvolvedores de software no tem
uma real definio do que sql injection ou
xss
no objetivo desta apresentao mostrar
tcnicas de invaso, mas sim como previnir
ataques
RejectConf
SP07

ontem

pginas estticas
poucas tecnologias
outros alvos

RejectConf
SP07

hoje
sites dinmicos
muitas ferramentas
novos vetores de
ataque
informao muito fcil
baixo conhecimento
RejectConf
SP07

hoje (cont)
owasp top 10

RejectConf
SP07

input validation
voc valida de que lado?
nmeros devem nmeros
strings devem ser strings
o dado que recebido vlido?
o formato do dado vlido?
codificao / decodificao
no esquea de validar os dados de sada!!!
RejectConf
SP07

security on ror
conveno sobre configurao
rails 1.2.5 (novembro/2007)
componentes de validao
model: sql injection
view: xss
controller: mtodos (insecure object reference)
e csrf
RejectConf
SP07

security on ror (cont)


evite:
strip_tags
strip_links
sanitize

RejectConf
SP07

alternativas:
white_list
html_escape
validates_email_veracity_of
validates_email_format_of
redcloth
safe_erb
csrf_killer
10

sql injection
o comando inserido na entrada interpretado
como parte do cdigo
o interpretador entende o cdigo de entrada
como um comando
comando executado pelo interpretador
impacto: criar, ler, atualizar e excluir dados
possvel alterar a aplicao/s.o. e fazer o
bypass de todos os controles de firewall/ips
RejectConf
SP07

11

model: sql injection


Email.find_all
"owner_id = 123 AND subject = '#{@params['subject']}'"
"owner_id = 123 AND subject = '' OR 1 --''
subject = @params['subject']
Email.find_all [ "owner_id = 123 AND subject = ?", subject ]

RejectConf
SP07

12

cross site scripting? xss? css?


activex / javascript / vbscript / html / flash / pdf
web application recebe a informao (link)
codifica a parte maliciosa do link
o link altera a cara do site
forum e guesbooks

RejectConf
SP07

13

xss (cont)
http://host:8987/?<script>alert('vulnerable to XSS');</script>

account hijacking
false advertising
user settings
cookie
RejectConf
SP07

14

view: xss

http://ror/controller/action?text=<script>alert(document.cookie)</script>

<%= @params['text_xss'] %>


<script>alert(document.cookie )</script>

<%=h post.subject %>


<%=h post.text %>
RejectConf
SP07

15

csrf
web browser carrega um site malicioso
web browser envia solicitaes http para um
outro site
tag IMG ou FORM / javascript
impacto:
acesso a conta bancria, envio de comentrios,
acesso a lista de e-mails, compras online
RejectConf
SP07

16

csrf

site darth vader

1
2
3
vtim
a
RejectConf
SP07

4
site dory
17

controller: csrf
cuidado com controller/:action
use: hide_action
<img src="http://rails/order/20/delete" />
soluo:
use o plugin csrf_killer
RejectConf
SP07

18

ferramentas
web inspect
acunetix
watchfire appscan
n-stalker
hacker safe

RejectConf
SP07

metasploit framework
nikto / wikto
paros proxy
web scarab
w3af
priamos
nessus
burp
19

consideraes finais
utilize filtros de validao
root/sys/sa/admin/dba. nunca sero!
negar acesso a s.p. e a ferramentas de admin
chroot neles!!!
cuidado com url parameter
captcha
auditar o cdigo
ids/ips
hardening
head, put, delete, trace
RejectConf
SP07

20

concluso
desenvolver cdigo seguro fcil
priorize reas crticas do negcio
treinamento
least privilege
web application firewall
sql proxy
faa muitos testes, mas defina um escopo
coma tecnologia com farofa
RejectConf
SP07

21

referncias
www.owasp.org
manuals.rubyonrails.com/read/chapter/40
www.quarkruby.com/2007/9/20/ruby-on-rails-security-guide
jeremiahgrossman.blogspot.com
www.rorsecurity.info
www.cgisecurity.com
railsify.com/categories/security-production
mysqlsecurity.com
www.matasano.com/log
www.webappsec.org
ha.ckers.org/xss.html
www.railslodge.com/plugins
svn.techno-weenie.net/projects/plugins
ferruh.mavituna.com/makale/sql-injection-cheatsheet
RejectConf
SP07
www.foundstone.com/us/resources/proddesc/hacmecasino.htm

22

Vous aimerez peut-être aussi