Exploiting NoSQL operator injection to bypass authentication writeup

Descripción

The login functionality for this lab is powered by a MongoDB NoSQL database. It is vulnerable to NoSQL injection using MongoDB operators.

To solve the lab, log into the application as the administrator user.

You can log in to your own account using the following credentials: wiener:peter.

Exploiting NoSQL operator injection to bypass authentication writeup

Al entrar encontraremos una tienda online:

Iremos al apartado de ‘My account’ e ingresaremos el usuario ‘wiener’ y la contraseña ‘peter’. La petición la enviaremos al ‘Repeater’ con Ctrl + R o click derecho -> Send to repeater:

Cambiaremos el JSON del final por el siguiente código:

{"username":{"$regex":"admin.*"},"password":{"$ne":""}}

Lo que hace este JSON es lo siguiente:

La aplicación ahora devolverá el usuario que cumpla con estos 2 requisitos:

  1. Que su nombre de usuario empiece por «admin».
  2. Que tenga contraseña.

Tras enviar la petición, iremos a la parte de la derecha (la respuesta), daremos Click derecho -> Show response in browser. Nos habrá copiado la URL en el portapapeles. Ahora al pegarla en el navegador resolveremos el laboratorio:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *