🛡️
Hacking para Juniors - [CPPJ]
Comprar cursoYouTubeTwitterLinkedIn
  • La Biblia del Hacker
    • ADVERTENCIA
    • Aprende GRATIS con El Curso De Junior a Senior en Hacking
    • Conoce tu Academia
    • Aprende con nuestro curso
    • Conoce a tu instructor
  • Fundamentos de la ciberseguridad ofensiva
    • ¿Que es el Ethical Hacking?
      • Tipos de Hackers
        • APTs (Advanced Persistent Threats)
    • ¿Que es el pentesting?
      • Tipos de Caja en Pentesting
      • Tipos de tecnologia
      • Etapas de un pentest
        • Escalacion de privilegios
    • ¿Qué es un CVE?
    • ¿Que es un escaneo de vulnerabilidades?
    • ¿Que es un Red Team?
      • Command and Control
    • ¿Que es la ingenieria social?
      • Kevin Mitnick
      • Libros Recomendados
    • El papel de los Juniors y la IA
  • OSINT for Juniors
    • Open-source intelligence (OSINT)
    • Tipos de fuentes OSINT
    • Herramientas para OSINT
    • Dorks de Google
  • OS for Juniors
    • Introduccion a Sistemas Operativos
    • Archivo y extensiones
    • Windows
      • Estructura del SO
        • Kernel De Windows
        • Servicios Importantes
        • Procesos en Windows
        • Registros en Windows
        • Gestion de archivos en Windows
      • Versiones relevantes
      • La importancia de identificar la version de windows durante una auditoria
      • Tips
    • Linux
      • Tips
    • Android
      • Versiones relevantes
      • Tips
    • IOS
      • Versiones Relevantes
      • Tips
    • macOS
      • Versiones Relevantes
      • Tips
    • Sistemas operativos para Hackers
    • Instalacion de Kali Linux
  • Networking for Juniors
    • ¿Que es el Networking?
    • Fundamentos de Redes
    • Estructura de Redes
    • Topologías de Red
    • Modelo OSI (Open Systems Interconnection)
    • Modelo TCP/IP
    • IP (Internet Protocol)
    • TCP (Transmission Control Protocol)
    • UDP (User Datagram Protocol)
    • Protocolos de red
      • Protocolos de la capa de acceso al medio
      • Protocolos de la capa de red
      • Protocolos de la capa de transporte
      • Protocolos de la capa de aplicación
      • Protocolos de aplicación en correo electrónico
    • Puertos y servicios
      • Puerto 21: FTP
      • Puerto 22: SSH
      • Puerto 23: Telnet
      • Puerto 25: - SMTP
      • Puerto 53: DNS
      • Puerto 80: HTTP
      • Puerto 443: HTTPS
      • Puerto 139 y 445: SMB - CIFS
      • Puerto 3389: RDP
      • Puerto 389: LDAP
      • Puerto 5000: Docker
      • Puerto 5900: VNC
  • Nmap for Juniors
    • ¿Que es Nmap?
    • Tu Primer Nmap
    • Parametros de Nmap
    • Comandos utiles
    • Scripts de Nmap
  • Wi-Fi y Radiofrecuencias
    • Fundamentos de Wireless
    • Fundamentos del Hacking de Wi-Fi
    • Fundamentos en Radiofrecuencias
    • RFID (Radio Frequency Identification)
    • Infrarrojo (IR)
    • Bluetooth
    • NFC (Near Field Communication)
    • Herramientas de un hacker
    • Fundamentos en Hardware Hacking
  • AppWeb For Juniors
    • ¿Porque deberia aprender hacking web?
    • Fundamentos de Aplicaciones Web
      • Códigos de estado HTTP
    • Fundamentos de APIs
      • Métodos HTTP
      • Practica Gratis
    • Cabeceras de seguridad
    • Analisis de certificados SSL
    • Mecanismos de autenticacion y autorizacion en AppWeb
    • Atacando CMS
    • La Seguridad en el Desarrollo de Aplicativos: Frameworks vs. Desarrollo Manual
    • OWASP Top Ten
  • Databases for Juniors
    • ¿Base de Datos?
      • SQL
      • NoSQL
    • Puerto 6379: Redis
    • Puerto 27017: MongoDB
    • Puerto 5432: PostgreSQL
    • Puerto 3306: MySQL
    • Puerto 1433: Microsoft SQL Server
    • Puerto 1521: - Oracle Database
  • Transferencia de Archivos
    • Introduccion a la Transferencia de archivos
    • Descargando desde Windows
      • Utilizando LOLBAS
    • Descargando desde Linux
    • Despliegue de servicio HTTP
    • Despliegue de servicio SMB
    • Despligue de servicio FTP
    • Utilizando Base64
  • Fundamentos en Vulnerabilidades
    • ¿Qué es una Vulnerabilidad?
    • ¿Qué es un 0day?
    • Common Vulnerabilities and Exposures - [CVE]
    • RCE (Remote Code Execution)
    • Buffer Overflow
  • Malware For Junior
    • ¿Que es Malware?
    • ¿Que es un AntiVirus?
      • Microsoft Defender
    • ¿Que es un EDR?
      • Mejores EDRs actuales
    • Desarrollo de Malware
    • Malware for Windows
      • Golang
      • Nim
      • C#
    • Ofuscacion de Malware
  • Shell
    • ¿Shell?
      • CMD (Command Prompt) en Windows
      • PowerShell en Windows
      • Bash en Unix/Linux
    • ¿Reverse Shell?
    • ¿Web Shell?
    • ¿Bind Shell?
    • Enumeracion de Windows
    • Enumeracion de Linux
  • Privilege Escalation for Juniors
    • ¿Que es la escalacion de privilegios?
    • PrivEsc For Windows
      • WinPEAS
    • PrivEsc For Linux
      • LinPEAS
    • PrivEsc For Active Directory
    • PrivEsc For Cloud Computing
  • Tecnicas de persistencia
    • Fundamentos de Persistencia
    • Persistencia en Windows
    • Persistencia en Linux
    • Persistencia Avanzada
  • Pivoting for Juniors
    • ¿Que es pivoting?
    • ¿Que es Socks?
    • Doble Pivoting y Triple Pivoting
    • RPivot y Chisel
  • Active Directory For Juniors
    • Fundamentos de Active Directory
    • Utilizando ADPeas para el reconocimiento
  • Cloud Computing For Juniors
    • Fundamentos de cloud computing
    • Amazon Web Services
    • Microsoft Azure
    • Google Cloud Platform
  • Introduccion a Blue Team
    • ¿Blue Team?
    • ¿SOC?
    • ¿Threat Hunting?
    • SIEM (Security Information and Event Management)
    • La fatiga del SOC
    • ¿SOAR?
  • Defensas y herramientas de seguridad perimetral
    • Soluciones de Seguridad Perimetral Esenciales
    • Firewall
    • IDS (Intrusion Detection System)
    • IPS (Intrusion Prevention System)
    • WAF (Web Application Firewall)
    • Firewalls de Próxima Generación (NGFW)
    • Gateways de Seguridad Web (SWG)
    • Gateways de Seguridad de Correo Electrónico (SEG)
    • Sistemas de Prevención de Fugas de Datos (DLP)
    • Network Access Control (NAC)
  • Muchas gracias
    • 🛡️ ¡Muchísimas Gracias por Participar! 🛡️
    • Importante
