mirror of
https://github.com/carlospolop/hacktricks
synced 2025-01-10 12:18:52 +00:00
68 lines
4.9 KiB
Markdown
68 lines
4.9 KiB
Markdown
# Volcado de Memoria en macOS
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprende hacking en AWS de cero a héroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Otras formas de apoyar a HackTricks:
|
|
|
|
* Si quieres ver tu **empresa anunciada en HackTricks** o **descargar HackTricks en PDF**, consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
|
|
* Consigue el [**merchandising oficial de PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubre [**La Familia PEASS**](https://opensea.io/collection/the-peass-family), nuestra colección de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Únete al** 💬 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sigue** a **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Comparte tus trucos de hacking enviando PRs a los repositorios de github de** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
## Artefactos de Memoria
|
|
|
|
### Archivos de Intercambio
|
|
|
|
* **`/private/var/vm/swapfile0`**: Este archivo se utiliza como **caché cuando la memoria física se llena**. Los datos en la memoria física se trasladan al archivo de intercambio y luego se vuelven a colocar en la memoria física si se necesitan de nuevo. Puede haber más de un archivo aquí. Por ejemplo, podrías ver swapfile0, swapfile1, y así sucesivamente.
|
|
* **`/private/var/vm/sleepimage`**: Cuando OS X entra en **hibernación**, **los datos almacenados en la memoria se colocan en el archivo sleepimage**. Cuando el usuario regresa y despierta la computadora, la memoria se restaura desde el sleepimage y el usuario puede continuar donde lo dejó.
|
|
|
|
Por defecto en los sistemas modernos de MacOS este archivo estará cifrado, por lo que podría no ser recuperable.
|
|
|
|
* Sin embargo, el cifrado de este archivo podría estar desactivado. Comprueba la salida de `sysctl vm.swapusage`.
|
|
|
|
### Volcando la memoria con osxpmem
|
|
|
|
Para volcar la memoria en una máquina MacOS puedes usar [**osxpmem**](https://github.com/google/rekall/releases/download/v1.5.1/osxpmem-2.1.post4.zip).
|
|
|
|
**Nota**: Las siguientes instrucciones solo funcionarán para Macs con arquitectura Intel. Esta herramienta ahora está archivada y la última versión fue en 2017. El binario descargado usando las instrucciones a continuación está dirigido a chips Intel ya que Apple Silicon no existía en 2017. Podría ser posible compilar el binario para la arquitectura arm64 pero tendrás que intentarlo por ti mismo.
|
|
```bash
|
|
#Dump raw format
|
|
sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
|
|
|
|
#Dump aff4 format
|
|
sudo osxpmem.app/osxpmem -o /tmp/dump_mem.aff4
|
|
```
|
|
Si encuentras este error: `osxpmem.app/MacPmem.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8)` Puedes solucionarlo haciendo:
|
|
```bash
|
|
sudo cp -r osxpmem.app/MacPmem.kext "/tmp/"
|
|
sudo kextutil "/tmp/MacPmem.kext"
|
|
#Allow the kext in "Security & Privacy --> General"
|
|
sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
|
|
```
|
|
**Otros errores** podrían solucionarse **permitiendo la carga del kext** en "Seguridad y Privacidad --> General", simplemente **permítelo**.
|
|
|
|
También puedes usar este **oneliner** para descargar la aplicación, cargar el kext y volcar la memoria:
|
|
|
|
{% code overflow="wrap" %}
|
|
```bash
|
|
sudo su
|
|
cd /tmp; wget https://github.com/google/rekall/releases/download/v1.5.1/osxpmem-2.1.post4.zip; unzip osxpmem-2.1.post4.zip; chown -R root:wheel osxpmem.app/MacPmem.kext; kextload osxpmem.app/MacPmem.kext; osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
|
|
```
|
|
<details>
|
|
|
|
<summary><strong>Aprende hacking en AWS de cero a héroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Otras formas de apoyar a HackTricks:
|
|
|
|
* Si quieres ver a tu **empresa anunciada en HackTricks** o **descargar HackTricks en PDF** consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
|
|
* Consigue el [**merchandising oficial de PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubre [**La Familia PEASS**](https://opensea.io/collection/the-peass-family), nuestra colección de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Únete al** 💬 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sígueme** en **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Comparte tus trucos de hacking enviando PRs a los repositorios de github** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|