Académique Documents
Professionnel Documents
Culture Documents
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
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
RejectConf
SP07
12
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>
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
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