OS Detection Tool Like Nmap
I want to develope a new tool like Nmap written in c++ and can be easily downloaded from wwwdotinsecuredotorg. Can any one knows how do i start. I know how to detect ports but how to map them with services.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
If C++ is your language then you are at the wrong forum
javaAddict
Nearly a Senior Poster
3,329 posts since Dec 2007
Reputation Points: 1,014
Solved Threads: 448
If C++ is your language then you are at the wrong forum
Please read Details carefully before your suggestion.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
I want to develope a new tool like Nmap written in c++ and can be easily downloaded from wwwdotinsecuredotorg. Can any one knows how do i start. I know how to detect ports but how to map them with services.
No offence shaikh_mshariq but your post does realy sound like you wish to create your project in c++. You need not to respond to javaAddict as you did.
If you wish to do it in Java you may want to have look at some books like Java Network Programming 3e by E Harold
, An Introduction to Network Programming with Java by Jan Graba (at least first 6 chapters) and java2s.com has some interesting examples in their Network Protocol section
peter_budo
Code tags enforcer
15,436 posts since Dec 2004
Reputation Points: 2,806
Solved Threads: 902
Please read Details carefully before your suggestion.
Your post does sound like you want to create it in c++. Don't berate others for your own failure to write something clearly.
Ezzaral
Posting Genius
15,986 posts since May 2007
Reputation Points: 3,250
Solved Threads: 847
I am very sorry about my behaviour and really apologize to javaaddict and all the community members. It was an misunderstanding by me. I am accepting my fault and posting this thread without any bug.
I want to develope a new tool in java like Nmap written in c++ and can be easily downloaded from wwwdotinsecuredotorg. Can any one knows how do i start. I know how to detect ports but how to map them with services.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
Most such tools (maybe all) simply have a list of ports and the services they typically belong to.
For example port 80 is standardised for http, port 25 for smtp, 21 for ftp, and so on.
Others may try to determine what's running on a port by sending some packets to it and analysing the response.
jwenting
duckman
8,392 posts since Nov 2004
Reputation Points: 1,662
Solved Threads: 337
In Nmap it uses os fingerprinting using tcp or udp packets. It described in its documentation. I am trying to know how can i do that same thing in java.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
I know it is tricky and that why i am going to make it in java and if it is very effective in c or cpp than it would be more powerful in java with ui. With this tool i want to test my own network and my networking concepts
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
yes, but such information is not specified in any specific format.
It's usually a free format string of some length.
There's also no guarantee that the software sending the information is telling you the truth.
I've made use of that myself to trick firewalls to let information pass by making it look like it was coming from for example Apache or Sendmail, or reverse to get strict servers to accept packages by making them look like they were coming from Internet Explorer or Netscape.
jwenting
duckman
8,392 posts since Nov 2004
Reputation Points: 1,662
Solved Threads: 337
The header field does contain information related to the OS it gives user agent and os version but i want some extra information such as running process detail and its port no if it is possible through java or other java related technology. To get Header detail according to my knowledge client must request you. Is that true ? In my network i do have administrator permission and i want to check all my node's process status from a central server.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
no, the header field is FREE FORMAT.
It MAY contain that information but there's no requirement.
And that's only for http, for other protocols there is no such information AT ALL.
jwenting
duckman
8,392 posts since Nov 2004
Reputation Points: 1,662
Solved Threads: 337
Would Runtime.exec command would help in this case where i can get Detail about os and than use exec and run appropriate command for the particular os and get the result.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
I have googled a lot and try to shift my code to partial java i have decided to use jni to get hardware and os information. Any one have the idea to get information via c or cpp programme.
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1
Since you obviously have no clue about what you're trying to accomplish using JNI (which you apparently also have no clue about how to use) to call a program written in C or C++ (which you apparently don't know) isn't going to solve anything.
jwenting
duckman
8,392 posts since Nov 2004
Reputation Points: 1,662
Solved Threads: 337
This is my time to learn and i am trying hard thanx for your suggestion you are right i dont know some of thing but tell me one person who knows every thing from his birth. Thanx again
shaikh_mshariq
Junior Poster in Training
71 posts since Mar 2006
Reputation Points: 12
Solved Threads: 1