Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
PwnCity — Environnement TeamCity CI volontairement vulnérable pour une formation pratique au test d'intrusion : reconnaissance, vol d'identifiants, élévation de privilèges et mouvement latéral. | Kitploit
Outils/GitHubGitHub/d0n601/pwncity
Escalade de PrivilègesExploitationMouvement LatéralCollecte d'InformationsTests d'IntrusionApprentissage et ÉducationLabs et Pratique
GitHubd0n601/pwncity

PwnCity

Environnement TeamCity CI volontairement vulnérable pour une formation pratique au test d'intrusion : reconnaissance, vol d'identifiants, élévation de privilèges et mouvement latéral.

Voir le dépôt
il y a 4 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

PwnCity

Un environnement d'intégration continue TeamCity configuré de manière non sécurisée.
Travail en cours : Le code de déploiement arrive bientôt éventuellement .
rafal-urbanski-shot-08

Démo

Il peut y avoir plus d'un chemin à travers PwnCity, mais c'est celui que je présenterai le 24 février lors de la réunion du OWASP Sacramento Chapter.
Remarque : La sécurité opérationnelle est en grande partie ignorée ici car il s'agit d'une démo.

Accès initial

  1. Scannez l'IP pour découvrir SSH et TeamCity nmap -Pn -p- 52.234.0.18.
    • Remarque : Il ne répondra pas à ICMP, donc nmap 52.234.0.18 le fait paraître mort.
    • Remarque : Si vous ne scannez que les 1000 premiers ports TCP, vous ratez TeamCity nmap -Pn 52.234.0.18. portscan
  2. Naviguez vers l'URL TeamCity http://52.234.0.18:8111. teamcitylogin
  3. Naviguez vers http://52.234.0.18:8111/registerUser.html pour créer un nouvel utilisateur bob, mot de passe bobhacks?.
    bobregister
  4. En tant que bob, naviguez vers Projects > SimpleMavenSample > Build > Settings.
  • Voyez que Parameters contient des identifiants. leakcreds
  1. Vérifiez si les identifiants sont réutilisés pour ssh [email protected], et connectez-vous en SSH en tant qu'utilisateur à faibles privilèges. sshin

Depuis le point d'appui

Nous pourrions créer un tunnel depuis notre point d'appui initial. Savoir que RDP est ouvert sur deux agents de build nous permettrait de tenter de nous authentifier avec les identifiants que nous avons trouvés... mais ce n'est pas aussi amusant.

  1. Explorez un peu le serveur TeamCity et récupérez le jeton de super utilisateur cat /home/dev/TeamCity/TeamCity/logs/teamcity-server.log | grep "Super user".
    sutoken
  2. Connectez-vous maintenant en tant que Super User ! superlogin
  3. Créez un nouveau projet PwnAgent via Administration > Projects > Create project, et obtenez un shell sur les agents de build. createproject buildsteps
  4. Modifiez l'étape de build pour qu'elle s'exécute Toujours, même si la commande d'arrêt du build a été émise, et modifiez ce qui suit :
    • Exécutable de commande : cmd.exe
    • Paramètres de commande : /c %system.teamcity.build.checkoutDir%/launcher.bat
    • Une fois que vous voyez comment cela fonctionne, vous comprenez comment l'exécution de code fonctionne ici, et vous pouvez la modifier pour faire ce que vous voulez. build_step

Infrastructure d'attaque

  • Kali Linux : VM sur la machine de l'opérateur.
  • Ubuntu 20.04LTS : Empire Server

Laboratoire PwnCity

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

Identifiants

Identifiants choisis dans rockyou.txt.

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

À faire

  1. Déployer avec Terraform.
  2. Installer des choses avec Ansible.
  3. Variable CLI pour augmenter ou diminuer les défenses (un peu comme un niveau de difficulté).
  4. À définir

Défenses

Sécurité des points de terminaison

PwnAgent01 a Microsoft Defender activé. Bien qu'il soit certainement encore possible de le contourner, l'étape de build malveillante que nous avons démontrée sera bloquée.
blocked0

blocked

bruno_edr

Notes d'administration

Cette section est simplement une collection d'extraits utiles à l'administration de l'environnement de laboratoire.

RDP vers les hôtes Windows

  1. Depuis Kali, faites une redirection de port dynamique sur l'hôte TeamCity pour accéder aux ressources locales ssh -D 9050 [email protected].
  2. RDP via Proxychains avec proxychains4 xfreerdp /u:dev /v:10.0.0.6:3389.

Références

  1. Guide de durcissement TeamCity
  2. TeamCity SuperUser
  3. Pentest TeamCity
  4. PwnCity Build Agent
Télécharger l’outil
  • Alternativement, vous pouvez éviter d'utiliser des fichiers dans le dépôt, en laissant cela vide. Tout le code peut être placé dans une étape de build.
    alternative
  • Sélectionnez le ... à côté de Run dans le menu, puis sur l'agent souhaité que vous ciblez. Si tout se passe bien, vous aurez un rappel de l'agent.
    run agentcallback
  • Exécutez un scan des ports via le module powershell/situational_awareness/network/portscan. Découvrez que 10.0.0.7 a 3389,445,139,135 tous ouverts. portscan
  • Exécutez Mimikatz pour extraire les identifiants de connexion et obtenez le mot de passe de bruno.
  • Exécutez powershell/lateral_movement/invoke_smbexec pour obtenir un beacon sur Bruno-PC via le hash NTML. smbexec
  • Pillez le PC de Bruno.