
Prova de Conceito sobre um XSS Armazenado no SCM Manager 1.2 <= 1.60
Uma vulnerabilidade foi descoberta na versão 1.2 <= 1.60 do SCM Manager que permite que atacantes previamente autenticados com permissões de escrita executem código javascript em campos específicos.
Esta Prova de Conceito foi feita em um ambiente local implantando um SCM Manager 1.60 usando docker.
1 - Git clone the repository
2 - Make sure that you are into the repository
3 - pip3 install -r requirements.txt
4 - python3 CVE-2023-33829.py -h
Copie e cole este script bash em um arquivo script.sh, dê permissões de execução e execute o arquivo:
#!/bin/bash
mkdir /var/lib/scm
chown 1000:1000 /var/lib/scm
docker run -v /var/lib/scm:/var/lib/scm -p 8080:8080 sdorra/scm-manager
O script foi criado por sdorra, aqui está o link oficial: https://bitbucket.org/sdorra/docker-scm-manager/src/master/
NOTA: Você precisa ter o docker instalado previamente.
Uma vez instalado o SCM Manager 1.60, ele solicitará um nome de usuário e uma senha:
Nome de usuário : scmadmin Senha: scmadmin
Prova de Conceito:

2- Crie um novo repositório com qualquer tipo, mas no campo Descrição está o vulnerável, então vamos injetar o payload e ele será acionado:

3- Crie um novo usuário e o campo vulnerável específico é Nome de Exibição, então injete o payload introduzido anteriormente:

4- Crie um novo grupo e o campo vulnerável específico é Descrição, então injete nosso payload:

PAYLOAD USADO:
Novas versões do SCM Manager estão corrigidas.