<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[ICS - Shodan Blog]]></title><description><![CDATA[The latest news and developments for Shodan.]]></description><link>https://blog.shodan.io/</link><generator>Ghost 0.7</generator><lastBuildDate>Mon, 02 Mar 2026 03:02:42 GMT</lastBuildDate><atom:link href="https://blog.shodan.io/tag/ics/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Don't Be Clever]]></title><description><![CDATA[<p>I've started <a href="https://images.shodan.io">collecting screenshots</a> for a few services, most notably VNC, and something stuck out at me:</p>

<p><img src="https://blog.shodan.io/content/images/2015/09/screenshot-www-shodan-io-2015-09-04-22-18-44.png" alt=""></p>

<p>The top 5 ports where VNC is running with authentication disabled are:</p>

<ol>
<li>5900 (default port): 4,029  </li>
<li><strong>5901</strong>: 3,995  </li>
<li>84: 25  </li>
<li>83: 14  </li>
<li>13579: 7</li>
</ol>

<p>Out of ~8,000 results, 50% of</p>]]></description><link>https://blog.shodan.io/dont-be-clever/</link><guid isPermaLink="false">a13f79f6-4ad2-4bee-bfc4-032d28f86fcc</guid><category><![CDATA[ICS]]></category><category><![CDATA[research]]></category><category><![CDATA[vnc]]></category><category><![CDATA[screenshots]]></category><category><![CDATA[images]]></category><category><![CDATA[modbus]]></category><category><![CDATA[obscurity]]></category><dc:creator><![CDATA[John Matherly]]></dc:creator><pubDate>Sat, 05 Sep 2015 03:48:32 GMT</pubDate><media:content url="http://blog.shodan.io/content/images/2015/09/screenshot-images-shodan-io-2015-09-04-22-46-35.png" medium="image"/><content:encoded><![CDATA[<img src="http://blog.shodan.io/content/images/2015/09/screenshot-images-shodan-io-2015-09-04-22-46-35.png" alt="Don't Be Clever"><p>I've started <a href="https://images.shodan.io">collecting screenshots</a> for a few services, most notably VNC, and something stuck out at me:</p>

<p><img src="https://blog.shodan.io/content/images/2015/09/screenshot-www-shodan-io-2015-09-04-22-18-44.png" alt="Don't Be Clever"></p>

<p>The top 5 ports where VNC is running with authentication disabled are:</p>

<ol>
<li>5900 (default port): 4,029  </li>
<li><strong>5901</strong>: 3,995  </li>
<li>84: 25  </li>
<li>83: 14  </li>
<li>13579: 7</li>
</ol>

<p>Out of ~8,000 results, 50% of the results came from services that were operating VNC on a non-standard port. It's not unusual to see common services running on different ports, but that was a surprising amount. My guess is that a lot of people change the default port thinking that it will hide their service. Because Shodan scans for 250+ different ports however, there's a small chance that Shodan will discover it anyways. And for a lot of the popular protocols, Shodan actually also crawls for one-off ports (thank you to <a href="https://twitter.com/Viss">@Viss</a> for that idea).</p>

<p>I've seen this sort of behavior in other services as well, this isn't limited to VNC. If you've read my previous blog posts this might sound familiar to you. In fact, I observed much of the same when <a href="https://blog.shodan.io/hiding-in-plain-sight/">looking at SSH</a>. For SSH, the choice of ports is a bit wider but in general people don't work well as random number generators.</p>

<p>Furthermore, this sort of behavior can be observed across the industries. For example, you might know that Shodan crawls the Internet for industrial control systems (ICS). One of the most popular protocols in ICS is called Modbus that runs on port 502. At the moment, there are about <a href="https://www.shodan.io/search?query=port%3A502">17,000 devices</a> listening to Modbus on the default port. It turns out there are also <a href="https://www.shodan.io/search?query=port%3A503">700 devices</a> listening on port 503, again a one-off sort of situation.</p>

<p><img src="https://blog.shodan.io/content/images/2015/09/screenshot-www-shodan-io-2015-09-04-22-33-29.png" alt="Don't Be Clever"></p>

