Está en la página 1de 28

SEMANA 06

Aplicaciones Móviles
Maestría en Seguridad Informática

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


1. Plataforma Android y IOS

2. Equipos móviles existentes por


plataforma y sus vectores de ataque

Agenda
3. Mobile Top 10 OWASP

4. Buenas Prácticas

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
Sistemas Operativos

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
ANDROID: Arquitectura

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
ANDROID: Source Open Project

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
ANDROID: Application development Framework

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
ANDROID: Android Media Framework

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
IOS: Arquitectura

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
IOS: Desarrollo de Aplicaciones de Cross Plataform

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
IOS: .NET Desarrollo Multiplataforma

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles

VECTORES DE ATAQUE

• Ingeniería Social: Acceso Físico • Se pueden implementar rootkits en móviles


• Phishing: suplantación de Identidad Android y Jailbreak en el caso de Iphone
• Malware: Ransomware | Spyware • Bajo estos ambientes no existen
• Correo Electrónico controles formales
• Almacenamiento: vulnerabilidades, memorias externas. • Conexiones USB
• GPS • Sincronización de datos con otro dispositivo
• NFC y ordenador.
• WIFI • Ejecuciones automáticas.
• Bluetooth • De Fábrica.
• Bluejacking: spam a la víctima • Códigos QR
• Bluesnarfing: robo de información • Falta de formación de los usuarios.
• Bluebugging: control remoto del dispositivo.
• Ataques a sistemas de Pago
• Videojuegos: robo de bienes virtuales
• Acceso a instalar aplicaciones por medio de Tiendas
Virtuales y Accesos Directos.

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles
MOBILE TOP 10 OWASP

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles

• Esta categoría cubre el uso • La valoración y por ende el vector de • Esta categoría cubre los

INSEGUROS
ALMACENAMIENTO DE DATOS
USO INADECUADO DE LA PLATAFORMA

COMUNICACIÓN INSEGURA
ataque varía mucho. Desde aplicaciones
indebido de características de de terceros que utilizan caché, cookies y protocolos inseguros de
la plataforma o el no uso de otra información para recopilar datos enlace, versiones SSL
los controles de seguridad, protegidos, hasta que un adversario incorrectas, negociación
pueda obtener físicamente el dispositivo
permisos de plataforma, uso y ver información, debe manejar el débil, la comunicación sin
indebido de TouchID, almacenamiento de datos correctamente cifrar de datos sensibles, etc.
servicios de contraseñas de varias maneras. Esto incluye la Por lo que hay que
autenticación, el cifrado y el manejo
(KeyChain IOS) o algún otro adecuado de todas las funciones de comprobar que los
control de seguridad que sea almacenamiento en caché. desarrolladores (a menudo
parte del sistema operativo • Esta categoría cubre los protocolos muy preocupados en cuanto
inseguros de enlace, versiones SSL
móvil. Lo que se valora en el incorrectas, negociación débil, la
a la protección del
ataque es la seguridad de comunicación sin cifrar de datos procedimiento de
cualquier API expuesta. sensibles, etc. Por lo que hay que autenticación y los datos en
comprobar que los desarrolladores (a
menudo muy preocupados en cuanto a la
reposo) hayan implementado
protección del procedimiento de un cifrado de lo datos que se
autenticación y los datos en reposo) transmiten correctamente.
hayan implementado un cifrado de lo
datos que se transmiten correctamente.

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles

• Esta categoría captura las • El uso incorrecto del cifrado • Esta es una categoría para
AUTENTICACIÓN INSEGURA

AUTORIZACIÓN INSEGURA
CRIPTOGRAFÍA INSUFICIENTE
nociones de autenticación es extremadamente común capturar cualquier fallo en la
del usuario final o gestión de en las aplicaciones móviles. autorización (por ejemplo,
sesión incorrecta. Esto puede Los algoritmos de cifradas decisiones de autorización en
incluir: débiles, así como el el lado del cliente,
• No identificar al usuario en procedimiento de cifrado / navegación forzada, etc.). Es
descifrado defectuoso, distinto de los problemas de
absoluto cuando sea
necesario pueden ser fácilmente autenticación (por ejemplo,
explotados y por ende lo que inscripción de dispositivos,
• No mantener la identidad del
se valorara son los problemas identificación de usuarios,
usuario cuando se requiere etc.).
• Debilidades en el manejo de donde se intentó la
criptografía, pero no se hizo
sesiones
correctamente.

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Aplicaciones Móviles

• Esta categoría se • Esta categoría cubre • Esta categoría incluye • Esta


refiere a la captura de parches binarios, el análisis del núcleo vulnerabilidad
todos los problemas modificación de binario final para
de implementación a recursos locales, determinar su código surge cuando

INGENIERIA INVERSA

FUNCIONALIDAD EXTRAÑA
nivel de código en el incorrecta utilización fuente, bibliotecas, los

ALTERACIÓN DEL CÓDIGO


cliente móvil. Esto es de métodos y algoritmos y otros desarrolladores
CALIDAD DEL CÓDIGO EN EL LADO DEL

distinto de los errores modificación de activos. Esto puede no eliminan


de codificación del memoria dinámica. utilizarse para
servidor. Entrarían Por ende, esta explotar otras
funciones
dentro de ella, cosas categoría cubre vulnerabilidades adicionales,
como cualquier nacientes en la creadas durante
desbordamientos de modificación que el aplicación, así como el proceso de
búfer, adversario pueda para revelar desarrollo para
vulnerabilidades de realizar en el código información sobre los
cadena de formato y de la aplicación. servidores backend, facilitar la
varios otros errores las claves prueba de la
de nivel de código criptográficas y la aplicación y que
donde la solución es propiedad intelectual. pueden ser
reescribir algún Por lo que hay que explotadas para
código que se esté valorar que el propio
ejecutando en el código se encuentre realizar ataques
contra la
CLIENTE

