Nmap Gets Version Detection 172
Anonymous Coward writes "Up until now, everyone's favorite port scanner, nmap has had decent OS detection (through TCP fingerprinting) and service identification based on the open port, but the latest version, 3.45 released today, has version detection for each service! This means not only can nmap tell you that httpd is running on port 80, but that it is `apache httpd version 2.0.39`! While this is a little bit worrisome because of what malicious purposes people might use nmap's version detection for, this should make the jobs of admins everywhere easier and keep us all more on our toes when it comes to security. Fyodor has also published a paper on how the version detection works."
Worrysome? (Score:5, Insightful)
If you hope nobody can hack you or cause any problems with your servers because you assume they dont know what you are running...that is a problem.
How about being accountable, upgrading and securing your system, instead of being alarmed that "suddenly" (like they couldnt before) people can see specifically what you are running.
Hats off to nmap...first matrix reloaded, now a drastic improvement! Who knows, matrix revolutions may be sporting a new nmap!
Re:Worrysome? (Score:3, Interesting)
Re:Worrysome? (Score:2, Insightful)
Re:Worrysome? (Score:3, Interesting)
Re:Worrysome? (Score:1)
I'm working for such a company. But when I told them to open SSH for me, they did. They were only blocking it because no one was using it.
I think it has something to do with the fact that telnet can be used for a lot of things. I mean you can telnet to an HTTP server, SMTP server, etc. How would you block telnet specifically?
Re:Worrysome? (Score:2)
Too bad SSH wasn't invented sooner, everything would be using it instead of Telnet.
Re:Worrysome? (Score:3, Informative)
You're confusing telnet-the-app and telnet-the-protocol. When companies block telnet, they usually block telnet-the-protocol. You can still use the app to connect to arbitary port 80s. If you can't, it means http has been blocked as well.
Re:Worrysome? (Score:2)
That is a problem indeed, but given the number of bad sys ads out there (without whom many networks would not have sys ads) it sure has to be a concern for someone.
Re:Worrysome? (Score:5, Informative)
Jay Beale (from Bastille Linux) wrote a nice article about security through obscurity [bastille-linux.org] a while ago.
Re:Worrysome? (Score:3, Insightful)
Re:Worrysome? (Score:2)
Re:Worrysome? (Score:2)
Re:Worrysome? (Score:3, Insightful)
Re:Worrysome? (Score:2)
There have to be point-and-click tools to tell what a server is running anyway, it's not like it's the hardest thing in the world to do. Look:
Dood! I just "hacked" Slashdot into telling me they ar
Re:Worrysome? (Score:2, Interesting)
1. Pick an exploit on your favorite security site.
2. Write a script that scans the Internet for boxes running the service and version that match the exploit.
3. Initiate exploit when match is found.
At least with anonymous versions, the attacker wasn't necessarily sure what he was up against (or had to work a little harder for it).
Re:Worrysome? (Score:2)
Obscurity and lameness (Score:2)
It's universally considered a bad idea to emit version strings. But you're right, it's also a bad idea to place to count on obscurity. Good security assumes that an intruder knows exactly what you're running, because inevitably one will come along who makes the right set of assumptions.
Here's an amusing item [counterpane.com] about vulnerability scanners and version strings. A
Re:Worrysome? (Score:2)
I am sure you are the 0day king of your little group, but how the hell does your comment relate to nmap?
MOST exploiting is done with publicly known exploits.
Already, most new non-publicly known exploits have specific scanners (or you make one) for vulnerable machines. The new nmap version detection will not make anyone more vulnerable to the 0day exploits.
So shut up script kiddie.
Re:Worrysome? (Score:2)
If you work in a larger organization with alot of customized client/server apps which haven't been converted to web, you are going to have alot of issues if you patch ASAP.
The testing process required to ensure that a patch will not affect thousands or tens of thousands of clients running critical applications is not trivial and usually cannot
Re:Worrysome? (Score:2)
If your application was built on a framework that's so unpredictable that fundamental security patches can break the app, then you've got problems. Either the programmers who wrote the app are stupid, or the designer who chose the framework is dangerously incompetent.
Whichever it is, they'll be easy enough to replace
Re:Worrysome? (Score:1, Insightful)
Re:Worrysome? (Score:3, Insightful)
Now let's assume that your lines of business are humming (or struggling) along with the incompetently designed apps written by stupid programmers. The designers and programmers have moved along and you, the reasonably competent and intelligent replacement has to make the spaghetti junk work.
If your "solution" is to shut down the company for a few months and rebuild perfectly designed SOAP/XML web services with LDAP and relational database backends written in whatever s
Re:Worrysome? (Score:2)
It's almost as if you enjoyed saying that.
Re:Worrysome? (Score:1)
Kent Brockman (Score:1, Funny)
Tool convergence? (Score:5, Interesting)
Oh, and by the way, is anyone watching the global 593 spike?
Re:Tool convergence? (Score:2)
Oh, and by the way, is anyone watching the global 593 spike?
RPC over HTTP. Hmm. Sounds like that Windows exploit. Funny, while looking for information, I came across this:
Internal .EDU posting? [ucsf.edu]
slashdotted (Score:5, Informative)
Even if Nmap is right, and the hypothetical server above is running SMTP, HTTP, and DNS servers, that is not a lot of information. When doing vulnerability assessments of your companies or clients, you really what to know which mail and DNS servers are running, as well as the version number if possible. Having an accurate version number helps dramatically in determining which exploits a server is vulnerable to.
Yet another good reason for determining service/version numbers is that many services share the same port number - making a guess based on the nmap-services table even less accurate. Anyone who has done much scanning knows that you often find services listening on unregistered ports - these are a complete mystery without version detection. In addition, filtered UDP ports often look the same to a simple port scanner as open ports. But if they respond to the service-specific probes sent by Nmap version detection, you know for sure that they are open (and in many cases exactly what is running).
The new Nmap version scanning subsystem tries to answer all these questions by connecting to open ports and interrogating them for this information using probes that the specific services understand. This allows Nmap to give a much more details assessment of what is really running, rather than just what port numbers are open. Here is a real example:
# nmap -A -T4 -F www.insecure.org
Starting nmap 3.40PVT16 ( http://www.insecure.org/nmap/ ) at 2003-09-06 19:49 PDT
Interesting ports on www.insecure.org (205.217.153.53):
(The 1206 ports scanned but not shown below are in state: filtered)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 3.1p1 (protocol 1.99)
25/tcp open smtp Qmail smtpd
53/tcp open domain ISC Bind 9.2.1
80/tcp open http Apache httpd 2.0.39 ((Unix) mod_perl/1.99_07-dev Perl/v5.6.1)
113/tcp closed auth
Device type: general purpose
Running: Linux 2.4.X|2.5.X
OS details: Linux Kernel 2.4.0 - 2.5.20
Uptime 108.307 days (since Wed May 21 12:27:44 2003)
Nmap run completed -- 1 IP address (1 host up) scanned in 34.962 seconds
Now I don't claim that Nmap is the first program to ever implement this sort of port interrogation. Jay Freeman (AKA Saurik) posted an Nmap patch he calls Nmap+V more than three years ago. Even if Nmap+V was rather slow and cryptic at the time, it demonstrated the value of advanced port interrogation. It has improved substantially since then. There is also the excellent THC Amap, and Nessus even has a (very) rudimentary service detection framework. While we could have saved months of work by simply integrating one of these open source implementations
Re:slashdotted (Score:1)
not worried (Score:5, Interesting)
hmmm I think NMAP will only report the version that service will respond. I can make my Apache instance respond with anything, for e.g. "saqib webserver ver. 9.0"
Version detection can also be very helpful
It is good to know that NMAP support version detection. There have been mny instance in the past, especially during the recent virus outbreaks, where I wished I could find the Service version.
Re:not worried (Score:3, Insightful)
Unfortunately I can then come along and run hmap to detect what it really is using finger printing techniques. Concealing server names and versions gives only a very small increase in security and can make management of multiple servers harder (as it's more difficult to check you patched everything). Rich.
Re:not worried (Score:2)
I remember playing with a tool (whose name escapes me) that tried to identify what version of SMTP server you were running. It would run through all the commands, note the responses, etc. and then tell you what you were running. Seemed to work fairly well.
Maybe a more generic version could be incorperated into nmap, for all services (not just SMTP) when the ser
nmap malicious? (Score:5, Funny)
addition of version detection, the most 'white hat'
tool out there that could never possibly be used for
anything bad suddenly becomes a 'black hat' tool..
It's a complete 180!
Re:nmap malicious? (Score:3, Interesting)
Stupid troll
Nmap is a superb tool for scanning large networks. Could that be abused? Yes, but so what? Should we banish cars, since they can be used in bank heists? Should LSD be illegal, just because a large percentage of the population is retarded?
Want a list of machines that's infected with msblast? Nmap your network.
Want a list of machine that are vulnerable to the latest rdp hole in Windows? Nmap your network.
Want a list of servers running an exploitable ssh version? Nmap your network.
Any good adm
Re:nmap malicious? (Score:3, Insightful)
I know that nmap is useful for more than
black hat purposes, I use it myself, blah blah.
If you look through my post, you'll find nowhere
that I'm suggesting banning it, making it illegal,
or anything like that. Instead, what my post,
intending to be humorous, was about, was simply
stating that it IS used for blackhat things too,
and version detection doesn't change things that
much with regards to that.
It's great that you're a crusader against people
who would take u
Re:nmap malicious? (Score:1)
Sigh.
Re:nmap malicious? (Score:2)
They also found the Windows RPC hole that paved way for MSBlast.
Yin and Yang (Score:3, Insightful)
Re:Yin and Yang (Score:1, Interesting)
What? I don't like what you are saying? Duality? That sounds like a unchristian idea. You are either with us or against us. You are either for terror or for freedom.
How do you know good from bad? As GBW said: you just know.
Re:nmap malicious? (Score:1)
Good second check. (Score:5, Interesting)
Re:Good second check. (Score:3, Informative)
Trying 2001:618:15:226::237...
Connected to gk.
Escape character is '^]'.
220 gk.umtstrial.co.uk ESMTP Postfix
quit
221 Bye
Connection closed by foreign host.
Re:Good second check. (Score:1)
Great (Score:3, Funny)
No use for worms, only for (h|cr)acking (Score:3, Insightful)
Why OS detection? (Score:1, Funny)
Re:Why OS detection? (Score:2, Insightful)
To put a simple example, you might scan a network for Linux hosts running Samba to then verify that they aren't running a vulnerable version.
Re:Why OS detection? (Score:1)
Worrisome? No. (Score:5, Insightful)
By the same logic, one might consider it "worrisome" that there even exists software packages like "Nessus" and "Saint".
Adding features such as version detection to a tool that can be used for both good and bad purposed shouldn't be considered "worrisome". It is just something that makes the tool better, for good and for bad. And unless we are talking about software which by design always causes destructive damage when used, I will always consider it a good thing that there are such excellent security auditing tools available to the public. With all respect, sorry to hear that someone finds this "worrisome".
Re:Worrisome? No. (Score:3, Insightful)
But version detection doesn't seem to matter to the average skr1pt kiddie. After looking at many system logs and firewall logs it seems that many hax0r-type kids don't bother running a version detector and hand-picking an exploit based on server version but rather they use battering-ram style try-a
Just out of curiousity... (Score:2, Funny)
Speaking of versions (Score:5, Informative)
0 Day SSH EXPLOIT out today..
CVS DIFF patch Here [freebsd.org]
Details are sketchy here [netsys.com]
Redhat and others haven't released patches yet.
ChiefArcher
Re:Speaking of versions (Score:2, Interesting)
Still, that makes it two remote root holes in the default install now I believe...
Re:Speaking of versions (Score:4, Insightful)
Re:Speaking of versions (Score:1)
Re:Speaking of versions (Score:2)
Re:Speaking of versions (Score:1)
So it just does banner detection? (Score:3, Informative)
Unfortunately, there is no easy answer to this dilemna for security professionals - do you trust the banner info and get a bunch of false positives? Do you attempt an exploit and possibly crash the machine (not as likely with this sendmail header overflow, but moreso in the case of the apache chunked encoding overflow)? Or do you log onto each host (or use an agent based check system, like NetworkShell)?
Perhaps Fyodor should tackle these questions and not hack pranksters [slashdot.org] in his spare time.
Re:So it just does banner detection? (Score:1)
Re:So it just does banner detection? (Score:1)
leet (Score:4, Funny)
UH OH (Score:5, Interesting)
worrisome? nah! (Score:5, Interesting)
Now for a *real* tool for making sure your sytems are up to date, try Nessus [nessus.org]. It not only scans your system for what programs are running (using nmap no less), but it finds out what versions they are if they can, and it tries to run common exploits on them too! I use it perodically just to make sure that all the bases are covered so that none of the holes for common exploits on the internet are left open.
Re:worrisome? nah! (Score:2)
So... you're the sysadmin and you need nmap to tell you what you're running on your server?
Re:worrisome? nah! (Score:4, Insightful)
It's the first thing I always do when I put a new server on the network. It never hurts to do a double-check to make sure that your servers are behaving the way that you think they are. Just like it doesn't hurt to reboot a linux box perodically to make sure that all your startup scrips work as expected in case of a power outage or whatever.
Re:worrisome? nah! (Score:1)
And let's add... (Score:2)
Re:worrisome? nah! (Score:2)
The real question is (Score:1, Interesting)
Catch it the same way as the rest (Score:4, Interesting)
Spoil sport... :)
I put a timed block on all ips that port scan me persistantly, I doubt the heuristics will even change. Once it's a distributed scan I'm screwed...
Certainly be useful for the internal audits though.
Q.
Re:Catch it the same way as the rest (Score:2, Interesting)
Re:Catch it the same way as the rest (Score:2)
I update after almost every new nmap function, or at least when I manage to poke a hole.
Keeps the kiddies out...
Q.
one possible upside (Score:1, Funny)
if this works into the script kiddies stock toolbox, then maybe they'll stop pounding my damn web server looking for backdoors that are 2 major OS versions old.
or maybe i should finally break down and write that script to fire off an auto-email to the administration contact each time some zombie comes knocking.
HTTP "detection" (Score:3, Informative)
Turn off version announment in apache.conf (Score:2)
CB
Re:Turn off version announment in apache.conf (Score:2, Informative)
Win + samba (Score:1, Interesting)
SO? (Score:3, Informative)
Take make sure noone can tell what you're running, put this in your config:
ServerTokens Prod
ServerSignature Off
Here is the documentation for ServerTokens [apache.org] and ServerSignature [apache.org].
security through obscurity you say? (Score:2)
Interesting ports on tiger (192.168.1.109):
(The 1191 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE VERSION
7/tcp open echo
9/tcp open discard?
19/tcp open chargen?
21/tcp open ftp
22/tcp open ssh?
23/tcp open telnet?
25/tcp open smtp
53/tcp open domain?
80/tcp open http?
110/tcp open pop-3?
113/tcp open auth?
143/tcp open imap
513/tcp open login?
565/tcp open whoami?
567/tcp open banyan-rpc?
993/tcp
Fyodor is no white hat (Score:1, Interesting)
The best part of this interview is that Slashdot does not often interview criminals. Many Slashdot readers know that Fyodor used his tool to illegally attack a college student in 2002, for his personal amusement but also to the benefit of Slashdot's admins. For those that don't know the story, I will present a brief summary.
*Those individuals interested in ind
Re:Fyodor is no white hat (Score:1, Interesting)
The best part of this interview is that Slashdot does not often interview criminals.
They do indeed! Kevin Mitnick is just one convicted criminal Slashdot has interviewed. If the alleged crime is relevant to computer technology, Slashdot will certainly do an interview. "Respectable journalists" interview criminals all the time.
This is where the story turns ugly.
Wrong. It w
From the paper... (Score:2)
When doing vulnerability assessments of your companies or clients...
A.k.a your intended victims.
uptime detection (Score:2)
determine how many days a server has been up.
Does Apache give out this info?
Re:uptime detection (Score:2)
I always wondered how netcraft and nmap could determine how many days a server has been up.
I think it's done through TCP options, but I don't know the details offhand.
THE portscanner is NESSUS! (Score:2)
who cares anymore ? (Score:3, Insightful)
how many lines in your apache logs look like this ?
"GET
"GET
"GET
"GET
"GET
"GET
HTTP/1.0" 404 323
24.91.103.152 "GET
24.91.103.152 "GET
24.91.103.152 "GET
wierd result.... (Score:1)
PORT STATE SERVICE VERSION
21/tcp closed ftp
80/tcp open http Microsoft IIS webserver 6.0
Device type: general purpose
Running: Linux 1.X
OS details: Linux 1.3.20 (X86)
hats off to fyodor.... (Score:3, Funny)
(seriously, i'm not making this up. i e-mailed him because he also had an insecure.org license plate holder so that kind of tipped me off. lo and behold, it was him.)
Why is this suddenly a slashdot story? (Score:2)
Woe be to those who are still running old versions of SSH.
Does this detect honeypots? (Score:2)
I can see the beginnings of an arms race here... NMAP developers racing to accurately identify ports and services, and honeypot developers racing to obscure their "honeypotness" while maintaining believable outputs. Seems like two security methods working at cross-purposes.
Just a thought.
GMFTatsujin
Re:How does this reflect on the community? (Score:1, Informative)
Re:hardly useful for 'admin's but for others... (Score:1)
Re:hardly useful for 'admin's but for others... (Score:1)
Re:hardly useful for 'admin's but for others... (Score:2)
Re:hardly useful for 'admin's but for others... (Score:1)
Re:hardly useful for 'admin's but for others... (Score:2, Insightful)
you're obviously not an admin, and obviously don't do any serious work with computers at all.
Re:oops, they did it again.... (Score:4, Insightful)
There's no way to support this many machines alone. It's simply an impossible workload. As for making the lives of SKs easier, yep, it'll help em target machines, no doubt about it. There's a positive though, at least this tool is public and we're all aware of it now. It's the tools I don't know about that worry me.
Re:oops, they did it again.... (Score:1)
I'm sorry if SOME of you guys work in tiny IT shops and don't know what it's like to support a huge corporation with global network and a follow-the-sun support model. You come do my job for a while, then maybe you'll see what a pain in the ass constant patching can be.
Re:oops, they did it again.... (Score:2)
I realize that the "Powers that Be" (layoffs, etc) are making your job next to impossible, but it's tools like nmap (and other "hacker" tools) that take up the slack when the vendor fails to supply a reasonable toolkit.
If something like this can help you stay one step ahead of the script kiddies, you should be thankful for it.
Re:oops, they did it again.... (Score:1)
When you support 10,000 servers and 30,000 desktops for UNIX alone..