<p>If you're looking to hide your service putting it on a different port is a temporary band-aid at best and a false sense of security more than anything.</p>]]></content:encoded></item><item><title><![CDATA[Taking Things Offline is Hard]]></title><description><![CDATA[<p>Shodan has been in the news for the past few years largely due to the discoveries that security researchers have made with it. Whether it's <a href="https://www.shodan.io/search?query=auther+camera">webcams</a> or <a href="https://www.shodan.io/search?query=title%3A%22xzeres+wind%22">wind farms</a> there isn't a shortage of things that get connected to the Internet every day. And every time these discoveries are announced</p>]]></description><link>https://blog.shodan.io/taking-things-offline-is-hard/</link><guid isPermaLink="false">d3d4da59-22c4-4977-804a-55808924ab57</guid><category><![CDATA[ICS]]></category><dc:creator><![CDATA[John Matherly]]></dc:creator><pubDate>Sat, 13 Jun 2015 01:29:36 GMT</pubDate><media:content url="https://static.shodan.io/shodan/img/categories/ics/ics.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://static.shodan.io/shodan/img/categories/ics/ics.jpg" alt="Taking Things Offline is Hard"><p>Shodan has been in the news for the past few years largely due to the discoveries that security researchers have made with it. Whether it's <a href="https://www.shodan.io/search?query=auther+camera">webcams</a> or <a href="https://www.shodan.io/search?query=title%3A%22xzeres+wind%22">wind farms</a> there isn't a shortage of things that get connected to the Internet every day. And every time these discoveries are announced the news article will end by saying that the relevant authorities have been notified, especially in the case of industrials control systems. Most readers assume that since the problem has been identified the fix would be straight-forward - just take the system off the Internet!</p>

<blockquote>
  <p>Why is this on the Internet?!</p>
</blockquote>

<p>What isn't made clear to a lot of people is that finding out who owns some of these devices can be very difficult and time-consuming. For example, lets take a look at the results for one of the most popular industrial control system protocols: <a href="https://www.shodan.io/search?query=port%3A502">Modbus</a>. There are roughly 12,500 results at the moment and a banner looks like:</p>

<p><img src="https://blog.shodan.io/content/images/2015/06/download.png" alt="Taking Things Offline is Hard"></p>

<p>The given device doesn't include any information on the model/ firmware its running and all we can tell based on its IP is that it's located in Russellville, USA. The IP address is owned by the CenturyLink ISP so that doesn't tell us much more about which business is actually operating the device. When you look at <a href="https://www.shodan.io/report/oFaemXkJ">Modbus results in aggregate</a> the general issue becomes clear:</p>

<p><img src="https://blog.shodan.io/content/images/2015/06/ModBUS-2015-06-13---Shodan.png" alt="Taking Things Offline is Hard"></p>

<p>A huge amount of industrial control systems are located on mobile networks. For Modbus, it looks like 10% of devices are on the Verizon Wireless network! With websites you usually have Whois information or even a contact page that lets you notify the owner if a security problem is found, but that doesn't exist for the vast majority of non-web devices/ services. So when it comes to tracking down who owns the device you're faced with the problems that:</p>

<ol>
<li>The device IP doesn't tell you anything about who owns it  </li>
<li>The location of the device is very rough and not always reliable  </li>
<li>The data the device returns doesn't tell you who made or installed it</li>
</ol>

<p>I think a lot of people overestimate the capabilities that exist to actually track down who owns/ operates Internet-connected control systems but hopefully I've shown at least a few issues that make it surprisingly hard to take these things offline.</p>]]></content:encoded></item><item><title><![CDATA[State of Control Systems in the USA]]></title><description><![CDATA[<p>I've recently added the ability to search for devices in Shodan based on the state they're located in. This provides the interesting possibility to start comparing the security posture of US states by looking at what sort of things they expose publicly. To start off, I will be taking a</p>]]></description><link>https://blog.shodan.io/state-of-control-systems-in-the-usa-2015-05/</link><guid isPermaLink="false">fec818c5-253e-4dff-bf12-98e0191714cf</guid><category><![CDATA[ICS]]></category><category><![CDATA[research]]></category><dc:creator><![CDATA[John Matherly]]></dc:creator><pubDate>Fri, 15 May 2015 00:54:36 GMT</pubDate><media:content url="https://static.shodan.io/shodan/img/categories/ics/ics.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://static.shodan.io/shodan/img/categories/ics/ics.jpg" alt="State of Control Systems in the USA"><p>I've recently added the ability to search for devices in Shodan based on the state they're located in. This provides the interesting possibility to start comparing the security posture of US states by looking at what sort of things they expose publicly. To start off, I will be taking a look at how prevalent industrial control systems (<strong>ICS</strong>) are in the various states.</p>

