# Exemplos de Pool de Conexão
Aprenda hacking AWS do zero ao herói comhtARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* 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)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe suas dicas de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
## Sekaictf2022 - safelist
No desafio [**Sekaictf2022 - safelist**](https://github.com/project-sekai-ctf/sekaictf-2022/tree/main/web/safelist/solution), [**@Strellic\_**](https://twitter.com/Strellic\_) dá um exemplo de como usar uma **variação** da técnica de **Pool de Conexão** para realizar um **XS-Leak**.
Neste desafio, o objetivo é exfiltrar uma bandeira que aparecerá na sessão web dos bots dentro de um post. Estes são os ativos que o atacante possui:
* O **bot** irá **visitar** uma **URL** fornecida pelo atacante
* O atacante pode **injetar HTML** na página (mas sem JS, dompurify é usado) abusando de um **CSRF** fazendo o **bot criar um post** com esse HTML.
* O atacante pode abusar de um CSRF para fazer o **bot** **excluir** o **primeiro post** dentro da web.
* Como os **posts** são ordenados **alfabeticamente**, quando o **primeiro post é excluído**, se o conteúdo **HTML** do atacante for **carregado** significa que estava **alfabeticamente antes da bandeira**.
Portanto, para roubar a bandeira, a solução proposta por @Strellyc\_ é, **para cada caractere a testar**, fazer o bot:
* Criar um **novo post** que **começa** com a parte conhecida da **bandeira** e vários **carregamentos de img**.
* **Excluir** o **post** na posição **0**.
* Bloquear 255 sockets.
* Carregar a página com os posts
* Realizar 5 solicitações aleatórias a um site (example.com neste caso) e medir o tempo que isso leva.
{% hint style="warning" %}
Se o **post excluído** foi a **bandeira**, isso significa que todas as **imagens** **injetadas** no HTML vão **competir** com as **5 solicitações aleatórias** por esse **socket desbloqueado**. O que significa que o tempo medido será maior do que no outro cenário.
Se o **post excluído** foi o **HTML**, as **5 solicitações aleatórias** serão **mais rápidas** porque não precisam competir por esse socket com o HTML injetado.
{% endhint %}
### Explorar 1
Este é o código de exploração, retirado de [https://github.com/project-sekai-ctf/sekaictf-2022/blob/main/web/safelist/solution/solve.html](https://github.com/project-sekai-ctf/sekaictf-2022/blob/main/web/safelist/solution/solve.html):
```html
```
### Exploração 2
Mesma tática, mas código diferente de [https://blog.huli.tw/2022/10/05/en/sekaictf2022-safelist-xsleak/](https://blog.huli.tw/2022/10/05/en/sekaictf2022-safelist-xsleak/)
```html
```
## DiceCTF 2022 - cenoura
Neste caso, o primeiro passo do exploit foi abusar de um CSRF para modificar a página onde a flag está contida para que tenha **muito mais conteúdo** (e, portanto, leve mais tempo para carregar), e então **abusar do pool de conexões para medir o tempo que leva para acessar a página** que potencialmente poderia ter a flag.
No exploit, você pode ver:
* Abusar do CSRF
* Ocupar todos os sockets exceto 1
* Calibrar a resposta
* Iniciar a força bruta acessando a página potencial com a flag
* A página potencial será acessada e imediatamente uma URL controlada pelos atacantes também será acessada para verificar quanto tempo ambas as solicitações levam.
```html
DiceCTF 2022 web/carrot
Step 1: CSRF the admin user, to set a super long title for the flag note (LAX + POST form only possible for 2 minutes after cookies is created)
```
Aprenda hacking AWS do zero ao herói comhtARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* 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)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.