Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
PwnCity — Entorno TeamCity CI inseguro para el entrenamiento práctico en pruebas de penetración: reconocimiento, robo de credenciales, escalada de privilegios y movimiento lateral. | Kitploit
Herramientas/GitHubGitHub/d0n601/pwncity
Escalada de PrivilegiosExplotaciónMovimiento LateralRecopilación de InformaciónPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubd0n601/pwncity

PwnCity

Entorno TeamCity CI inseguro para el entrenamiento práctico en pruebas de penetración: reconocimiento, robo de credenciales, escalada de privilegios y movimiento lateral.

Ver Repositorio
hace 4 añosAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

PwnCity

Un entorno de integración continua TeamCity configurado de forma insegura.
Trabajo en curso: El código de despliegue llegará pronto eventualmente . rafal-urbanski-shot-08

Demostración

Puede haber más de una ruta a través de PwnCity, pero esta es la que presentaré el 24 de febrero en la reunión del capítulo de OWASP Sacramento.
Nota: Aquí se ignora en gran medida la seguridad operativa, ya que esto es una demo.

Acceso inicial

  1. Escanea la IP para descubrir SSH y TeamCity nmap -Pn -p- 52.234.0.18.
    • Nota: No responderá a ICMP, por lo que nmap 52.234.0.18 hace que parezca muerto.
    • Nota: Si solo escaneas los primeros 1000 puertos TCP, te pierdes TeamCity nmap -Pn 52.234.0.18. portscan
  2. Accede a la URL de TeamCity http://52.234.0.18:8111. teamcitylogin
  3. Ve a http://52.234.0.18:8111/registerUser.html, crea un nuevo usuario bob, contraseña bobhacks?.
    bobregister
  4. Como bob, navega a Projects > SimpleMavenSample > Build > Settings
  • Observa que Parameters contiene credenciales. leakcreds
  1. Comprueba si las credenciales se reutilizan para ssh [email protected] y conéctate por SSH como usuario de bajos privilegios. sshin

Desde el punto de apoyo

Podríamos tunelizar desde nuestro punto de apoyo inicial. Saber que RDP está abierto en dos agentes de compilación nos permitiría intentar autenticarnos con las credenciales que hemos encontrado... pero eso no es tan divertido.

  1. Explora un poco el servidor de TeamCity y revisa el token de superusuario cat /home/dev/TeamCity/TeamCity/logs/teamcity-server.log | grep "Super user".
    sutoken
  2. ¡Ahora inicia sesión como Superusuario! superlogin
  3. Crea un nuevo proyecto PwnAgent mediante Administration > Projects > Create project y obtén una shell en los agentes de compilación. createproject buildsteps
  4. Edita el paso de compilación para que se ejecute Siempre, incluso si se emitió el comando de detención de la compilación, y modifica lo siguiente:
    • Ejecutable de comando: cmd.exe
    • Parámetros de comando: /c %system.teamcity.build.checkoutDir%/launcher.bat
    • Una vez que veas cómo funcionan, entenderás cómo funciona la ejecución de código aquí y podrás modificarlo para hacer lo que quieras. build_step
    • Alternativamente, puedes evitar usar archivos del repositorio, dejándolo en blanco. Todo el código puede meterse en un paso de compilación.

Infraestructura de ataque

  • Kali Linux: VM en la máquina del operador.
  • Ubuntu 20.04LTS: Servidor Empire

Laboratorio PwnCity

  • Ubuntu 20.04 TeamCity
  • Windows 10: BuildAgent01
  • Windows 7: BuildAgent02
  • Windows 10: Bruno-PC

Credenciales

Credenciales elegidas de rockyou.txt.

  • bruno:AMOTEbruno84 (Windows)
  • dev:Roblerino1995 (Windows/Linux)
  • admin:aut0magic (TeamCity)

Tareas pendientes

  1. Desplegar con Terraform.
  2. Instalar cosas con Ansible.
  3. Variable CLI para subir o bajar las defensas (algo así como un nivel de dificultad)
  4. TBD

Defensas

Seguridad de endpoints

PwnAgent01 tiene Microsoft Defender habilitado. Aunque ciertamente todavía es posible derrotarlo, el paso de compilación malicioso que demostramos será bloqueado.
blocked0

blocked

bruno_edr

Notas administrativas

Esta sección es solo una colección de fragmentos que fueron útiles al administrar el entorno de laboratorio.

RDP hacia los hosts Windows

  1. Desde Kali, reenvío de puerto dinámico en el host TeamCity para acceder a los recursos locales ssh -D 9050 [email protected].
  2. RDP mediante Proxychains con proxychains4 xfreerdp /u:dev /v:10.0.0.6:3389.

Referencias

  1. TeamCity Hardening Guide
  2. TeamCity SuperUser
  3. Pentest TeamCity
  4. PwnCity Build Agent
Descargar herramienta
alternative
  • Selecciona los ... junto a Run en el menú y luego el agente deseado al que te diriges. Si todo va bien, tendrás una devolución de llamada del agente. run agentcallback
  • Ejecuta un escaneo de puertos con el módulo powershell/situational_awareness/network/portscan. Descubre que 10.0.0.7 tiene 3389,445,139,135 todos abiertos. portscan
  • Ejecuta Mimikatz para volcar las credenciales de inicio de sesión y obtener la contraseña de bruno.
  • Ejecuta powershell/lateral_movement/invoke_smbexec para obtener una beacon en Bruno-PC mediante el hash NTML. smbexec
  • Saquea el PC de Bruno.