<p>Shodan currently crawls for roughly <a href="https://www.shodan.io/explore/category/industrial-control-systems">15 different ICS protocols on more than 20 ports</a> and within the past week or so has discovered ~40,000 of them that are publicly accessible on the Internet worldwide. I presented on a few of these protocols at <a href="https://www.4sics.se">4SICS</a> in October 2014, and you can <a href="https://icsmap.shodan.io/">download the data</a> and <a href="https://imgur.com/a/v3NU9">view the maps</a> that were generated for the talk.</p>

<p><img src="https://static.shodan.io/4sics/icsmap.png" alt="State of Control Systems in the USA"></p>

<p>Lets start taking a look at the US in particular though: so far in May Shodan has discovered <strong>20,445 ICS devices in the US</strong>. This is definitely a lower bound and more will be discovered until the end of the month (many ICS devices have high latencies - more on that later).</p>

<p><img src="https://blog.shodan.io/content/images/2015/05/usa-ics-ports.png" alt="State of Control Systems in the USA"></p>

<p>The most popular protocol is Tridium's Fox, followed by BACnet and Modbus. Fox and BACnet are commonly used by building management systems (BMS), while Modbus is used across a wide range of products. The full Top 10 Protocols are as follows:</p>

<ol>
<li><strong>Tridium Fox</strong>: 7,706  </li>
<li><strong>BACnet</strong>: 4,525  </li>
<li><strong>Modbus</strong>: 1,625  </li>
<li><strong>EtherNet/IP</strong>: 1,578  </li>
<li><strong>ProConOS</strong>: 1,018  </li>
<li><strong>General Electric</strong>: 956  </li>
<li><strong>OMRON FINS</strong>: 777  </li>
<li><strong>Mitsubishi</strong>: 615  </li>
<li><strong>Red Lion</strong>: 551  </li>
<li><strong>Codesys</strong>: 407</li>
</ol>

<p>By faceting on <strong>state</strong> using the Shodan API we can get a breakdown of ICS devices for each US state:</p>

<iframe style="width:100%;height:400px;border:0;" src="https://docs.google.com/spreadsheets/d/1iI7lEtE33Bkam6CF-RtAzSqVepsPQwGAjchMeLv8uzQ/pubchart?oid=1480265085&amp;format=interactive"></iframe>

<p>The above map chart shows a breakdown of which states have the most ICS devices on the Internet. As you'd probably expect the larger, more populous states also tend to have more devices online:</p>

<ol>
<li><strong>CA</strong>:    2328  </li>
<li><strong>TX</strong>:    1422  </li>
<li><strong>NY</strong>:    739  </li>
<li><strong>MA</strong>:    559  </li>
<li><strong>IL</strong>:    552  </li>
<li><strong>PA</strong>:    482  </li>
<li><strong>OH</strong>:    466  </li>
<li><strong>NJ</strong>:    465  </li>
<li><strong>FL</strong>:    416  </li>
<li><strong>MI</strong>:    390</li>
</ol>

<p>Bigger states have more people, more devices and therefore more control systems required to provide services. This means larger states would always be at the top of any ICS ranking, which means it's not entirely fair to compare states based on absolute numbers. So lets normalize the results and look at states based on the % of devices in the state that are control systems:</p>

<p><img src="https://blog.shodan.io/content/images/2015/05/ics-percentage.png" alt="State of Control Systems in the USA"></p>

<p>And now we get a slightly different picture. Maine is at the top of the list with 0.23% of the state's devices being industrial control systems on the Internet, followed by Hawaii (0.19%) and Nebraska (0.17%). The top 10 are:</p>

<ol>
<li><strong>Maine</strong>: 0.23%  </li>
<li><strong>Hawaii</strong>: 0.19%  </li>
<li><strong>Nebraska</strong>: 0.17%  </li>
<li><strong>Vermont</strong>: 0.17%  </li>
<li><strong>West Virginia</strong>: 0.16%  </li>
<li><strong>Montana</strong>: 0.14%  </li>
<li><strong>Rhode Island</strong>: 0.14%  </li>
<li><strong>Iowa</strong>: 0.13%  </li>
<li><strong>Arkansas</strong>: 0.12%  </li>
<li><strong>Washington DC</strong>: 0.11%</li>
</ol>

<p>If you want to analyze the results further or look at the data yourself, check out the <a href="https://developer.shodan.io/api">Shodan API documentation</a> for information on what you can search and facet on. There are also a bunch of libraries available in Python, Ruby, NodeJS and Go to make getting started easy.</p>

