CommunityProgramación y desarrollogithub.com

yaklang/linux-security-bypass

Manual de evasión de mecanismos de seguridad en Linux. Útil al enfrentar bash/rbash restringido, sistemas de archivos de solo lectura o noexec, AppArmor, SELinux, filtros seccomp o registros de auditoría que deben ser evadidos durante la post-explotación.

¿Qué es linux-security-bypass?

Este skill de agente de IA especializado, **yaklang/linux-security-bypass**, proporciona un manual completo para evadir mecanismos de seguridad en sistemas Linux durante fases de post-explotación. Está diseñado específicamente para situaciones donde el acceso a la shell está restringido (bash/rbash), los sistemas de archivos son de solo lectura o tienen el flag noexec, o cuando están activos controles de seguridad como AppArmor, SELinux, filtros seccomp y registro de auditoría. El skill ofrece técnicas y comandos prácticos para sortear estas limitaciones, permitiendo al agente o al usuario continuar con tareas de reconocimiento, escalada de privilegios o exfiltración de datos. Su utilidad principal es para entornos de pruebas de penetración y CTF (Capture The Flag), así como para auditorías de seguridad reales. Las técnicas incluyen el uso de intérpretes alternativos (Python, Perl, Lua), manipulación de variables de entorno, explotación de binarios SUID/GUID, y bypass de restricciones de ejecución mediante scripts en lenguajes interpretados o compilación estática. La documentación se mantiene actualizada con ejemplos concretos y referencias a herramientas comunes en el ecosistema de seguridad Linux.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/yaklang/hack-skills/tree/main/skills/linux-security-bypass

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace linux-security-bypass?

Manual de evasión de mecanismos de seguridad en Linux. Útil al enfrentar bash/rbash restringido, sistemas de archivos de solo lectura o noexec, AppArmor, SELinux, filtros seccomp o registros de auditoría que deben ser evadidos durante la post-explotación.

Técnicas de evasión

Bash/Rbash restringido

  • Uso de editores: vi, vim, nano, ed pueden permitir ejecutar comandos.
    • En vi: :!comando
    • En ed: !comando
  • Intérpretes alternativos: python, perl, ruby, lua, node
    • Ejemplo: python -c 'import os; os.system("/bin/sh")'
  • Variables de entorno: BASH_CMDS, $0, $_
    • BASH_CMDS[a]=/bin/sh; a
    • $_ (el último argumento del comando anterior)

Sistemas de archivos de solo lectura

  • Montaje remoto: Si hay acceso a red, montar un sistema de archivos remoto con permisos de escritura.
    • mount -t nfs 192.168.1.100:/compartido /mnt
  • tmpfs: Crear un sistema de archivos temporal en memoria.
    • mount -t tmpfs tmpfs /tmp (requiere permisos de root)
  • /dev/shm: Por lo general, /dev/shm es escribible incluso en sistemas con restricciones.

Noexec

  • Intérpretes: Usar intérpretes que carguen scripts directamente desde stdin.
    • python -c 'código'
    • perl -e 'código'
  • Enlace simbólico: Crear un enlace simbólico a un binario que no esté en un sistema noexec.
  • LD_PRELOAD: Cargar una biblioteca compartida maliciosa.
    • LD_PRELOAD=/path/to/malicious.so /bin/ls
  • Compilación estática: Compilar binarios estáticamente y ejecutarlos desde un directorio escribible.

AppArmor

  • Listar perfiles: aa-status o cat /sys/kernel/security/apparmor/profiles
  • Modo de queja: Si se tiene acceso de root, cambiar el modo a "complain" (queja) para evitar bloqueos.
    • aa-complain /path/to/binario
  • Evasión con intérpretes: A menudo, los intérpretes como Python no están confinados.
  • Explotación de agujeros: Buscar binarios SUID que no estén protegidos.

SELinux

  • Comprobación de estado: getenforce, sestatus
  • Deshabilitación temporal: Si se tiene acceso de root, setenforce 0 (requiere permisos de administrador).
  • Contextos: Ejecutar comandos con un contexto diferente usando runcon.
    • runcon -t shell_exec_t /bin/sh
  • Uso de binarios no etiquetados: Buscar binarios en directorios no estándar.

