fala pessoal Andre Alonso aqui e essa falha que eu vou te mostrar é uma das falhas mais simples de serem exploradas e talvez de serem encontradas mas o fato dela ser simples não muda o estrago que ela pode causar caso ela seja encontrada por um hacker mal intencionado ele pode utilizar ela para fazer ataque de Fishing e se passar por sites falsos e eu vou te mostrar aqui na prática como você pode encontrar explorar ela e até quanto algumas empresas pagam por uma falha tão simples como essa então passando aqui pra minha tela eu tô aqui no site da Americanas isso porque essa falha ela acontece por meio de uma funcionalidade que os programadores implementam mas quando eles vão implementar essa funcionalidade para melhorar a dinâmica do site a navegação eles acabam deixando essa brecha vamos supor que a gente tá aqui na Americanas comprando as coisas um amigo te manda o link da americanos você abre ele aqui e começa a interagir com o site E aí você vê não sei esse sofá aqui essa cadeira aqui nossa uma cadeira maravilhosa eu tava com dor nas costas Preciso comprar uma cadeira nova E aí você vai lá em comprar você vai lá en comprar então ir pra sexta quer comprar a gente tá aqui no carrinho clica em continuar para você terminar o seu pedido e olha só ele pediu para você fazer o login no site você tava lá no seu processo comprando o produto indo lá no carrinho terminando de fazer e ele te pede para logar isso já aconteceu alguma vez com você seja quando você ia comprar alguma coisa ou quando você recebeu uma foto de um amigo no Instagram ele te enviou o link lá Você clicou para ver a foto tem que logar Você recebeu a foto do Pinterest de algum amigo o Pinterest é um site bem famoso o Pinterest é um site bem famoso que quando você recebe uma foto um link de uma foto para você poder ver a foto você tem que criar uma conta no site e aí te leva para uma tela de login isso é uma coisa muito chata porque você quer fazer uma coisa você precisa fazer login e a funcionalidade que os programadores implementam nisso é que você vai comprar o produto entra na tela vai no carrinho vai comprar e c na tela de login se não tivesse essa funcionalidade você simplesmente faria o login na sua conta criaria a sua conta e você voltaria pro site inicial da Americanas você cairia americanas. com você iria voltar aqui só que isso não é muito interessante porque você tava naquele embalo para comprar o produto teve que logar e voltar pro site Inicial você perdeu tudo Você não voltou Onde você tava E para isso os programadores sal salvam quando você sai aqui do carrinho clica em continuar e vai fazer o login ele salvam o local que você estava anteriormente PR te redirecionar isso melhora muito vamos supor que você recebe a foto no Instagram de algum amigo você clica para ver a foto aparece a tela de login você loga e você volta naquele mesmo local que você tava e isso é uma funcionalidade do FL que os programadores implementam você tá aqui vai pra tela de login e a tela de login salva aonde você tava e onde que essa funcionalidade é implementada onde que eles salvam isso se você vê aqui na URL a gente tem cliente. Americanas minha conta entrar e aqui a gente tem uma outra URL eu vou até abrir ela um pouco maior para vocês verem Olha só se eu abrir a URL da Americanas a gente pode ver que aqui a gente tem nossa URL minha conta cliente entrar e a gente tem um parâmetro chamado next ele te leva pra sacola Americanas compra entrega com um ID específico e qual local é esse vamos ver se eu copiar esse link aqui que tá na URL e voltar aqui a gente vai exatamente pro local onde a gente tava PR Nossa sacola para poder continuar a nossa compra Então esse parâmetro next ele salvando o local que você tava ele tá salvando para depois de você fazer login você ser redirecionado para ele mas qual que é o problema dessa funcionalidade se você pensar basicamente Ela é bem simples você simplesmente faz o login e volta pro site anterior Mas a questão é que muitos programadores não bloqueiam o local que você vale eles permitem que você vá para qualquer outro local caso a gente troque essa variável que tá aqui na URL Então se a gente ao invés de ir pra tela de login da americana vou clicar em continuar vamos pra tela de login se ao invés de colocar sacola ponto Americanas para voltar pro nosso pedido a gente colocasse https do.
google. com Será que o site bloquearia Será que depois de fazer login a gente não iria pro google. com ao invés de PR Americanas Essa é a falha de W redirect E por que que essa falha ela pode ser usada por um hacker porque o domínio da Americanas ele é o domínio verdadeiro cliente.
americanas. com só que se um hacker alterar o site que você é redirecionado do login para um site falso da Americanas ele poderia te mandar um link real para você fazer login um link que é verificado tem TPS é seguro mas após você fazer login você vai para um site falso suas informações são roubadas imagina alguém te manda um link verificado da Americanas para você concluir o seu pedido você entra nele é o domínio faz o login e aí aparece as informações de pagamento só que as informações de pagamento elas não estão no sacolas americanas. com ela foi alterada PR não sei a Canas ao invés do i do L ao invés do i é um l é um domínio falso um domínio que vai roubar os seus dados e por meio dessa falha isso permite que ao enviar um domínio verdadeiro você seja redirecionado para um domínio falso então após fazer o login talvez você seja redirecionado pro Google no caso do site de americanas eles verificam se eu tentar fazer login aqui tentar fazer login na minha área ele vai me redirecionar pro site da amicas normal ele vai verificar que esse site o site google.
com não é o site da Americanas e vai cancelar esse redirecionamento mas eu criei aqui um exemplo para vocês poderem ver isso na prática aqui na minha tela eu tenho o site da luank que é um laboratório que eu criei para poder demonstrar sua falha um pouco mais de perto na prática e inclusive mostrando o código aqui para vocês vamos supor que você vai compartilhar algo pro seu amigo algum extrato alguma coisa do banco aqui e aí quando você clica no link ele te joga pra tela de login só que a tela de login ela salva na URL aqui em cima ela salva o local que você tava local inicial da Lub lub. com e se você fizer login normalmente Então vamos colocar Alonso @ tdi. com E aí colocar sua senha aqui e entrar você vai ser redirecionado pra conta PR conta que você tava mas agora se você voltar naquele mesmo local copiar a URL e colocar ela aqui a gente pode tentar alterar o site que a gente tava lub.
com para https 2 bar gooogle. com e olha o que que vai acontecer ao entrar aqui colocar o seos dados colocar sua senha aqui e entrar você vai ser redirecionado pro google. com e é alterando esses dados aqui que você consegue explorar a falha mas agora eu queria entrar em outro ponto existem várias formas que essa falha ela pode aparecer nesse caso eu demonstrei utilizando o parâmetro next mas o programador ele pode colocar o parâmetro que ele quiser se ele quisesse colocar por exemplo ao invés de Next colocar redirect redirect dois pontos o local que vai ser redirecionado ele poderia colocar se ele quisesse colocar somente r o local que vai ser redirecionado ele também poderia colocar então ele poderia colocar o que ele quiser nesse local o importante é você tentar identificar que é possível alterar o local que vai ser redirecionado um outro tipo de redirecionamento que também pode existir que você também pode identificar nos sites é que nesse caso esse direcionamento que acontece na American e que acontece na Lub ele nos manda para um site completo Como assim um site completo https sacola americanas.
com é um site completo mas muitas vezes o redirecionamento ele pode te mandar também para um local específico do site ele não vai ter a URL completa simplesmente o diretório do site porque se você colocar barra Vamos colocar barra teste no redirecionamento o redirecionamento também funciona mas ao invés de te mandar para URL ele te manda pro mesmo local do site calma aí tem que colocar o Barra next aí se eu vir aqui colocar os meus dados Alonso tdi. com a minha senha e entrar ele vai nos mandar pro lub. com barpes porque a gente colocou só o barra e não colocou a URL inteira então o open redirect Ele pode aparecer de várias maneiras Ele pode aparecer em uma variável chamada next uma variável chamada redirect de várias formas que ele pode aparecer e quando um hacker for explorar ele ele simplesmente pode alterar aqui para um site falso um site da nubank falsa e pegar os dados da pessoa agora que você já entendeu Como que funciona o open redirect que você pode ter vários parâmetros dele eu queria mostrar alguns exemplos reais de falhas que foram reportadas para empresas isso no caso de programas de bug bount que são programas abertos para hackers poderem reportar falhas porque eu gosto muito de explicar falhas de segurança a partir de casos reais mesmo de pessoas que reportaram falhas Inclusive eu vou te mostrar uma falha que eu reportei pra BMW a empresa de carros lá a empresa de de carros de luxo a BMW eu reportei uma falha de Open R Direct que acontecia no sistema deles eu vou te mostrar aqui na prática como que eu fiz isso foi uma falha um pouco específica que tinha algumas coisas a mais eu queria mostrar para vocês como que ela aconteceu mas primeiramente eu queria te mostrar um artigo muito interessante que ele reúne várias falhas de Open Direct top 25 Open Direct pug Bounty report ele reúne falhas que foram reportadas por pesquisadores para empresas aqui então ele até mostra um exemplo básico do que que é um Open Direct ele exemplificou aqui utilizando medium com URL enviando para um site malicioso para um site falso Inclusive a falha de OP redirect ela pode escalar para uma falha de xss que é uma falha maior que vocês vão ver mais paraa frente então essa falha é muito importante porque ela também pode ser usada para explorar outras falhas então muito interessante aqui uma coisa legal desse artigo é que ele mostra vários vários parâmetros podem ser usado para redirect então como eu disse o Next a gente tem o Next aqui o r era simplesmente o abreviação de redirect redirect return to continui pode ser usado todos os parâmetros na URL então sempre Fique atento quando você cai num site de log de um site ou de alguma área que precisa precisa te redirecionar para outro local se existe uma dessas um desses parâmetros nesse local e aqui ele mostrou algumas coisas sobre o código de redirecionamento év redirecionar utilizando código e também como testar redirect também tem um um documento interessante aqui do github El mostra mais sobre como testar Open formas que acontecem e coisas que você pode utilizar para meio que burlar os sistemas porque muitas vezes o site quando ele vai fazer a verica então por exemplo americ quando você o login o site ele verifica se tá te mandando para americanos ou não então para poder e corrigir essa fha de Open redirect o site ele verifica é americana se não for eu não vou te redirecionar ele te manda pro site normal se for Americanas ele te redireciona então ele só redireciona a pessoa pro mesmo domínio pros sites permitidos mas exem formas de burlar isso também por exemplo se você colocar no redirecionamento h TPS sem as barras google.
com Talvez ele direcione você Burle isso você Burle essa verificação se você colocar e esses dados criptografados você consiga burlar também então Existem várias formas aqui que talvez você pode usar para burlar esses dados codificado em base 64 isso você vai ver na falha que eu reportei pra BMW Então aqui tem tem mais algumas informações interessantes nesse antigo e o que eu queria mostrar para vocês são falhas que foram reportadas para empresas de Open Direct o open Direct ele é uma falha ele é uma falha simples ele é uma falha básica então se você for reportar ele em um pentest um relatório um op Direct você vai reportar o open rir uma falha simples talvez em uma empresa maior eles te paguem mais eles levem essa falha com mais crítica por exemplo imagina um ataque no Facebook em que um perfil envia vários links oficiais do Facebook de documentação de um blog de alguma coisa só que ele te mande para uma tala de login falsa isso mancharia a reputação do Facebook de qualquer empresa que algum hacker pudesse fazer isso e aqui ele mandou ele colocou algumas falhas de Open rir que aconteceram em algumas empresas Twitter uma falha de Open rir que foi escalada para uma falha um pouquinho maior xss Então essas falhas aqui que foi paga na Uber por exemplo aqui ó 000 essa falha aqui ela foi uma falha que conseguiu ser escalada para uma falha um pouquinho maior mas a gente tem falhas que foram simplesmente o redirecionamento eu tenho aqui uma falha que eu queria mostrar para vocês é uma falha que foi reportada na Nord um hacker encontrou na Nord que é a Nord VPN uma VPN bem famosa Nord Security então provavelmente você já deve ter conhecido ela Nord VPN essa VPN aqui e essa falha foi reportada para eles e quando o pesquisador ele reportou a falha ele foi pago 00 por essa falha por ele ter encontrado essa falha e essa falha acontecia ela não acontecia um parâmetro isso é uma coisa interessante os programadores eles redirecionam a pessoa de uma forma diferente não era por um parâmetro era pelo diretório Olha só olha que doideira Na verdade nem P diretório era eles colocavam uma hashtag que é a hash da URL então eu mostrei para vocês que a hash da URL Ela guarda dados também E aí tinha PF e várias barras aqui e depois o local que você ia ser redirecionado então provavelmente no sistema da Nord quando o cara viu essa falha provavelmente tinha assim redirecionado por exemplo pef e vpns o pagamentos tava dessa forma o redirecionamento então ele viu aqui que quando a pessoa clicava no link ele era redirecionado pro Barra pagamentos E aí ele tentou trocar isso para uma orl se eu colocasse não sei google. com E aí ele foi redirecionado inclusive Esse redirecionamento é um redirecionamento diretamente no link você clica no link e é redirecionado existem redirecionamentos que você precisa fazer login e depois você é redirecionado e alguns que você já é redirecionado direto você Clica no site você já sofre um redirecionamento então é essa falha aqui foi uma falha que um pesquisador reportou inclusive ele até mostrou o trecho do código tava errado Então olha que legal ele mostrou o trecho do código a parte do código que tinha falha de segurança e aparecia aqui nesse script se a gente for analisar o código aqui não entrando muito pra parte de análise de código Mas se a gente for dar uma olhada aqui olha só tinha um script que ele pegava essa parte aqui o #pf E aí ele redirecionavel Bank que eu mostrei para vocês eu posso até mostrar o código aqui é muito simples é simplesmente um código e que tem aqui ele pega o parâmetro next ele verifica se esse parâmetro existe se ele não existir ele te manda pro site Inicial se ele existir ele te manda pro site que foi redirecionado então é por trás dos panos dentro do código Isso é uma falha inclusive que pode est no código do site ou também no servidor pode tá acontecendo Então é uma falha que você pode encontrar que você pode reportar para empresas que você pode colocar em um relatório porque ela pode ser explorada por hackers agora que eu já te mostrei exemplos de falhas que foram reportadas na Nord e Dal luank até um código aqui malicioso eu queria te mostrar uma falha que eu reportei na BMW de Open redirect também e essa falha eu utilizei uma ferramenta simples eu não fiz ela somente pela URL eu utilizei o burp suit para poder analisar as requisições que estavam acontecendo Então eu vou tocar o vídeo aqui e eu vou comentar a junto com vocês para vocês poderem ver porque eu utilizei também algumas técnicas aqui para perceber o que que tava acontecendo na URL então eu tava no site bmw. de esse vídeo ele tem um minuto ele é bem simples é só o vídeo que eu enviei pra empresa para mostrar essa falha e aí o que que eu fiz eu fui no site de login eu fui fazer login na BMW Então eu fui lá fazer login e eu descobri que na BMW aqui na BMW você poderia passar um parâmetro aqui em cima chamado deixa eu pegar o parâmetro ó na hashtag Você poderia colocar state igual vamos lá deixa eu parar aqui e pegar o URL que foi mostrada então se eu copiar o URL aqui tirar um print Olha o que que eu tinha visto no site da da BMW aqui a gente tinha bmw.
de Topic m e tinha uma variável aqui chamada state ela te levava para um código muito maluco E aí eu comecei a analisar o que que é esse state o que que é esse código que o que que é essa variável aqui em cima e esse código muito maluco ele é um código criptografado codificado em uma coisa chamada base 64 e você pode ver muitos códigos assim meio estranho em alguns parâmetros algumas urls e saiba que esse código pode ser base 64 e o que que é base 64 base 64 é uma forma de codificar dados para poder passar eles pela URL pelos locais então é uma forma de de criptografia e dentro desse base 64 vou criptografar alguma coisa por exemplo Legião TDI quando você criptografa aqui tá para descriptografar Vou colocar aqui ó em code quando você criptografa algo em base 64 ele fica dessa forma olha só ele fica um monte de código Maluco e dois iguais no final então eu percebi que isso era base 64 E aí o que que eu fiz eu fui lá e decodifique esse código quando eu decodifique esse código eu vi que essa variável tava guardando esse dado aqui ela tava guardando Exatamente olha só tinha copiado do meu bloco de notas eu tentar pegar um print aqui no meu bloco de notas eu vi que ao descriptografar essa variável esse parâmetro ele tinha um objeto aqui dentro chamado target ur l e aqui tinha a URL que ia ser redirecionado no caso a URL da BMW então o que que os programadores fizeram para poder redirecionar alguém tinha um objeto que é um objeto chamado target URL ele mandava PR https 2 bmw. com e o site que ia redirecionar então carros redireciona para esse local eles pegavam esse objeto codificam ele em base 64 eles vinham aqui codificam esse objeto para ficar esse código maluco e aí no site para redirecionar eles colocavam bmw. de aqui o site login login # state igual a esse monte de coisa Então esse foi um redirecionamento que teve que prestar um pouquinho mais atenção porque não era uma url em si que você ia ser direcionado era simplesmente um um código maluco que eu tive que decodificar e após trocar esse código para google.
com dando Play aqui olha só vim aqui decodifique eu utilizei inclusive o Buff suite o Decoder para poder fazer isso troquei essa variável que tinha na URL da BMW E aí eu dei enter e depois de fazer login na minha conta fui lá fiz login eu fui redirecionar pro site do Google Então esse foi um exemplo de uma falha de de Open redirect aqui no site da BMW uma falha real que aconteceu eu cliquei em login e o que aconteceu google. com se um hacker quisesse trocar isso para BM não sei bmx.