Reino: Encapsulation

La encapsulación consiste en crear límites fuertes. En un explorador web esto puede suponer la seguridad de que tu codificación móvil no se vea comprometido por otro código móvil. En el servidor puede significar la diferenciación entre los datos validados y los que no lo están, entre los datos de un usuario y los de otro, o entre los diferentes usuarios, los datos que pueden ver y los que no.

Insecure IPC: URL Scheme Hijacking

Abstract
La aplicación usa esquemas de URL personalizados para la comunicación entre procedimientos (IPC), que está sujeta al "secuestro de esquemas de URL".
Explanation
Las aplicaciones pueden registrar esquemas de URL personalizados para que las aplicaciones de terceros se comuniquen con ellos. Si bien este es un canal de IPC simple, puede exponer a su aplicación al "secuestro de esquemas de URL". Debido a que cualquier aplicación puede registrar un esquema de URL con la condición de que no esté reservado por Apple, una aplicación malintencionada puede registrar el mismo esquema utilizado por su aplicación, lo que provoca un comportamiento indefinido. De acuerdo con la documentación de Apple: "Si más de una aplicación de terceros se registra para controlar el mismo esquema de URL, actualmente no hay ningún proceso para determinar qué aplicación recibirá ese esquema". Si la aplicación malintencionada se instala antes que su aplicación, podrá registrar el esquema y evitar que su aplicación se instale correctamente. Por otro lado, si la aplicación malintencionada se instala después de su aplicación y logra registrar el esquema, podrá secuestrar su aplicación.
References
[1] David Thiel iOS Application Security: The Definitive Guide for Hackers and Developers No Starch Press
[2] Standards Mapping - Common Weakness Enumeration CWE ID 939
[3] Standards Mapping - Common Weakness Enumeration Top 25 2020 [25] CWE ID 862
[4] Standards Mapping - Common Weakness Enumeration Top 25 2021 [18] CWE ID 862
[5] Standards Mapping - Common Weakness Enumeration Top 25 2022 [16] CWE ID 862
[6] Standards Mapping - Common Weakness Enumeration Top 25 2023 [11] CWE ID 862
[7] Standards Mapping - Common Weakness Enumeration Top 25 2024 [9] CWE ID 862
[8] Standards Mapping - General Data Protection Regulation (GDPR) Indirect Access to Sensitive Data
[9] Standards Mapping - OWASP Application Security Verification Standard 4.0 4.1.3 General Access Control Design (L1 L2 L3), 4.1.5 General Access Control Design (L1 L2 L3), 4.2.1 Operation Level Access Control (L1 L2 L3), 13.1.4 Generic Web Service Security Verification Requirements (L2 L3)
[10] Standards Mapping - OWASP Mobile Application Security Verification Standard 2.0 MASVS-PLATFORM-1
[11] Standards Mapping - OWASP Top 10 2021 A04 Insecure Design
desc.structural.objc.insecure_ipc_url_scheme_hijacking
Abstract
La aplicación usa esquemas de URL personalizados para la comunicación entre procedimientos (IPC), que está sujeta al "secuestro de esquemas de URL".
Explanation
Las aplicaciones pueden registrar esquemas de URL personalizados para que las aplicaciones de terceros se comuniquen con ellos. Si bien este es un canal de IPC simple, puede exponer a su aplicación al "secuestro de esquemas de URL". Debido a que cualquier aplicación puede registrar un esquema de URL con la condición de que no esté reservado por Apple, una aplicación malintencionada puede registrar el mismo esquema utilizado por su aplicación, lo que provoca un comportamiento indefinido. De acuerdo con la documentación de Apple: "Si más de una aplicación de terceros se registra para controlar el mismo esquema de URL, actualmente no hay ningún proceso para determinar qué aplicación recibirá ese esquema". Si la aplicación malintencionada se instala antes que su aplicación, podrá registrar el esquema y evitar que su aplicación se instale correctamente. Por otro lado, si la aplicación malintencionada se instala después de su aplicación y logra registrar el esquema, podrá secuestrar su aplicación.
References
[1] David Thiel iOS Application Security: The Definitive Guide for Hackers and Developers No Starch Press
[2] Standards Mapping - Common Weakness Enumeration CWE ID 939
[3] Standards Mapping - Common Weakness Enumeration Top 25 2020 [25] CWE ID 862
[4] Standards Mapping - Common Weakness Enumeration Top 25 2021 [18] CWE ID 862
[5] Standards Mapping - Common Weakness Enumeration Top 25 2022 [16] CWE ID 862
[6] Standards Mapping - Common Weakness Enumeration Top 25 2023 [11] CWE ID 862
[7] Standards Mapping - Common Weakness Enumeration Top 25 2024 [9] CWE ID 862
[8] Standards Mapping - General Data Protection Regulation (GDPR) Indirect Access to Sensitive Data
[9] Standards Mapping - OWASP Application Security Verification Standard 4.0 4.1.3 General Access Control Design (L1 L2 L3), 4.1.5 General Access Control Design (L1 L2 L3), 4.2.1 Operation Level Access Control (L1 L2 L3), 13.1.4 Generic Web Service Security Verification Requirements (L2 L3)
[10] Standards Mapping - OWASP Mobile Application Security Verification Standard 2.0 MASVS-PLATFORM-1
[11] Standards Mapping - OWASP Top 10 2021 A04 Insecure Design
desc.structural.swift.insecure_ipc_url_scheme_hijacking