* ¿Trabajas en una **empresa de ciberseguridad**? ¿Quieres ver tu **empresa anunciada en HackTricks**? ¿O quieres tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Descubre [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtén el [**swag oficial de PEASS y HackTricks**](https://peass.creator-spring.com)
* **Únete al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sígueme** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Comparte tus trucos de hacking enviando PRs al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
Ten en cuenta que los programas escritos en Objective-C **mantienen** sus declaraciones de clase **cuando** se **compilan** en [binarios Mach-O](macos-files-folders-and-binaries/universal-binaries-and-mach-o-format.md). Estas declaraciones de clase **incluyen** el nombre y tipo de:
Para crear una instancia de una clase se llama al método **`alloc`** que **asigna memoria** para cada **propiedad** y **pone a cero** esas asignaciones. Luego se llama a **`init`**, que **inicializa las propiedades** con los **valores requeridos**.
Los métodos de clase se definen con el **signo más** (+) y no con el guión (-) que se utiliza con los métodos de instancia. Por ejemplo, el método de clase **`stringWithString`** de la clase **NSString**:
Alternativamente a los métodos setter y getter, puedes usar variables de instancia. Estas variables tienen el mismo nombre que las propiedades, pero comienzan con un "\_":
Existen 2 tipos de métodos: **obligatorios** y **opcionales**. Por **defecto**, un método es **obligatorio** (pero también se puede indicar con la etiqueta **`@required`**). Para indicar que un método es opcional, utiliza **`@optional`**.
Cuando se trata de asegurar un sistema macOS, es importante abordar varios aspectos clave para fortalecer la seguridad y prevenir la escalada de privilegios. A continuación se presentan algunas medidas básicas que se pueden tomar:
#### 1. Actualizar el sistema operativo
Mantener el sistema operativo macOS actualizado es fundamental para protegerse contra vulnerabilidades conocidas. Asegúrese de instalar las actualizaciones de software y los parches de seguridad más recientes proporcionados por Apple.
#### 2. Configurar el firewall
El firewall integrado en macOS puede ayudar a bloquear el tráfico no deseado y proteger el sistema contra ataques externos. Asegúrese de habilitar el firewall y configurarlo para permitir solo las conexiones necesarias.
#### 3. Desactivar servicios no utilizados
Desactivar los servicios y protocolos no utilizados puede reducir la superficie de ataque y minimizar las posibilidades de explotación. Revise la lista de servicios habilitados y desactive aquellos que no sean necesarios para su caso de uso específico.
#### 4. Configurar cuentas de usuario
Crear cuentas de usuario separadas para diferentes usuarios y asignar los privilegios adecuados puede ayudar a limitar el acceso no autorizado y prevenir la escalada de privilegios. Evite utilizar una cuenta de administrador para tareas diarias y utilice cuentas de usuario estándar en su lugar.
#### 5. Utilizar contraseñas seguras
Las contraseñas fuertes son esenciales para proteger las cuentas de usuario. Asegúrese de utilizar contraseñas únicas y complejas que sean difíciles de adivinar. Considere el uso de un administrador de contraseñas para generar y almacenar contraseñas seguras.
#### 6. Habilitar FileVault
FileVault es una función de cifrado de disco completo integrada en macOS que puede ayudar a proteger los datos almacenados en su disco duro. Asegúrese de habilitar FileVault para cifrar su disco y proteger sus datos confidenciales.
#### 7. Configurar Gatekeeper
Gatekeeper es una función de seguridad de macOS que ayuda a prevenir la ejecución de software malicioso. Asegúrese de configurar Gatekeeper para permitir solo la ejecución de aplicaciones descargadas de fuentes confiables.
#### 8. Utilizar Time Machine
Time Machine es una función de copia de seguridad integrada en macOS que puede ayudar a proteger sus datos en caso de pérdida o corrupción. Asegúrese de configurar y utilizar Time Machine para realizar copias de seguridad regulares de sus archivos importantes.
#### 9. Limitar los permisos de las aplicaciones
Revise y ajuste los permisos de las aplicaciones instaladas en su sistema macOS. Asegúrese de otorgar solo los permisos necesarios y revocar los permisos innecesarios para minimizar el riesgo de abuso de las aplicaciones.
#### 10. Estar atento a las amenazas
Manténgase informado sobre las últimas amenazas de seguridad y las técnicas de ataque utilizadas por los hackers. Esté atento a las actualizaciones de seguridad y siga las mejores prácticas recomendadas para proteger su sistema macOS.
Los bloques son **funciones que se comportan como objetos**, por lo que pueden ser pasados a funciones o **almacenados** en **arrays** o **dictionaries**. Además, pueden **representar un valor si se les dan valores**, por lo que es similar a las lambdas.
También es posible administrar archivos **utilizando objetos `NSURL` en lugar de objetos `NSString`**. Los nombres de los métodos son similares, pero **con `URL` en lugar de `Path`**.
La mayoría de las clases básicas tienen un método `writeToFile:<path> atomically:<YES> encoding:<encoding> error:nil` definido que les permite ser escritas directamente en un archivo:
* ¿Trabajas en una **empresa de ciberseguridad**? ¿Quieres ver tu **empresa anunciada en HackTricks**? ¿O quieres tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Descubre [**La Familia PEASS**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtén el [**swag oficial de PEASS y HackTricks**](https://peass.creator-spring.com)
* **Únete al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de Telegram**](https://t.me/peass) o **sígueme** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Comparte tus trucos de hacking enviando PRs al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).