Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Dom-Based XSS.

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    Tutorial Dom-Based XSS.

    #Antes de ler esse tutorial, tenha certeza absoluta que entendeu tudo sobre XSS antes de continuar
    DOM-Based XSS

    O Que e essa Vulnerabilidade?


    E Uma Vulnerabilidade originada do XSS(Cross Script Site) onde um objeto chamado DOM(Document Object Model ) que permite o que o atacante execute scripts (Como Javascript) para manipular o site.
    Como Vemos no exemplo a seguir:

    <html>
    <head>
    </head>
    <body>
    <script>
    var pos=document.URL.indexOf("Nome=")+5;
    var userInput=document.URL.substring(pos,document.URL. length);
    document.write(unescape(userInput));
    </script>
    </body>
    </html>
    Como vocês podem ver acima, o Script permite que sem autorizações e nem um tipo de proteção, o atacante pode executar Scripts na variável "Nome" sem problemas, para quem entende o básico de HTML e JavaScript, será fácil saber o que acontece acima, mas para quem não sabe nada eu irei explicar, acima a variável chamada "pos" esta procurando a variável na URL chamada "Nome", e logo abaixo, a variável chamada "userInput" esta copiando o valor da variável "pos" acima , junto com o tamanho da URL do documento, que quando todo o conteúdo esta na variável "userInput", ele escreve na pagina o conteúdo da variável, fazendo com que sem nenhum proteção o usuário possa manipular o documento.

    Como eu acho sites com essa Vulnerabilidade?


    Esse são uns dos problemas por essa Vulnerabilidade ser pouco conhecida, por causa da dificuldade de analisar o código fonte de toda pagina e ver se essa e vulnerável nem o propio Acutinex© consegue detectar essa Vulnerabilidade..., mas uma nova versão do Acutinex© Esta chegando com uma nova tecnologia chamada DeepScan©, que nos promete a detecção dessa Vulnerabilidade nos sites.

    Mas Enquanto essa versão não chega, como eu posso achar sites Vulneráveis?


    E Bastante Complicado mas vamos lá, Primeiro um site Vulnerável a DOM-based XSS ele quase nunca ira ter um filtro ou proteção como no código que nos vimos acima, Segundo veja bem a forma e como que o Script do documento ira se executar no site, se ele vai passar por outra variavel, se ele sera levado para outro local do site, se ele for executado de outra forma e etc...., Terceiro e Ultimo, Quando vc descobrir que o site e vulnerável, execute o seguinte script para saber se esta funcionando e para definir os níveis de proteção do site:
    1°- <script>alert(123)</script>, se o site mandar um pop-up mostrando "123" ele e vulnerável, mas se não..., pode desistir do site ou pode fazer modos de bypassar a segurança do site com formas que eu irei falar logo abaixo.
    2°- <script>alert("XSS")</script>, se o site mandar um pop-up mostrando "XSS", parabéns, esse site e bastante vulnerável a DOM-Based XSS, você pode executar qualquer código para manipular o site livremente, mas se não mostrar pop-up veja o que fazer a seguir.


    O Site não mostrou nenhum pop-up, o meu site não e Vulnerável?

    Não, alguns sites em vez de resolver o problema com o XSS, eles querem colocar a "sujeira debaixo do tapete", isso pela a filtração de caracteres chaves para execução do XSS, mas como se "esquivar" dessas proteções?

    1°- Ofuscação de Caracteres Chaves:
    Alguns sites usam um filtro que bloqueia qualquer caractere que tenha <script>,<alert>, entre outros, mas tem uma maneira de se "esquivar" desse filtro, veja bem:
    <ScRiPt>aLeRt(123)</ScRiPt>
    Assim o filtro não ira detectar os caracteres e deixara passar......, mas se não funcionar? vejamos além desse filtro...


    2°- MagicQuotes="on":
    Alguns Sites usam um filtro que bloqueia os seguintes caracteres ', ", /, colocando no lugar isso "/", fazendo com que o código não funcione, mas como eu posso me "esquivar" desse filtro? veja bem:
    Em vez de colocar ', ", /, vc terá que encriptografar todo o código em ASCII(Menos a parte de <script></script>, faça isso com o plugin do firefox chamado Hackbar onde na parte de XSS, tem String.fromCharCode(), e coloque o script e ele ira encriptografar, e ficara assim:
    <script>alert("XSS")</script>
    ficara
    <script>(String.fromCharCode(97, 108, 101, 114, 116, 40, 34, 88, 83, 83, 34, 41))</script>
    Assim mande ele executar o código e assim o código executara no site, e mostrara o pop-up...
    (Se não funcionar encriptografe em HTML tambem(com <script></script> junto ao codigo), e ficara assim:
    <script>alert("XSS")</script>)



    3°- Método de Fechamento:
    Outros sites eles bloqueiam todo o código <script>alert("XSS")</script>, mas um simples " '> " no começo do script resolve o problema, e também usar <script/ alert("XSS")></script> pode ajudar.


    Agora, como eu faço para invadir um site com essa Vulnerabilidade?

    Ai vem a parte principal, assim como o XSS, DOM-Based XSS segue o mesmo estilo, e Obrigatório o uso de ES(Engenharia Social) para fazer o Administrador clicar no link onde esta o código malicioso e ter controle ao site, mas como ter controle ao site? Bem a maioria das pessoas só conhecem por roubo de seção, com o exploit chamado Cookie Stealer, onde rouba o cookie da seção do administrador fazendo com o atacante vire o administrador do site, mas isso e inútil por causa que para se mudar a senha do administrador e necessário saber a senha antiga, assim dando acesso por pouco tempo ao atacante de fazer alguma coisa, ate que o cookie do administrador expire..., mas existe um exploit que funciona como uma backdoor, mostrando tudo que o administrador esta fazendo, o que ele esta fazendo, e varias outras coisas..., esse exploit e chamado XSS Shell, que e e usado no XSS de Tunelamento, que pode ser usado em DOM-Based XSS também..., mas para fazer funcionar esse exploit e necessário um trabalho imenso para achar um host free que aceite asp, onde baixar a XSS Shell que e muito dificil de ser encontrada, Fazer ela funcionar, mas e um trabalho que vale apena!!, eu usava o 7host só que ele esta péssimo agora...., agora a parte da engenharia social eu deixo com vocês




    Galera, deu MUITO Trabalho para fazer esse tutorial, e eu só peço que deixe seu obrigado!, ate mais pessoal e aproveitem esse Ótimo Tutorial!!!
    sigpic


    Patati Patacula, la vem o pato para ver o que Ha!!

  • Font Size
    #2
    Ótima contribuição amigo !

    Att: Cr4t3r
    Yes, I am a criminal. My crime is that of curiosity. My crime is
    that of judging people by what they say and think, not what they look like.
    My crime is that of outsmarting you, something that you will never forgive me
    for.

    I am a hacker, and this is my manifesto. You may stop this individual,
    but you can't stop us all... after all, we're all alike.

    Comment

    X
    Working...
    X