Detecting Conficker with Linux Tools
As Linux sysadmins, many of us still need to deal with Windows worms and how they affect our networks. Tomorrow is April 1st, and the Conficker worm will be activating on vulnerable computers everywhere. Here's a quick HOW-TO showing how you can detect compromised and/or vulnerable computers on your network:
There are 2 fairly easy methods available at this late hour.
The first is simple to use, but slow as heck. In the author's defense, it's just a proof of concept. But it works. :) It's written in Python, and has both the python script (which requires the Impacket library) and a self-contained Windows version if you're stuck on a Windows box.
This site has links to both versions, along with some instructions. The website seems to be able to keep up with the traffic it's getting, whereas some other sites are getting crumbled as admins scramble to sniff their networks.
The second method uses a brand spanking new version of NMAP to do the detecting. The advantage is it's much quicker at scanning larger networks. The disadvantage is it requires a bit of commandline fu. Fear not, it's as easy as copy/paste.
First, get the version for your operating system. NOTE: You MUST get nmap-4.85BETA5 because earlier versions won't scan for Conficker.
Once you install nmap, you'll want to run the command:
nmap -PN -d -p445 --script=smb-check-vulns --script-args=safe=1 [network_range]
Where [network_range] is something like 10.10.5.1-255 or even 10.10.0.0/16.
You'll need to look through the results for information like:
Host script results:
| MS08-067: FIXED
| Conficker: Likely INFECTED
|_ regsvc DoS: VULNERABLE
And then fix/patch those hosts. I'd suggest sending the results to a text file, and grepping for the word VULNERABLE or INFECTED -- but those types of instructions are beyond the scope of this quick hack of a post. :)
UPDATE: (Thanks to Matt McMahon)
Great summary, Shawn. Couple of add’l notes. First, the author of the smb-check-vulns script (Ron Bowes) has some very recent updates on his blog and yes, that site is being hit pretty hard right now, don’t expect ninja-like-speed. To even save a visit, I’ll summarize…
The 4.85BETA5 version of nmap does return some false positives and will, under some circumstances, fail to even run the script on machines when it should (that one bit me). The author is keeping the code updated by the minute and has fixed these bugs, but hasn’t (yet) released a BETA6. The easiest way for you to keep up is with his SVN repository. Instructions are on the website above, but in an effort to save mouse-clicks, I’ll copy ‘n’ paste:
svn co –username=guest –password=” \
This is source code and built fine in my Slackware install, YMMV…
Webinar: 8 Signs You’re Beyond Cron
On Demand NOW
Join Linux Journal and Pat Cameron, Director of Automation Technology at HelpSystems, as they discuss the eight primary advantages of moving beyond cron job scheduling. In this webinar, you’ll learn about integrating cron with an enterprise scheduler.View Now!
|Dr Hjkl on the Command Line||May 21, 2015|
|Initializing and Managing Services in Linux: Past, Present and Future||May 20, 2015|
|Goodbye, Pi. Hello, C.H.I.P.||May 18, 2015|
|Enter to Win Archive DVD + Free Backup Solution||May 18, 2015|
|Using Hiera with Puppet||May 14, 2015|
|Urgent Kernel Patch for Ubuntu||May 12, 2015|
- Initializing and Managing Services in Linux: Past, Present and Future
- Dr Hjkl on the Command Line
- Goodbye, Pi. Hello, C.H.I.P.
- Using Hiera with Puppet
- Mumblehard--Let's End Its Five-Year Reign
- Gartner Dubs DivvyCloud Cool Cloud Management Vendor
- Enter to Win Archive DVD + Free Backup Solution
- A More Stable Future for Ubuntu
- Infinite BusyBox with systemd
- It's Easier to Ask Forgiveness...