1 :Broken access control

Control de acceso roto

El control de acceso ,que los usuarios no pueden actuar fuera de sus permisos previstos. Los fallos suelen dar lugar a accesos no autorizados. divulgación de información, modificación o destrucción de todos los datos o realizar una función comercial fuera de los límites del usuario.

Acceso común Las vulnerabilidades de control incluyen:

  • Violación del principio de privilegio mínimo o denegación por defecto, donde el acceso sólo debe otorgarse para capacidades particulares, roles o usuarios, pero está disponible para cualquiera.

  • Eludir las comprobaciones de control de acceso modificando la URL (parámetro manipulación o navegación forzada), el estado interno de la aplicación o el página HTML o mediante el uso de una herramienta de ataque que modifique las solicitudes de API.

  • Permitir ver o editar la cuenta de otra persona, proporcionando su identificador único (referencias directas a objetos inseguros)

  • Accediendo a API a la que le faltan controles de acceso para POST, PUT y DELETE.

  • Elevación de privilegios. Actuar como usuario sin haber iniciado sesión o actuando como administrador cuando inicia sesión como usuario.

  • Manipulación de metadatos, como reproducir o alterar un JSON Token de control de acceso Web Token (JWT), o una cookie o un campo oculto manipulado para elevar privilegios o abusar de la invalidación de JWT.

  • La configuración incorrecta de CORS permite el acceso a API desde personas no autorizadas/no confiables orígenes.

  • Forzar la navegación a páginas autenticadas como usuario no autenticado o a páginas privilegiadas como usuario estándar.

Ejemplos de escenarios de ataque

Escenario #1: La aplicación utiliza datos no verificados en una llamada SQL que está accediendo a la información de la cuenta:

 pstmt.setString(1, request.getParameter("acct"));
 ResultSet results = pstmt.executeQuery( );

Un atacante simplemente modifica la "cuenta" del navegador. parámetro a enviar cualquier número de cuenta que quieran. Si no se verifica correctamente, el El atacante puede acceder a la cuenta de cualquier usuario.

 https://example.com/app/accountInfo?acct=notmyacct

Escenario n.º 2: Un atacante simplemente fuerza la navegación a las URL de destino. Administración Se requieren derechos para acceder a la página de administración.

Si un usuario no autenticado puede acceder a cualquiera de las páginas, se trata de un defecto. si un los no administradores pueden acceder a la página de administración, esto es un defecto.

Lista de Mapeados CWEs

CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')arrow-up-right

CWE-23 Relative Path Traversalarrow-up-right

CWE-35 Path Traversal: '.../...//'arrow-up-right

CWE-59 Improper Link Resolution Before File Access ('Link Following')arrow-up-right

CWE-200 Exposure of Sensitive Information to an Unauthorized Actorarrow-up-right

CWE-201 Exposure of Sensitive Information Through Sent Dataarrow-up-right

CWE-219 Storage of File with Sensitive Data Under Web Rootarrow-up-right

CWE-264 Permissions, Privileges, and Access Controls (should no longer be used)arrow-up-right

CWE-275 Permission Issuesarrow-up-right

CWE-276 Incorrect Default Permissionsarrow-up-right

CWE-284 Improper Access Controlarrow-up-right

CWE-285 Improper Authorizationarrow-up-right

CWE-352 Cross-Site Request Forgery (CSRF)arrow-up-right

CWE-359 Exposure of Private Personal Information to an Unauthorized Actorarrow-up-right

CWE-377 Insecure Temporary Filearrow-up-right

CWE-402 Transmission of Private Resources into a New Sphere ('Resource Leak')arrow-up-right

CWE-425 Direct Request ('Forced Browsing')arrow-up-right

CWE-441 Unintended Proxy or Intermediary ('Confused Deputy')arrow-up-right

CWE-497 Exposure of Sensitive System Information to an Unauthorized Control Spherearrow-up-right

CWE-538 Insertion of Sensitive Information into Externally-Accessible File or Directoryarrow-up-right

CWE-540 Inclusion of Sensitive Information in Source Codearrow-up-right

CWE-548 Exposure of Information Through Directory Listingarrow-up-right

CWE-552 Files or Directories Accessible to External Partiesarrow-up-right

CWE-566 Authorization Bypass Through User-Controlled SQL Primary Keyarrow-up-right

CWE-601 URL Redirection to Untrusted Site ('Open Redirect')arrow-up-right

CWE-639 Authorization Bypass Through User-Controlled Keyarrow-up-right

CWE-651 Exposure of WSDL File Containing Sensitive Informationarrow-up-right

CWE-668 Exposure of Resource to Wrong Spherearrow-up-right

CWE-706 Use of Incorrectly-Resolved Name or Referencearrow-up-right

CWE-862 Missing Authorizationarrow-up-right

CWE-863 Incorrect Authorizationarrow-up-right

CWE-913 Improper Control of Dynamically-Managed Code Resourcesarrow-up-right

CWE-922 Insecure Storage of Sensitive Informationarrow-up-right

CWE-1275 Sensitive Cookie with Improper SameSite Attributearrow-up-right

Recursos

Recursos

OWASP Top 10: Broken Access Controlarrow-up-right

Packet Labs: Broken Access Controlarrow-up-right

Última actualización