datasheets.com EBN.com EDN.com EETimes.com Embedded.com PlanetAnalog.com TechOnline.com  
Events
UBM Tech
UBM Tech

Design Article

Basics of embedded firewalls - Part 1: Exploding the myths

Alan Grau, Icon Labs

1/30/2012 11:45 AM EST

A framework for device security

Security for The Internet of Things requires a firewall combined with authentication and encryption, and each plays a distinct role. Authentication and encryption using protocols such as SSL, SSH and more recently IPSec and IPv6, have long been the staple of embedded security. Authentication and encryption provide secure access and communication, but they are not enough. Systems may be deployed with weak or default passwords, passwords can be stolen, and encryption algorithms can be broken.

The role of a firewall in protecting an embedded device is to control what packets are processed by the device, and to provide an audit point to track attacks. An embedded firewall is an endpoint firewall: it resides on the device and is integrated into the TCP/IP stack. This enables the developer to configure the firewall with a set of rules specifying which packets are processed and which are blocked.

Rules can be set up to block or allow packets by IP address, port, protocol, or other criteria. Some firewalls, such as Icon Labs' Floodgate Packet Filter, support advanced rules allowing additional fine-grained control over the filtering process. For example, the firewall in a printer may be configured to allow print commands from any IP address while blocking firmware upgrades unless from a known upgrade server.

An embedded firewall may also provide Stateful Packet Inspection (SPI) and threshold-based filtering. SPI filtering maintains information on the state of the connection and uses that information to distinguish legitimate from malicious packets. Threshold-based filtering maintains statistics on the number of packets received to detect and block DoS attacks.

Since each packet received by the devices passes through the firewall for filtering before being passed up the TCP/IP stack, many attacks are blocked before a connection is even established. This provides a simple, yet effective layer of protection missing from most devices.


Figure 1: By blocking packets at the IP layer, attacks can be blocked before a connection is established.

Blocking attacks with a firewall
In a system without a firewall, a hacker may attempt to remotely access the device using default passwords, dictionary attacks, or stolen passwords. Such attacks are often automated, allowing a huge number of attempts to break the system's password. The same system, with an embedded firewall configured with an IP address whitelist of trusted hosts, will be able to block the attack. The firewall's IP address filter will block the login attempts from the hacker before a login is even attempted because the IP address is not in the whitelist of trusted hosts.

A firewall supporting SPI filtering and complex rules provides for greater flexibility in device configuration. For example, a firewall in a highly secure military device could be configured in to require all communication to be initiated from the device.

Additional rules could be specified allowing a small number of trusted IP addresses to request communication with the device. Only allowing connections initiated by the device, and blocking all communication initiated from the Internet, provides a "lock down mode" for greater security.


Figure 2: A multi-stage filtering engine provides fine-grained control over the packets processed by the embedded device.

Building an embedded firewall
Part 2 of this article discusses requirements, issues, filtering options and, best practices when building embedded firewalls.

About the author:
Alan Grau is President and co-founder of Icon Labs, a leading provider of security software for embedded devices. He is the architect of Icon Labs' award winning Floodgate Firewall. Alan has 20 years of embedded software experience. Prior to founding Icon Labs he worked for AT&T Bell Labs and Motorola. Alan has an MS in computer science from Northwestern University.

References:
1. Source: John Gantz, The Embedded Internet: Methodology and Findings, IDC, January 2009.

2. Source: Cui, Song, Phatap and Stolfo, Brave New World: Pervasive Insecurity of Embedded Network Devices, Intrusion Detection Systems Lab, Columbia University

For more articles like this and others related to designing for the embedded Internet, visit Embedded Internet Designline and/or subscribe to the biweekly Embedded Internet newsletter (free registration).





prabhakar_deosthali

1/31/2012 8:34 AM EST

Embedded devices are the most lean kind of software/hardware systems. It may going too far in putting firewalls, antivirus and all that kind stuff to avoid their hacking.

Instead why not have separate network infrastructure for them which is secure and totally isolated from the normal internet?

Sign in to Reply



alangrau

1/31/2012 12:20 PM EST

You are correct in that embedded devices are lean. An embedded firewall needs to be designed to be fast and small. It does not need to support antivirus filtering (unless it is a windows device), simple rules-based filtering will meet the needs of most embedded devices.

A separate infrastructure that isolates them from the normal Internet is not realistic in all cases. Many devices will be on the Internet and do need some level of protection.

Sign in to Reply



Heng_Lou

1/31/2012 10:54 AM EST

Linux have a very good build-in firewall, that we could just configure it for what ever we need in the Embedded devices.

Sign in to Reply



alangrau

1/31/2012 12:41 PM EST

That assume that the embedded device is using Linux as the operating system - and a lot of devices do not use Linux.

Even if you are using Linux, it is important to understand the requirements of the firewall for the device being built. Does the filtering provided by the Linux firewall provide the best solution? Or would something designed for embedded devices provide a better solution? That really depends on the specific requirements of the device.

Sign in to Reply



Robotics Developer

2/3/2012 1:49 PM EST

I would assume that some embedded devices do not need protection if they do not connect to the internet or other networks. On the other hand there is a need to ensure safe operation for those critical devices (cars come to mind)not "connected" to anything but non the less are life safety related. While having everything "on line/connected" seems like a great idea; my question is why "everything"? We should consider what needs to be connected versus what needs to be programmed or monitored remotely. Then the considerations for each unique system's use can come into play.

Sign in to Reply



alangrau

2/8/2012 9:44 AM EST

One study showed that about half of new embedded devices include some type of communication protocol. The other half are standalone devices that are never connected to any network. The stand alone devices, as you point out, don't require this type of protection. Some cars now provide communication capability and have been hacked. Our view is that any device that communicates needs protection, and we have seen many examples that support this.

Sign in to Reply



Please sign in to post comment

Navigate to related information

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)