netsed


La idea de netsed es muy simple: es como sed (Stream EDitor) pero para redes. No se me ocurren muchos escenarios donde esta utilidad pueda ser realmente útil, pero desde luego es interesante.Veamos un ejemplo de uso de netsed combinado con netcat:

  • Por un lado dejaremos un proceso netsed con algunas reglas [sustituyendo “Hola!” por “Adios”], escuchando en el puerto 9093 y reenviandolo a localhost:9092.
  • Por otro lado, un netcat estará escuchando en localhost:9092 y escribirá lo que le llegue a nohup.out.
  • Tambien usaremos netcat para enviar datos a netsed al puerto 9093.

Netsed

Colocamos un proceso netsed:

Host:~# netsed tcp 9093 127.0.0.1 9092 s/Hola\!/Adios
netsed 0.01c by Michal Zalewski <lcamtuf@ids.pl>
[*] Parsing rule s/Hola!/Adios...
[+] Loaded 1 rules...
[+] Listening on port 9093/tcp.
[+] Using fixed forwarding to 127.0.0.1:9092.

(el proceso continúa hasta que no presionemos Control-C)

En otro terminal dejamos un netcat escuchando en el puerto 9092, y escribiendo a nohup.out

Host:~# nohup nc -l -p 9092 &
[1] 28925
Host:~# nohup: se añade la salida a «nohup.out»

Y en este mismo terminal ejecutamos el netcat cliente:

Host:~# nc localhost 9093
Hola
eo?
Hola!

(Control-C)

Mientras estabamos en el netcat cliente, netsed ha escrito esto:

[+] Got incoming connection from 127.0.0.1:3579 to 127.0.0.1:9093
[*] Forwarding connection to 127.0.0.1:9092
[+] Caught client -> server packet.
[*] Forwarding untouched packet of size 5. ==> "Hola" no cumple la regla
[+] Caught client -> server packet.
[*] Forwarding untouched packet of size 6.
==> "eo?" tampoco
[+] Caught client -> server packet.
Applying rule s/Hola!/Adios...
[*] Done 1 replacements, forwarding packet of size 6 (orig 6). ==> "Hola!" si cumple
[-] Client or server disconnect (28887).

Un vistazo a nohup.out nos confirma que ha funcionado la sustitución:

Host:~# cat nohup.out
Hola
eo?
Adios

Host:~#

Divertido?

One Response to “netsed”

  1. Dr. Falken Says:

    Muy divertido! Gracias!!
    MUAHAHAHA!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: