Skip to content

Práctica de desarrollo seguro en iOS. Patrón de diseño MVVM, realizado en swiftUI. Protección contra un ataque MITM utilizando SSLPinning y claves públicas, ofuscacion de claves además de encriptación AES - 24Bits. También encriptación de URLs, uso del CriptoKit. FaceID para autenticación.

Notifications You must be signed in to change notification settings

agavgar/Practica_Seguridad_AGGA

Repository files navigation

Práctica para el módulo Seguridad de Keepcoding.

Práctica de desarrollo seguro en iOS. Patrón de diseño MVVM, realizado en swiftUI. Protección contra un ataque MITM utilizando SSLPinning y claves públicas, ofuscacion de claves además de encriptación AES - 24Bits. También encriptación de URLs, uso del CriptoKit. FaceID para autenticación.

Resultado: WIP

IMG_9763-2 IMG_9764-2 IMG_9765-2 IMG_9766-2 IMG_9768-2

Breve descripción

La realización de la práctica ha empezado por desarrollo en cascada inversa. Inicio en el Backend y finalizando en las vistas. En esta ocasión API de Pokemon, más sencillo que Marvel cuyo unica dificultad reside en la implementación de una variable que decide cuantos pokemons e items vas a querer en la aplicación. Luego se ha realizado la encriptacion de los Endpoints (url de la API) por medio de CryptoKit y usando la función AES realizadno los padding necesarios para convertir en cadena de bits y encriptarlo por rondas de manera simétrica. Protección contra MITM a base de SSLPinning de clave pública con su encriptación. También uso de metodo de ofuscación para porteger la public key del servidor. Añadido método de autenticación con FaceID.

Guía de instalación

Simplemente debemos descargarnos el prouyecto en ZIP o en HTTP y clonar el repositorio. Luego ejecutar el archivo del proyecto de xCode y con pulsar al play tendremos la aplicación funcionando. Solo usuarios con MAC y xCode instalado. Pruebas de ataques de MITM con ZAP Proxy.

Experiencia

Ha sido un módulo interesantísimo, la práctica creo que ha quedado segura y ha sido muy divertida de hacer. Hemos dado mucha teoría sobre las categrorías de seguridad en las aplicaciones. Ha sido muy divertiedo y muy instructivo como un ataque puede dejar expuesto tus datos, el de tus usuarios, todas las claves y las autenticaciones. Te das cuenta que hackear una aplicación móvil es muy sencillo de hacer y existen muchas herramientas para ello. Ha sido muy divertido diseñar un metodo de ofuscación, tener que conseguir encriptar toda la información que pueda ser sensible y proteger a las variables ya que existen ataques a Strings que devuelven todas la información importante.

About

Práctica de desarrollo seguro en iOS. Patrón de diseño MVVM, realizado en swiftUI. Protección contra un ataque MITM utilizando SSLPinning y claves públicas, ofuscacion de claves además de encriptación AES - 24Bits. También encriptación de URLs, uso del CriptoKit. FaceID para autenticación.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages