# Ejemplos de Pool de Conexiones
Aprende hacking en AWS desde cero hasta experto conhtARTE (HackTricks AWS Red Team Expert)!
Otras formas de apoyar a HackTricks:
* Si deseas ver tu **empresa anunciada en HackTricks** o **descargar HackTricks en PDF** Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Obtén el [**oficial PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Descubre [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Únete al** 💬 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **síguenos** en **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Comparte tus trucos de hacking enviando PRs a los** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositorios de github.
## Sekaictf2022 - safelist
En el desafío [**Sekaictf2022 - safelist**](https://github.com/project-sekai-ctf/sekaictf-2022/tree/main/web/safelist/solution), [**@Strellic\_**](https://twitter.com/Strellic\_) da un ejemplo de cómo usar una **variación** de la técnica de **Pool de Conexiones** para realizar una **XS-Leak**.
En este desafío, el objetivo es extraer una bandera que aparecerá en la sesión web de los bots dentro de un post. Estos son los activos que tiene el atacante:
* El **bot** visitará una **URL** proporcionada por el atacante.
* El atacante puede **inyectar HTML** en la página (pero no JS, se utiliza dompurify) abusando de un **CSRF** para hacer que el **bot cree un post** con ese HTML.
* El atacante puede abusar de un CSRF para hacer que el **bot** **elimine** el **primer post** dentro de la web.
* Debido a que los **posts** están ordenados **alfabéticamente**, cuando se **elimina el primer post**, si el contenido **HTML** del atacante es **cargado**, significa que estaba **alfabéticamente antes de la bandera**.
Por lo tanto, para robar la bandera, la solución propuesta por @Strellyc\_ es, **para cada carácter a probar**, hacer que el bot:
* Cree un **nuevo post** que **comience** con la parte conocida de la **bandera** y varios **cargas de img**.
* **Elimine** el **post** en la posición **0**.
* Bloquee 255 sockets.
* Cargue la página con los posts.
* Realice 5 solicitudes aleatorias a un sitio (ejemplo.com en este caso) y mida el tiempo que esto lleva a cabo.
{% hint style="warning" %}
Si el **post eliminado** fue la **bandera**, esto significa que todas las **imágenes** **inyectadas** en el HTML van a estar **compitiendo** con las **5 solicitudes aleatorias** por ese **socket desbloqueado**. Lo que significa que el tiempo medido será mayor que en el otro escenario.
Si el **post eliminado** fue el **HTML**, las **5 solicitudes aleatorias** serán **más rápidas** porque no necesitan competir por ese socket con el HTML inyectado.
{% endhint %}
### Exploit 1
Este es el código de explotación, tomado 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
```
### Exploit 2
Misma táctica pero 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 - zanahoria
En este caso, el primer paso del exploit fue abusar de un CSRF para modificar la página donde se encuentra la bandera para que tenga **mucho más contenido** (y por lo tanto, tarde más en cargarse), y luego **abusar del grupo de conexiones para medir el tiempo que tarda en acceder a la página** que potencialmente podría tener la bandera.
En el exploit se puede ver:
* Abuso de CSRF
* Ocupar todos los sockets menos uno
* Calibrar la respuesta
* Comenzar la fuerza bruta accediendo a la página potencial con la bandera
* La página potencial será accedida e inmediatamente se accederá a una URL controlada por el atacante para verificar cuánto tiempo tardan ambas solicitudes.
```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)
```
Aprende hacking en AWS desde cero hasta experto conhtARTE (HackTricks AWS Red Team Expert)!
Otras formas de apoyar a HackTricks:
* Si quieres ver tu **empresa anunciada en HackTricks** o **descargar HackTricks en PDF** Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Obtén el [**swag oficial de PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubre [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Únete al** 💬 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **síguenos** en **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Comparte tus trucos de hacking enviando PRs a los** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositorios de github.