Con tecnología de GitBook
En esta página
  • Estructura y Características de iOS
  • Estructura
  • Características Principales
  • Importancia de Uso en el Mercado
  • Funcionamiento de los Permisos
  • Tipos de Permisos
  • Solicitud y Gestión de Permisos
  • Importancia en el Pentesting
  • Conclusión

¿Te fue útil?

  1. OS for Juniors

IOS

iOS es el sistema operativo desarrollado por Apple para sus dispositivos móviles, como el iPhone, iPad y iPod Touch. Con un enfoque en la seguridad, el rendimiento y la integración con el hardware, iOS se ha convertido en uno de los sistemas operativos más populares y seguros del mundo.

ideviceinfo -k ProductVersion

Estructura y Características de iOS

Estructura

La arquitectura de iOS está diseñada para optimizar el rendimiento y la seguridad, y se compone de varias capas:

  1. Capa del Núcleo (Core OS Layer): La base del sistema operativo, que incluye el kernel de Darwin (basado en Unix) y los controladores de hardware. Proporciona servicios fundamentales como la gestión de la memoria, la red y la comunicación entre procesos.

  2. Capa de Servicios del Sistema (Core Services Layer): Ofrece servicios esenciales que son utilizados por las aplicaciones, como la gestión de bases de datos (Core Data), servicios de localización (Core Location) y soporte para gráficos 2D (Core Graphics).

  3. Capa de Medios (Media Layer): Proporciona servicios para trabajar con gráficos, audio y vídeo. Incluye frameworks como AVFoundation para manejar medios audiovisuales y Core Animation para animaciones avanzadas.

  4. Capa de la Interfaz de Usuario (Cocoa Touch Layer): Incluye los frameworks que las aplicaciones utilizan para construir la interfaz de usuario, como UIKit. Esta capa ofrece controles, vistas y elementos para crear aplicaciones interactivas y atractivas.

