https://github.com/pithase/asm-payloads-loaders
Desarrollo paso a paso de cargadores de payloads, escritos exclusivamente en lenguaje Ensamblador x86-64 para Linux, sin dependencias externas y utilizando solo syscalls. | Step-by-step development of payload loaders, written exclusively in x86-64 Assembly for Linux, with no external dependencies and using only syscalls.
https://github.com/pithase/asm-payloads-loaders
assembly binary-exploitation exploit-development linux loader-development low-level offensive-security payload-development red-teaming shellcode-development syscall x86-64
Last synced: 2 months ago
JSON representation
Desarrollo paso a paso de cargadores de payloads, escritos exclusivamente en lenguaje Ensamblador x86-64 para Linux, sin dependencias externas y utilizando solo syscalls. | Step-by-step development of payload loaders, written exclusively in x86-64 Assembly for Linux, with no external dependencies and using only syscalls.
- Host: GitHub
- URL: https://github.com/pithase/asm-payloads-loaders
- Owner: Pithase
- License: other
- Created: 2025-02-09T19:34:45.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-04-07T13:20:41.000Z (3 months ago)
- Last Synced: 2025-04-07T14:28:32.091Z (3 months ago)
- Topics: assembly, binary-exploitation, exploit-development, linux, loader-development, low-level, offensive-security, payload-development, red-teaming, shellcode-development, syscall, x86-64
- Language: Assembly
- Homepage:
- Size: 191 KB
- Stars: 9
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Serie: Cargadores de Payloads - #Assembly #Picante
Desarrollo paso a paso de cargadores de payloads, escritos exclusivamente en **Ensamblador x86-64 para Linux**, sin dependencias externas y utilizando sólo **syscalls nativas**.
## Objetivo
Una vez avanzada la serie, publicaré en forma detallada el paso a paso para poder desarrollar cada uno de los ejemplos, aportando toda la documentación y explicaciones necesarias para que lo comprendas **de punta a punta** y no te quede absolutamente ninguna duda.
## Contacto
Si tenés dudas, sugerencias o correcciones, escribime a:
✉️ `[email protected]`
⠀## Payloads para los Ejemplos
| Archivo | Descripción | Video |
|---------|------------:|-------|
| [`payload.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload.asm) | 49 bytes | Ir a verlo |
| [`payload4KBlarger.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload4KBlarger.asm) | 5.088 bytes | Ir a verlo |👉 **[Links de los archivos binarios](https://github.com/Pithase/asm-payloads-loaders/tree/main/bin)**
⠀## Cargadores de Payload
### Cargadores de Payload desde Archivos
| Archivo | Descripción |
|---------|-------------|
| [`payload-read-file-short.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload-read-file-short.asm) | Carga de un payload de un archivo **<= 4KB** |
| [`payload-read-file.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload-read-file.asm) | Carga un payload desde archivo con **reserva de memoria dinámica** según su tamaño |
| [`payload-read-arg-file.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload-read-arg-file.asm) | Permite especificar el **archivo como argumento**, lee su tamaño y **asigna memoria dinámica** según corresponda |### Cargadores de Payload desde HTTP (no HTTPS)
| Archivo | Descripción |
|---------|-------------|
| [`payload-read-http-file-size-fixed.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload-read-http-file-size-fixed.asm) | Carga un payload **<= 4KB** con un tamaño predefinido en el código |
| [`payload-read-http-file-size-fixed-checksum.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload-read-http-file-size-fixed-checksum.asm) | Carga un payload **<= 4KB** con un tamaño y checksum predefinidos en el código, **verificando el checksum** antes de ejecutarlo |
| [`payload-read-http-file-size-dynamic-checksum.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/payload-read-http-file-size-dynamic-checksum.asm) | Carga un payload de **tamaño variable**, **sin límite de tamaño** (predefinido en el código) y **verifica el checksum** antes de ejecutarlo |
| [`http-payload-loader-full-dynamic-checksum.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/http-payload-loader-full-dynamic-checksum.asm) | Carga un payload de forma **TOTALMENTE DINÁMICA**, capaz de manejar payloads de **tamaño variable sin límites predefinidos**, con **verificación de integridad mediante checksum** |### Cargadores de Payload desde DNS
| Archivo | Descripción |
|---------|-------------|
| [`dns-payload-loader-full-dynamic-checksum.asm`](https://github.com/Pithase/asm-payloads-loaders/blob/main/dns-payload-loader-full-dynamic-checksum.asm) | Carga un payload de forma **TOTALMENTE DINÁMICA**, capaz de manejar payloads de **tamaño variable sin límites predefinidos**, con **verificación de integridad mediante checksum** |