Reino: Security Features
La seguridad de un software no es un software de seguridad. Nos preocupamos de cuestiones como la autenticación, el control de acceso, la confidencialidad, la criptografía y la gestión de privilegios.
Authentication Bad Practice: Missing Check against Protection Space
Abstract
El delegado
NSURLConnection
trata los desafíos de autenticación sin antes verificar que la aplicación sabe cómo manejar el desafío de autenticación para un espacio de protección en concreto.Explanation
Un objeto
Al establecer una conexión URL que requiera autenticación en un espacio de protección, el método
NSURLProtectionSpace
representa un servidor o un área de un servidor, denominado comúnmente dominio, que requiere autenticación.Al establecer una conexión URL que requiera autenticación en un espacio de protección, el método
NSURLConnectionDelegate.connection(_:canAuthenticateAgainstProtectionSpace:)
se llamará justo antes de llamar al método NSURLConnectionDelegate.connection(_:didReceive:)
que debe realizar la autenticación. Esto permite que NSURLConnectionDelegate
inspeccione el espacio de información antes de intentar la autenticación. Al devolver true
, el delegado indica que puede manejar el formulario de autenticación, lo que hace en la llamada subsiguiente a connection(_:didReceive:)
. Si su delegado no implementa este método y el espacio de protección utiliza la autenticación del certificado de cliente o la autenticación de confianza del servidor, el sistema intentará utilizar las llaves del usuario para realizar la autenticación, lo cual puede no ser el comportamiento deseado.References
[1] connection(_:canAuthenticateAgainstProtectionSpace:) API documentation Apple
[2] URLProtectionSpace API documentation Apple
[3] Standards Mapping - General Data Protection Regulation (GDPR) Access Violation
[4] Standards Mapping - OWASP API 2023 API2 Broken Authentication
[5] Standards Mapping - OWASP Mobile 2024 M3 Insecure Authentication/Authorization
[6] Standards Mapping - OWASP Mobile Application Security Verification Standard 2.0 MASVS-AUTH-1
desc.structural.objc.authentication_bad_practice_missing_check_against_protection_space
Abstract
El delegado
NSURLConnection
trata los desafíos de autenticación sin antes verificar que la aplicación sabe cómo manejar el desafío de autenticación para un espacio de protección en concreto.Explanation
Un objeto
Al establecer una conexión URL que requiera autenticación en un espacio de protección, el método
NSURLProtectionSpace
representa un servidor o un área de un servidor, denominado comúnmente dominio, que requiere autenticación.Al establecer una conexión URL que requiera autenticación en un espacio de protección, el método
NSURLConnectionDelegate.connection(_:canAuthenticateAgainstProtectionSpace:)
se llamará justo antes de llamar al método NSURLConnectionDelegate.connection(_:didReceive:)
que debe realizar la autenticación. Esto permite que NSURLConnectionDelegate
inspeccione el espacio de información antes de intentar la autenticación. Al devolver true
, el delegado indica que puede manejar el formulario de autenticación, lo que hace en la llamada subsiguiente a connection(_:didReceive:)
. Si su delegado no implementa este método y el espacio de protección utiliza la autenticación del certificado de cliente o la autenticación de confianza del servidor, el sistema intentará utilizar las llaves del usuario para realizar la autenticación, lo cual puede no ser el comportamiento deseado.References
[1] connection(_:canAuthenticateAgainstProtectionSpace:) API documentation Apple
[2] URLProtectionSpace API documentation Apple
[3] Standards Mapping - General Data Protection Regulation (GDPR) Access Violation
[4] Standards Mapping - OWASP API 2023 API2 Broken Authentication
[5] Standards Mapping - OWASP Mobile 2024 M3 Insecure Authentication/Authorization
[6] Standards Mapping - OWASP Mobile Application Security Verification Standard 2.0 MASVS-AUTH-1
desc.structural.swift.authentication_bad_practice_missing_check_against_protection_space