# Vazamentos de SS
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 * Você trabalha em uma **empresa de segurança cibernética**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family) * Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com) * **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
Este é um **mix** entre **marcação pendente e XS-Leaks**. De um lado, a vulnerabilidade permite **injetar HTML** (mas não JS) em uma página da **mesma origem** daquela que estaremos atacando. Por outro lado, não **atacaremos** diretamente a página onde podemos injetar HTML, mas **outra página**. ## Objetos Aninhados Se o endpoint `/api/v1/leaky?secret=a` retornar um código de status 404, então o `object` interno é carregado, dando um retorno de chamada para `https://evil.com?callback=a` e nos informando que a consulta de pesquisa `a` não produziu resultados. ```html ``` ### Carregamento Preguiçoso E se o CSP bloquear objetos externos? Vamos tentar novamente com o seguinte CSP: `Content-Security-Policy: default-src 'self'; img-src *;` Nosso callback `object` de cima não funciona mais. Em seu lugar, podemos usar o [carregamento preguiçoso](https://developer.mozilla.org/pt-BR/docs/Web/Performance/Lazy_loading) de imagens! A seguinte imagem só será carregada quando estiver visível e dentro de uma certa distância da viewport. ```html ``` ### Imagens Responsivas A técnica acima é ótima, mas depende da nossa injeção de HTML estar dentro da área visível do usuário. Se a injeção estiver fora da tela e o usuário não rolar, ainda podemos vazar dados? Claro, podemos usar IDs de elementos e [scroll-to-text-fragment](https://chromestatus.com/feature/4733392803332096) para criar uma URL que force uma rolagem, mas isso depende da interação do usuário e não nos permite obter vazamentos consistentes em um cenário do mundo real. Idealmente, queremos utilizar a injeção de HTML armazenada de forma confiável. Aqui entram as imagens responsivas! Especificamente, os atributos `srcset` e `sizes` das imagens. {% code overflow="wrap" %} ```html