1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-15 04:09:01 +00:00
Files
nmap/nping/nping-dev/NpingRequirements.txt
david ed2ba4e168 Copy nping, nsock, nbase, zenmap, ncat from their homes in /.
If you have trouble updating after this revision you need to follow
these instructions. You have probably just seen an error like this:

svn: URL 'svn://svn.insecure.org/nping' of existing directory 'nping'
does not match expected URL 'svn://svn.insecure.org/nmap/nping'

This is caused by the replacement of SVN externals.

Here's what you need to do. First, save any local changes you might have
in the nping, nsock, nbase, ncat, and zenmap directories. (For example
by running "cd nping; svn diff > ../nping.diff".) If you don't have any
local changes you can skip this step.

Then run these commands:

rm -rf nping/ nsock/ nbase/ ncat/ zenmap/
svn update
svn cleanup

If all else fails, you can just delete your whole working directory and
check out anew:

svn co --username guest --password "" svn://svn.insecure.org/nmap

There may be further discussion in the mailing list thread at
http://seclists.org/nmap-dev/2011/q4/303.
2011-11-16 21:49:44 +00:00

166 lines
9.2 KiB
Plaintext

++++++++++++++++++++++++++++++++
| NPING PROJECT REQUIREMENTS |
++++++++++++++++++++++++++++++++
This document presents a list of requirements for the tool Nping that will
be developed during this summer as a project for the program Google Summer of
Code.
Each requirement is tagged with one of the following tags:
[MustHave] It definitely must be met.
[ShouldHave] It should be met if providing there is enough time for it.
[CouldHave] It would be nice to have but it's not essential.
[OnRequest] It would be added to the todo-list if someone asks for it on the
list, provides a good reason and some usage scenarios.
+------------------------+
| GENERAL |
+------------------------+
* Documentation for end-users.........................................[MustHave] [DONE]
* Documentation of the source code using Doxygen syntax..............[Couldhave] [DONE]
* Command line interface with well-defined option flags...............[MustHave] [DONE]
* 6 levels of verbosity (0 to 5)......................................[MustHave] [DONE]
* 6 levels of debugging information...................................[MustHave] [DONE]
* Written in C++......................................................[MustHave] [DONE]
* Run and be tested under Linux.......................................[MustHave] [DONE]
* Run and be tested under Windows.....................................[MustHave]
* Run and be tested under OS X........................................[MustHave]
* Compile as a single, statically-linked executable..................[CouldHave]
* Use of libdnet......................................................[MustHave] [DONE]
* Designed to be integrated into Nmap tarball.........................[MustHave]
* Design to allow easy extension to other protocols...................[MustHave] [DONE]
+------------------------+
| LINK LAYER |
+------------------------+
* Raw Ethernet frame generation.......................................[MustHave] [DONE]
- Destination MAC address...........................................[MustHave] [DONE]
- Spoofed source MAC address........................................[MustHave] [DONE]
- Custom Ethertype/Length..........................................[OnRequest] [DONE]
- Invalid CRC32 checksum...........................................[OnRequest]
* ARP ping............................................................[MustHave] [DONE]
* Custom ARP packet generation
- Hardware type....................................................[OnRequest]
- Protocol type....................................................[OnRequest]
- Hardware length..................................................[OnRequest]
- Protocol length .................................................[OnRequest]
- Operation .......................................................[OnRequest] [DONE]
- Sender hardware address...........................................[MustHave] [DONE]
- Sender protocol address...........................................[MustHave] [DONE]
- Target hardware address...........................................[MustHave] [DONE]
- Target protocol address...........................................[MustHave] [DONE]
* Custom RARP packet generation......................................[CouldHave] [DONE]
+------------------------+
| NETWORK LAYER |
+------------------------+
* Custom IPv4 packet generation.......................................[MustHave] [DONE]
- Custom version number............................................[OnRequest]
- Invalid header lengths...........................................[OnRequest]
- Type of Service...................................................[MustHave] [DONE]
- Invalid total lengths............................................[OnRequest]
- Custom Idenfication number........................................[MustHave] [DONE]
- Do Not Fragment Flag..............................................[MustHave] [DONE]
- More Fragments Flag...............................................[MustHave] [DONE]
- Reserved flag....................................................[OnRequest]
- Incorrect fragment offset........................................[OnRequest]
- Custom TTL........................................................[MustHave] [DONE]
- Custom Protocol number...........................................[OnRequest]
- Invalid header checksum...........................................[MustHave] [DONE]
- Spoofed source address............................................[MustHave] [DONE]
- Destination address...............................................[MustHave] [DONE]
- IP options........................................................[MustHave] [DONE]
* IPv6 packet generation
- IPv6 support for TCP connect() ping...............................[MustHave]
- IPv6 support for UDP pings........................................[MustHave]
- IPv6 packet generation............................................[MustHave]
* ICMP packet generation..............................................[MustHave] [DONE]
- Echo Request......................................................[MustHave] [DONE]
- Timestamp request.................................................[MustHave] [DONE]
- Information Request...............................................[MustHave] [DONE]
- Netmask Request...................................................[MustHave]
- Redirect..........................................................[MustHave] [DONE]
- Fake Destination Unreachable Message..............................[MustHave] [DONE]
- Fake Echo Reply Message..........................................[OnRequest] [DONE]
- Fake Source Quench Message.......................................[OnRequest] [DONE]
- Fake Time Exceeded message.......................................[OnRequest] [DONE]
- Fake Parameter Problem Message...................................[OnRequest] [DONE]
- Timestamp reply..................................................[OnRequest] [DONE]
- Information Reply................................................[OnRequest] [DONE]
- Netmask Reply....................................................[OnRequest]
+------------------------+
| TRANSPORT LAYER |
+------------------------+
* Custom TCP packet generation........................................[MustHave] [DONE]
- Source port......................................................[MustHave] [DONE]
- Destination port.................................................[MustHave] [DONE]
- Sequence Number..................................................[MustHave] [DONE]
- ACK Number.......................................................[MustHave] [DONE]
- Invalid offset values...........................................[OnRequest]
- Custom data in "Reserved" field.................................[OnRequest]
- TCP Flags (including CWR and ECE)................................[MustHave] [DONE]
- Window size......................................................[MustHave] [DONE]
- Invalid checksum.................................................[MustHave] [DONE]
- Custom Urgent Pointer...........................................[OnRequest]
- TCP Options......................................................[MustHave]
* Custom UDP packet generation........................................[MustHave] [DONE]
- Source / Dest ports .............................................[MustHave] [DONE]
- Incorrect length................................................[OnRequest] [DONE]
- Invalid checksum.................................................[MustHave] [DONE]
+------------------------+
| APPLICATION LAYER |
+------------------------+
* Custom DNS request generation......................................[CouldHave]
* HTTP request generation............................................[CouldHave]
+------------------------+
| Nping ECHO SERVER |
+------------------------+
* Encrypted communications symmetrict encryption......................[MustHave]
* Use of covert channels to transfer information back
to the nping client................................................[CouldHave]
* Echo back layers link+net+transport+payload
* Echo back layers net+transport+payload
* Echo back layerstransport+payload
* Echo back only payload
+------------------------+
| MISCELLANEOUS |
+------------------------+
* Traceroute mode.....................................................[MustHave] [DONE]
- Traceroute to a TCP port..........................................[MustHave] [DONE]
- Traceroute to a UDP port..........................................[MustHave] [DONE]
* Nmap style packet output............................................[MustHave] [DONE]
* Provide useful stats................................................[MustHave]
* Save responses in a pcap file......................................[CouldHave]
* Implement student's t test to compare data-sets of timing
information as in QSCAN............................................[CouldHave]
* Support for multiple target IPs.....................................[MustHave] [DONE]
* Support for multiple target ports...................................[MustHave] [DONE]