Finding Exposed Devices On Your NetworkWhen browsing through SHODAN, it never ceases to amaze me what I can find. How is it that people think it's okay to leave their printers, routers, fiber channel switches, and industrial control systems completely open to the Internet?
When browsing through SHODAN, it never ceases to amaze me what I can find. How is it that people think it's okay to leave their printers, routers, fiber channel switches, and industrial control systems completely open to the Internet?In case you're not sure what SHODAN is, I've mentioned SHODAN a few times in previous articles and blogs like "Gaining A Foothold By Exploiting VxWorks Vulns." It's been referred to as a rainbow table for Internet-accessible computers because it provides a searchable index of service banners retrieved from HTTP, HTTPS, FTP, SSH, and telnet services on the Internet without the need to do any of your own scanning.
When I was looking at the VxWorks vulnerability, I found vulnerable printers, network switches, fiber channel switches, and industrial control systems (or SCADA) equipment through some simple searches that are mentioned in this blog.
So I'm left wondering who thought it was a good idea to put these devices on the Internet without some sort of protection in place. Is there no change management procedures at these organizations where someone should be monitoring what's taking place on the network? Surely someone has to provision the public IP for use for the devices. Why aren't they asking what the IP will be used for and if the device is being locked down?
Sure, you can use SHODAN to check your netblocks for exposed devices that you might not be aware of, but why not be a little more proactive? Isn't proactive security better than reactive security? Or more to the point, wouldn't you rather find out about a new exposed device on you network before an attacker does?
There are a couple ways to go about this. The first is setting up some simple network scans using Nmap. It could be done daily or weekly, but I wouldn't recommend going as long as a month in between scans. Be sure to set up the scans to save the output to the Nmap XML format. Once you have more than one scan, you can use the Ndiff utility to compare the two scans and determine if there are any state changes for hosts, ports, service versions, operating systems, and the output of scripts.
The Nmap route is cheap and easy to implement, but if you have a nice netflow analysis solution like Lancope's StealthWatch, it can be done even easier. All of the netflow monitoring tools I've seen have an alert option that will notify admins when a new host is seen communicating on the network. I've also seen alerts for when a host begins acting as a server for the first time. For example, if a host is on the network and begins accepting and responding to requests on TCP port 443 for the first time, admins will receive an alert.
Security teams are often the last ones to know when new systems are brought online, but they don't have to be. Using the tools above, security can know when new systems show up on the network and take appropriate actions such as a vulnerability scan, and confirm that the device is authorized and not some rogue wireless router an employee decided to plug in so they could use their new iPad.
John H. Sawyer is a senior security engineer on the IT Security Team at the University of Florida. The views and opinions expressed in this blog are his own and do not represent the views and opinions of the UF IT Security Team or the University of Florida. When John's not fighting flaming, malware-infested machines or performing autopsies on blitzed boxes, he can usually be found hanging with his family, bouncing a baby on one knee and balancing a laptop on the other. Special to Dark Reading.