# insmod mydup.ko [+] Module loaded. [+] /proc/my_dup created. Exemple : Dans un term (term1) un serveur qui ecoute : $ nc -lp 12345 Dans un term (term2) un client qui communique avec le serveur $ nc localhost 12345 Dans un term (term3) duplication de la socket de communication du client sur STDIN et STDOUT : $ ./a.out ./a.out $ ps uax | grep "nc localhost" emp 11609 0.0 0.0 1640 624 pts/0 S+ 14:53 0:00 nc localhost 12345 $ ls -al /proc/11609/fd/ total 4 dr-x------ 2 emp emp 0 2007-04-09 14:56 . dr-xr-xr-x 5 emp emp 0 2007-04-09 14:56 .. lrwx------ 1 emp emp 64 2007-04-09 14:58 0 -> /dev/pts/0 lrwx------ 1 emp emp 64 2007-04-09 14:58 1 -> /dev/pts/0 lrwx------ 1 emp emp 64 2007-04-09 14:56 2 -> /dev/pts/0 lrwx------ 1 emp emp 64 2007-04-09 14:58 3 -> socket:[275096] $ ./a.out 11609 $$ 3 1 [+] my_dup ok test Explication : a.out permet de faire le controle avec le /proc/my_dup, j'ai dup le fd 1 d'a.out sur le fd 3 du client (son socket). Tout ce que je tape dans ce term (term3) j'affiche cote serveur (term2), sans que le client (term1) puisse s'appercevoir que je tape des commandes a dans son socket.