Security updates for embedded systems
[Posted September 5, 2006 by corbet]
The
Avaya
S8500 Media Server is a product which "
allows for a distributed
enterprise over an IP infrastructure in the mid-market space (up to 3200
ports)." Whatever that means. It fits in a 1U rack space; it also,
as it happens, runs Linux - Red Hat Enterprise Linux, in particular. So,
when Red Hat recently produced a security update for its kernel, Avaya sent
out
an
advisory of its own. As it turns out, however, Avaya has classified
this set of vulnerabilities as being of "low" concern, so, by the company's
posted policy, there will be no software update coming anytime soon.
Instead, the fixes will be packaged up with the next regular operating
system update.
In the mean time, however, Avaya has a helpful suggestion:
For all system products which use vulnerable versions of the
kernel, Avaya recommends that customers restrict local and network
access to the server. This restriction should be enforced through
the use of physical security, firewalls, ACLs, VPNs, and other
generally-accepted networking practices until such time as an
update becomes available and can be installed
Restricting network access will certainly make a network server product
more secure, but it might just interfere with the tasks said server was
purchased to perform in the first place.
In a separate episode, your editor was recently wandering around on the net
in search of a fix for some obnoxious behavior exhibited by his DSL
router. As it turns out, this router runs Linux.
One can telnet into it and wander around. It's always amusing to discover
that one is running even more Linux systems than had been previously
thought. This one is built upon a MontaVista distribution, and is running
a 2.4.17 kernel.
As LWN readers may have noticed, there have been a few security issues
discovered in the 2.4 kernel after 2.4.17 was released. Quite a few. The
support services sold by MontaVista to its customers must certainly include
security updates, but there does not appear to be any mechanism for getting
those updates through to the end customers who will actually be running
vulnerable software. That is true even in your editor's case, where the
router was obtained directly from the local huge telecom company, which
should have good records regarding the equipment at its customers' homes.
Said large telecom company tends to be held in rather low esteem by its
customers, but, even so, one might expect that it would make a minimal
attempt to keep those customers (who are, in the end, connected to its
network) secure.
The end result is that your editor's DSL router - a Linux system with all
the power BusyBox can deliver - almost certainly contains known security
holes. It has writable flash storage, and can run programs uploaded to
it. This is a rather discouraging situation when one considers that,
for many users, this router will be the front gate to their home or small
business network. The potential for mass mayhem is real.
In both cases, we are seeing situations where Linux systems have been
deployed into security-relevant roles, but the security update mechanism
has not kept up with them. As Linux pushes its way into more low-end
consumer-grade devices, this problem will multiply. Who thinks about
applying security updates to their telephone? And which manufacturers of
cheap consumer electronics will concern themselves with pushing security
updates to their customers?
Linux systems can be quite secure, especially when they are pared down to a
minimal set of functions. But one of the things that keeps Linux secure is
the quick closing of known security holes, and the quick dissemination of
those fixes to deployed Linux systems. Without that support structure in
place, Linux systems (like all others) become vulnerable to holes
discovered after they were built.
Embedded systems tend to lack that support structure. When the system is,
say, a music player with no connection to the wider world, there is no
particular cause for concern. Network-connected devices, however, are
subject to attack. Fortunately, network-connected devices should also be
able to detect and install security updates - though setting up such a
mechanism in a way which does not create privacy concerns can be a
challenge. It should be a solvable problem.
The use of Linux in embedded systems is a cool thing - especially if those
systems are designed to allow improvements by their users. It is one more
step toward World Domination. But that cause could be set back
significantly by a single Linux-based router or cellphone worm. We do not
yet know how to create systems which will remain secure indefinitely into
the future. Until that problem is solved, we must maintain structures
which can close vulnerabilities as they are discovered. Purveyors of
embedded systems ignore that need at their peril.
(
Log in to post comments)