Características Principales

  • Interfaz de Usuario Intuitiva: Diseñada para ser fácil de usar con una navegación fluida y una apariencia consistente.

  • Seguridad: Incluye múltiples capas de seguridad, como el cifrado de datos, el sandboxing de aplicaciones y actualizaciones de seguridad regulares.

  • Integración de Hardware y Software: Optimización perfecta entre el hardware de Apple y el software de iOS para un rendimiento y eficiencia energética excepcionales.

  • App Store: Una plataforma robusta para la distribución de aplicaciones, con un riguroso proceso de revisión para asegurar la calidad y seguridad de las aplicaciones.

Importancia de Uso en el Mercado

iOS es uno de los sistemas operativos móviles más utilizados y tiene una gran importancia en el mercado por varias razones:

  • Segmento Premium: Domina el segmento de dispositivos móviles de alta gama con su línea de iPhones y iPads.

  • Ecosistema Integrado: Ofrece una integración sin igual con otros productos de Apple, como Mac, Apple Watch y Apple TV.

  • Preferencia de los Desarrolladores: Muchos desarrolladores prefieren iOS por su plataforma estable y la disposición de los usuarios a pagar por aplicaciones de calidad.

  • Actualizaciones Consistentes: Apple proporciona actualizaciones regulares y a largo plazo para sus dispositivos, manteniéndolos seguros y con el software más reciente.

Archivos y Rutas Importantes

En iOS, hay varios archivos y rutas que son cruciales tanto para el funcionamiento del sistema como para el desarrollo y la seguridad de aplicaciones:

  • /System: Contiene los archivos del sistema operativo, incluidos los binarios y las librerías esenciales. Es de solo lectura para las aplicaciones.

  • /Applications: Aquí se encuentran las aplicaciones instaladas. Cada aplicación tiene su propio contenedor que incluye su código binario y recursos.

  • /var/mobile: Contiene datos de usuario y aplicaciones. Subdirectorios importantes incluyen:

    • /var/mobile/Library: Configuraciones y datos de usuario.

    • /var/mobile/Containers: Datos y documentos de aplicaciones.

  • Info.plist: Archivo de configuración que define propiedades importantes de una aplicación, como su nombre, identificador de paquete y configuraciones de permisos.

  • Entitlements.plist: Define los derechos y permisos específicos que la aplicación necesita, como el acceso a iCloud o servicios de notificación push.

Funcionamiento de los Permisos

Los permisos en iOS son una parte fundamental de la seguridad del sistema operativo. Permiten a las aplicaciones acceder a recursos y datos protegidos, y están diseñados para proteger la privacidad y la seguridad del usuario.

Tipos de Permisos

  1. Permisos de Entorno de Ejecución: Solicitudes que las aplicaciones deben declarar en su archivo Info.plist y que el sistema operativo revisa y otorga al instalar o ejecutar la aplicación.

  2. Permisos Solicitados en Tiempo de Ejecución: A partir de iOS 8, ciertas operaciones sensibles requieren la autorización del usuario en tiempo de ejecución, como el acceso a la cámara, micrófono y ubicación.

Solicitud y Gestión de Permisos

  • Info.plist: Las aplicaciones deben declarar los permisos necesarios en este archivo con claves específicas, como NSCameraUsageDescription para el acceso a la cámara.

  • Solicitud en Tiempo de Ejecución: Para permisos sensibles, las aplicaciones deben solicitar el permiso al usuario utilizando métodos del framework UIKit, como requestWhenInUseAuthorization() para la ubicación.

  • Revisión de Permisos: Los usuarios pueden revisar y gestionar los permisos otorgados a cada aplicación desde la configuración del dispositivo.

Importancia en el Pentesting

En el pentesting, entender cómo funcionan los permisos es crucial para evaluar la seguridad de las aplicaciones. Los pentesters deben verificar:

  • Declaraciones de Permisos: Asegurarse de que las aplicaciones solo soliciten los permisos necesarios.

  • Uso de Permisos: Verificar cómo las aplicaciones utilizan los permisos y si manejan correctamente la solicitud y revocación de los mismos.

  • Exposición de Datos: Evaluar si las aplicaciones exponen datos sensibles a través de permisos mal gestionados.

Conclusión

iOS es un sistema operativo móvil sofisticado y seguro, diseñado para ofrecer una experiencia de usuario superior y una integración perfecta con el hardware de Apple. Su arquitectura, características y enfoque en la seguridad lo hacen altamente valorado tanto por usuarios como por desarrolladores. Para los pentesters, comprender en profundidad su estructura, características y manejo de permisos es esencial para realizar evaluaciones de seguridad efectivas y asegurar que las aplicaciones sean seguras y protegidas contra amenazas potenciales.

AnteriorTipsSiguienteVersiones Relevantes

Última actualización hace 12 meses

¿Te fue útil?

Page cover image