Filtros seccomp

  • syscalls comunes: Los filtros suelen bloquear execve, fork, clone. Se pueden usar mmap con PROT_EXEC para ejecutar código.
  • Uso de mmap: mmap(NULL, tamaño, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
  • Shellcode: Escribir shellcode directamente en memoria y ejecutarlo.
  • Llamadas al sistema alternativas: Buscar syscalls equivalentes (por ejemplo, openat en lugar de open).

Registro de auditoría (auditd)

  • Deshabilitación: Si se tiene acceso de root, service auditd stop o systemctl stop auditd.
  • Sobrescritura de logs: dd if=/dev/zero of=/var/log/audit/audit.log (requiere permisos).
  • Ocultamiento de actividad: Usar unlink para eliminar archivos de log específicos.
  • Redirección de salida: Ejecutar comandos con redirección a /dev/null o a un pipe.

Herramientas útiles

  • strace: Para depurar llamadas al sistema y entender filtros.
  • ltrace: Para depurar llamadas a bibliotecas.
  • gdb: Depurador de GNU para análisis avanzado.
  • objdump: Para inspeccionar binarios.
  • checksec: Para verificar protecciones de seguridad en binarios (RELRO, Stack Canary, NX, PIE).

Notas importantes

  1. Permisos de root: Muchas técnicas requieren privilegios de root. Si no se tienen, buscar escalada de privilegios primero.
  2. Detección: Algunas técnicas pueden ser detectadas por sistemas de detección de intrusiones (IDS) o sistemas de prevención de intrusiones (IPS).
  3. Legalidad: Utilizar únicamente en sistemas propios o con autorización explícita. No usar para actividades maliciosas.
  4. Actualizaciones: Los mecanismos de seguridad evolucionan; revisar siempre la documentación más reciente.

Referencias

  • GTFOBins - Binarios Unix que se pueden usar para evasión de restricciones.
  • Linux Security Modules - Documentación oficial del kernel.
  • Seccomp - Documentación sobre filtros seccomp.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

yaklang/401-403-bypass-techniques

401/403 bypass playbook. Use when encountering access-denied responses on admin panels, API endpoints, or restricted paths. Covers path manipulation, HTTP method tampering, header injection, protocol downgrade, and automated bypass tools.

yaklang/active-directory-acl-abuse

Active Directory ACL abuse playbook. Use when exploiting misconfigured AD permissions including GenericAll, WriteDACL, DCSync rights, shadow credentials, LAPS reading, GPO abuse, and BloodHound-guided attack paths.

yaklang/active-directory-certificate-services

AD Certificate Services attack playbook. Use when targeting misconfigured AD CS for privilege escalation via ESC1-ESC13 template abuse, NTLM relay to enrollment, CA officer abuse, and certificate-based persistence.

yaklang/active-directory-kerberos-attacks

Kerberos attack playbook for Active Directory. Use when targeting AD authentication via AS-REP roasting, Kerberoasting, golden/silver/diamond tickets, delegation abuse, or pass-the-ticket attacks.

yaklang/ai-ml-security

AI/ML security playbook. Use when assessing model supply chain attacks (pickle RCE, poisoned weights), adversarial examples, model poisoning, model stealing, data privacy attacks (membership inference, model inversion), and autonomous agent security risks.

yaklang/android-pentesting-tricks

Android pentesting playbook. Use when testing Android applications for SSL pinning bypass, exported component abuse, WebView vulnerabilities, intent redirection, root detection bypass, tapjacking, and backup extraction during authorized mobile security assessments.

yaklang/anti-debugging-techniques

Anti-debugging detection and bypass playbook. Use when reversing protected binaries that detect debuggers via ptrace, PEB flags, timing checks, or signal/exception handlers on Linux and Windows.

yaklang/api-auth-and-jwt-abuse

API authentication and JWT abuse playbook. Use when testing bearer tokens, API keys, claim trust, header spoofing, rate limits, and API auth boundary weaknesses.

yaklang/api-authorization-and-bola

API authorization and BOLA testing playbook. Use when APIs expose object identifiers, nested resources, hidden writable fields, or weak function-level authorization.

yaklang/api-recon-and-docs

API reconnaissance and documentation review playbook. Use when discovering endpoints, schemas, versions, OpenAPI specs, hidden docs, and surface area for API testing.

yaklang/api-sec

Entry P1 category router for API security. Use when choosing between API recon, authorization, token abuse, and hidden-parameter workflows before any deeper API topic skill.

yaklang/arbitrary-write-to-rce

Arbitrary write to RCE playbook. Use when you have an arbitrary write primitive (from heap exploitation, format string, or OOB write) and need to convert it into code execution by targeting GOT, hooks, _IO_FILE vtable, exit_funcs, TLS_dtor_list, modprobe_path, .fini_array, or C++ vtables.

yaklang/authbypass-authentication-flaws

Authentication bypass testing playbook. Use when assessing login flows, password reset logic, account recovery, MFA bypass, token predictability, brute-force resistance, and session boundary flaws.

yaklang/auth-sec

Entry P1 category router for authentication and authorization. Use when testing login flows, sessions, object authorization, JWT, OAuth, CORS, CSRF, and enterprise SSO weaknesses before any deeper auth topic skill.

yaklang/binary-protection-bypass

Binary protection bypass playbook. Use when identifying and bypassing ASLR, PIE, NX/DEP, stack canary, RELRO, FORTIFY_SOURCE, CET, and MTE protections in ELF binaries to enable exploitation.

yaklang/browser-exploitation-v8

Browser and V8 exploitation playbook. Use when exploiting JavaScript engine vulnerabilities including JIT type confusion, incorrect bounds elimination, and V8 sandbox bypass to achieve renderer RCE and sandbox escape in Chrome/Chromium.

yaklang/business-logic-vuln

Entry P1 category router for business logic testing. Use when workflow abuse, race conditions, pricing flaws, or multi-step state attacks matter more than parser-level input injection.

yaklang/business-logic-vulnerabilities

Business logic vulnerability playbook. Use when reasoning about workflows, race conditions, price manipulation, coupon abuse, state machines, and multi-step authorization gaps.

yaklang/classical-cipher-analysis

Classical cipher analysis playbook. Use when encountering substitution ciphers, Vigenere, transposition, XOR, or encoded text in CTF challenges that requires frequency analysis, Kasiski examination, or known-plaintext cryptanalysis.

yaklang/clickjacking

Clickjacking playbook. Use when testing whether target pages can be framed, whether X-Frame-Options or CSP frame-ancestors are properly configured, and whether UI redress attacks can trigger sensitive actions.

Skills relacionados