Top Banner
Ricardo Striquer Soares [email protected] WB4B Negócios Online XSS Desvendado!
14

Xss Desvendado!

Jul 05, 2015

Download

Technology

ricardophp

Keynots da palestra sobre XSS
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Xss Desvendado!

Ricardo Striquer Soares

[email protected]

WB4B Negócios Online

XSS Desvendado!

Page 2: Xss Desvendado!

XSS quer dizer Cross Site Scripting, seu nome

originalmente era CSS e apesar de ser mais antigo que a

tecnologia CSS ele é muito menos popular, por isto quando

surgiu a CSS diversos técnicos de segurança começaram a

chamar a falha de XSS, graças ao XHTML, linguagem a

O que é XSS

chamar a falha de XSS, graças ao XHTML, linguagem a

qual geralmente se encontra a falha.

O XSS é uma das mais populares técnicas de “Injection”

(Em Português Injeção, de injetar, ou adicionar) que existe,

nada mais é do que a injeção de códigos extras, não

necessariamente danosos, em uma página de internet.

Page 3: Xss Desvendado!

Freqüência de ocorrencia

27%

39%

9% 9%

16%

Cross Site Scripting Credentials Session

Prediction

SQL Injection Outros Controles

insuficientes

2008 Acumetix Ltd

http://www.acunetix.com/websitesecurity/cross-site-scripting.htm

Page 4: Xss Desvendado!

1. Alteração do conteúdo do HTML da página;

2. Apresentação de mensagens (por alerts de

javascript) incorretas ao usuário final;

Problemas que acarreta

3. Roubo de sessão;

4. Roubo de audiencia;

5. Ataque de carga ao sistema servidor;

Page 5: Xss Desvendado!

- Roubo de identidade;

- Acesso à informações restritas de grande

importancia;

- Ganhar acesso à conteúdo pago;

- Monitorar habito de navegação dos usuários;

Utilidades mais comuns de uso

- Monitorar habito de navegação dos usuários;

- Alterar funcionalidades básicas do browser;

- Defamação publica de um indivíduo ou empresa;

- Danificar aplicações Web;

- Proporcionar um DoS ou um DDoS.

Page 6: Xss Desvendado!

Vídeo ilustrativo!

Page 7: Xss Desvendado!

Diagrama de interoperabilidade

Cliente Servidor Cliente

Cenário 1

Cliente Servidor Banco Servidor Cliente

Cenário 2

Page 8: Xss Desvendado!

Executa-se por meio de adição de código XHTML em campos comuns de formulários ou variáveis passadas por GET para funcionalidades como paginação e links, não necessáriamente apenas de texto.

Como executar

XSS comum Altera o conteúdo da página atual

XSRFEncaminha o usuário para outra página, ou abre páginas externas no site sendo visitado

Page 9: Xss Desvendado!

Exemplo prático

Page 10: Xss Desvendado!

- Filtro de palavras no código;

- Acompanhamento por IDS(Para evitar DoS e DDoS)

Como se prevenir

(Para evitar DoS e DDoS)

- Acompanhamento do Administrador do sistema;

Page 11: Xss Desvendado!

$x = "<html>teste, <a href=\"teste\"

onclick=\"alert('ahhahaha');\">clique aqui</a>";

echo htmlspecialchars($x);

Funções: htmlspecialchars

// Resultado:

// "&lt;html&gt;teste, &lt;a href=&quot;teste&quot;

// onclick=&quot;alert('ahhahaha');&quot;&gt;clique

// aqui&lt;/a&gt;"

Page 12: Xss Desvendado!

$x = "<html>teste, <a href=\"teste\"

onclick=\"alert('ahhahaha');\">clique aqui</a>";

echo str_replace("<", "&lt;" $x);

Função: str_replace

// Resultado:

// "&lt;html>teste, &lt;a href="teste"

// onclick="alert('ahhahaha');">clique aqui&lt;/a>"

Page 13: Xss Desvendado!

$x = "<html>teste, <a href=\"teste\"

onclick=\"alert('ahhahaha');\">clique aqui</a>";

echo strip_tags(

str_replace("String.fromCharCode", "", $x)

Funções: strip_tags + str_replace

str_replace("String.fromCharCode", "", $x)

);

// Resultado:

// "alert((0x0068));"

Page 14: Xss Desvendado!

• www.programabrasil.orghttp://www.programabrasil.org/?p=83

• OWASPhttps://www.owasp.org/index.php/Cross-site-scripting

Referencias

https://www.owasp.org/index.php/Cross-site-scripting

https://www.owasp.org/index.php/Invoking_untrusted_mobile_code

• Wikipediahttp://en.wikipedia.org/wiki/Cross-site_scripting

• Acunetixhttp://www.acunetix.com/