               Laurent Constantin's network toolbox (lcrzoex)

                      --------------------------------
                      |           TODO LIST          |
                      --------------------------------

++ Next version

 * I am preparing a big surprise :). So watch out for next lcrzoex...


++ Future versions

 * Provide a tool to cypher files using a XOR.

 * Think about network mask computation. Perhaps provide another tool.

 * TCP and UDP relay. User can specify local IP and port.

 * Detect hosts in promiscuous mode.

 * Tool to save a sniffed record with a printprofile of 4 (array).
   Also, create a tool to convert a record from one printprofile
   to another one.


++ Far future versions

 * Backdoor using TCP ACK, ICMP ping, UDP dns, etc to communicate.

 * Create a DNS proxy answering KO after a timeout of 10 seconds.

 * Create examples for snmp.

 * Create a web proxy.

 * The function lcrzo_spoof_set_fragoctosize must stay in lcrzo_spoof.c
   (it is simple, and do not load spoof), but a complex spoof profile
   should be added in a lcrzoex module. This module could be used for 
   spoofing special packets :
    - order/randomness of fragments
    - duplication of packets
    - overlapping (with 0, with same data, with different data)
    - IP options to add

 * When displaying usage of example, we could also show :
    - needed skill
    - kind of spoof (Eth, IP, none)
    - risk for other computers on the network
    - need to be admin ?
   [based on an idea of Nick Drage]

 * Create routers :
    - block connections
    - block TCP FIN
    - block IP address
    - add IP options
    - modify HTTP GET
    - modify UDP syslog
    - modify ICMP echo
    - priority of flow

 * Create an example to test a firewall with a computer having
   two network cards.

 * Create a module containing virtual clients/servers which permit to : 
    - create fragmented packets,
    - specify isn, urg bit, psh bit
    - block ident
    - have a spoof profile


++ Version 5.00

 * Options on command line could be passed using -x para. For example :
    lcrzoex 7 -d eth0 -f "port 25"
    lcrzoex 7 -f "port 25" -d eth0