<p>I will be keeping track of how these numbers change in the coming months/ years, especially as federal policies change and cyber insurance becomes more popular.</p>

<p>PS: If your browser supports WebGL you can also check out the following visualization that was generated for my talk at the Department of Homeland Security ICS Joint Working Group conference in June 2014: <a href="https://ics-radar.shodan.io/">https://ics-radar.shodan.io/</a></p>]]></content:encoded></item><item><title><![CDATA[Why Control Systems Are On the Internet]]></title><description><![CDATA[<p>A few weeks ago I asked people on Twitter what sort of new ports/ services they'd like me to add to Shodan. I received a lot of awesome feedback which resulted in Shodan now crawling for more than 170 ports (!!!). One of those requests was for the FINS protocol created</p>]]></description><link>https://blog.shodan.io/why-control-systems-are-on-the-internet/</link><guid isPermaLink="false">e0f9c381-3282-4668-a8e7-bcccbf343150</guid><category><![CDATA[omron]]></category><category><![CDATA[FINS]]></category><category><![CDATA[ICS]]></category><category><![CDATA[SCADA]]></category><category><![CDATA[Internet of Things]]></category><category><![CDATA[banner]]></category><dc:creator><![CDATA[John Matherly]]></dc:creator><pubDate>Mon, 09 Feb 2015 08:40:00 GMT</pubDate><content:encoded><![CDATA[<p>A few weeks ago I asked people on Twitter what sort of new ports/ services they'd like me to add to Shodan. I received a lot of awesome feedback which resulted in Shodan now crawling for more than 170 ports (!!!). One of those requests was for the FINS protocol created by <a href="http://www.omron247.com/">Omron</a>:</p>

<p><img src="https://shodanio.files.wordpress.com/2015/02/omronrequest.png" alt=""></p>

<p>By the way, I'm always looking to add more ports to Shodan so if there's something you'd like to see me add just let me know which port and protocol you're interested in! Anyways, I did some quick Google-ing to learn more about this FINS protocol and I stumbled across the following advice in the <a href="https://echannel.omron247.com/marcom/pdfcatal.nsf/0/7CC1E9D8D2A1C3BF862573760063920C/$file/InternetAccessToPLC_whitePaper_en_200910.pdf">official Omron documentation</a> (PDF):</p>

<p><img src="https://pbs.twimg.com/media/B8Jo_RJCIAAAWVN.png:large" alt=""></p>

<p>Just to reiterate: they're saying that because their device (Omron PLC) isn't a Windows-based operating system that makes it impenetrable to the standard hacking methods. And I'm not sure what they mean with the following sentence about not responding to "standard ethernet protocol commands", since the FINS protocol in this case operates over UDP and/ or TCP. Either way, this is a good example of why many control systems can be found on the Internet. This document is a few years old now (released in 2009) so Omron as a company might've improved their stance on Internet-security, but control systems are a slow-moving world and this sort of mentality has lingered around for a long time.</p>

<p>So what about the initial request to add Omron FINS to Shodan? After reviewing the pcaps for Wireshark and trying to find a simulator, I hit a road block and stopped making progress. Fortunately, <a href="https://twitter.com/sjhilt">Stephen Hilt</a> picked it up as a challenge and within a few days was able to create fully-working Nmap scripts for both <a href="https://github.com/digitalbond/Redpoint/blob/master/omrontcp-info.nse">TCP</a> and <a href="https://github.com/digitalbond/Redpoint/blob/master/omronudp-info.nse">UDP</a> versions of the Omron FINS protocol. If you're interested in doing ICS analysis with Nmap, that should be your goto location for getting started. Thanks to Stephen's work, I was able to convert the NSEs into Python scripts for my crawler and it's now possible to find Omron FINS devices on the Internet via Shodan:</p>

<p><a href="https://www.shodan.io/search?query=port%3A9600+response+code">port:9600 response code</a></p>

<p><img src="https://shodanio.files.wordpress.com/2015/02/omron.png" alt=""></p>

<p>The data is still flowing in so the results are on the lower-bound at the moment, but it's been added to the list of services that Shodan permanently crawls for to keep track of how the exposure of these devices changes over time.</p>

<p>PS: If there is a port/ protocol that you'd like to see in Shodan please email me the information to <a href="mailto:jmath@shodan.io">jmath@shodan.io</a></p>]]></content:encoded></item></channel></rss>