dispositivo móvil. Es correctamente


decir, se centra en las ofuscado ya que es la aplicación.
vulnerabilidades mejor manera de
creadas debido a paliar con la
errores de ingeniería inversa.
codificación.

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Android - Implement intents
carefully
Intents are used for inter-component signaling. Improper

Uso implementation could result in data leakage, restricted


functions being called and program flow being manipulated.
Inadecuado https://books.nowsecure.com/secure-mobile-developme
De La nt/en/
android/implement-intents-carefully.html
Plataforma –
Mejores iOS - Use the keychain carefully
Prácticas iOS provides the keychain for secure data storage. However,
in several scenarios, the keychain can be compromised and
subsequently decrypted.

https://books.nowsecure.com/secure-mobile-development/
en/ios/
use-the-keychain-carefully.html
Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala
Implement secure data storage
Transmit and display but do not persist to memory.
Ensure that an analog leak does not present itself
where screenshots of the data are written to disk. Store
only in RAM (clear at application close).

https://books.nowsecure.com/se
Almacenamiento cure-mobile-development/en/se
nsitive-data/
De Datos Inseguros
implement-secure-data-storage.
– Mejores Prácticas html

Securely store data in RAM


Do not keep sensitive data (e.g., encryption keys) in RAM
longer than required. Nullify any variables that hold keys
after use.

https://books.nowsecure.com/secure-mobile-development
/en/ios/use-the-keychain-carefully.html
Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala
Implement secure transmission of
sensitive data
Comunicación Best practices call for app providers to use SSL/TLS
effectively to secure the transmission of passwords, login

Insegura– IDs, and other sensitive data over the network, and even
go further and leverage app-layer encryption to protect

Mejores user data.

https://books.nowsecure.com/secure-mobile-developm
Prácticas ent/en/sensitive-data/

implement-secure-network-transmission-of-sensitive-
data.html

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Hide account numbers and
use tokens
Given the widespread use of mobile apps in public
places, displaying partial numbers (e.g. *9881) can
help ensure maximum privacy for this information.

Autenticación Unless there is a need to store the complete


number on the device, store the partially hidden
numbers.
Insegura –
https://books.nowsecure.com/secure-mobile-develo
Mejores pment/en/sensitive-data/hide-account-numbers-
and-use-tokens.html
Prácticas

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Implement secure data storage
If storing sensitive data on the device is a requirement,
add an additional layer of verified, third-party
encryption. By adding another layer of encryption, you
have more control over the implementation and

Criptografía mitigate attacks focused on the main OS encryption


classes.
Insuficiente – https://books.nowsecure.com/secure-mobile-developme

Mejores nt/en/sensitive-data/implement-secure-data-storage.ht
ml

Prácticas

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Implement proper web
server configuration
Certain settings on a web server can increase security.
One commonly overlooked vulnerability on a web server
is information disclosure. Information disclosure can lead
to serious problems because every piece of information
Autorización attackers can gain from a server makes staging an attack
easier.

Insegura – https://
books.nowsecure.com/secure-mobile-development/en/serv
Mejores ers/
web-server-configuration.html

Prácticas

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Test third-party libraries
Third-party libraries can contain vulnerabilities and
weaknesses. Many developers assume third-party

Calidad Del libraries are well-developed and tested, however,


issues can and do exist in their code.

Código En El https://books.nowsecure.com/secure-mobile-d
evelopment/en/coding-practices/
Lado Del test-third-party-libraries.html

Cliente –
Mejores
Prácticas

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Implement anti-tampering techniques
Employ anti-tamper and tamper-detection techniques to prevent
illegitimate applications from executing. Use checksums, digital
signatures, and other validation mechanisms to help detect file
tampering.

https://books.nowsecure.com/secure-mobile-development/en
/coding-practices/anti-tamper-techniques.html
Alteración Del
Example: PokemonGO
Código – Buenas
● 50M downloads in
19 days on
Android alone

Mejores ● Within 3 days of


initial release,

Prácticas malicious DroidJack


software found on
third-party app stores

● Remote Access Tool


(RAT) can open a
silent, backdoor for
hackers

Source: NowSecure Blog

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Increase code complexity and use
obfuscation
Reverse engineering apps can provide valuable insight into how your
app works. Making your app more complex internally makes it more
difficult for attackers to see how the app operates, which can reduce
the number of attack vectors.

Ingeniería https://books.nowsecure.com/secure-mobile-development/en/codin
g-practices
/ code-complexity-and-obfuscation.html
Inversa – Buenas
Mejores ● Hackers
mobile app
decompiled
and

Prácticas
recompiled it so they didn’t
have to pay for premium
content

● If it is possible, hackers will


find a way

Source: Forbes

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


Carefully manage debug logs
Debug logs are generally designed to be used to detect and correct flaws in an
application. These logs can leak sensitive information that may help an
attacker create a more powerful attack.

https://books.nowsecure.com/secure-mobile-development/en/caching-log
ging/

Funcionalidad carefully-manage-debug-logs.html

Extraña– Example: MediaTek


Buenas
● Manufacturer of hardware

Mejores chips and processors for


mobile devices

Prácticas ● A debug tool, left open for


carriers to test network
connections, was left open
on shipped devices

Source: The Hacker News

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala


PRÁCTICA No. 04

Realice una evaluación de seguridad para una aplicación


Móvil (IOS o Android) que identifique los vectores de
ataque que presenta.

Maestría en Seguridad Informática – Universidad Mariano Gálvez de Guatemala

También podría gustarte