Klaus Knopper answers your Linux questions
Ask Klaus
Answers to your Linux questions.
Shellshock
What about the Shellshock bug? Do I need to update Bash immediately? How can I know if my computer is vulnerable to a remote attack?
Because most distros have an easy-to-use packaging and update system, you should definitely update bash
. The commands in Debian-based distros would be
sudo apt-get update sudo apt-get install bash
which will pull the bug-fixed bash
package from the official repository and install it.
The more exciting question is: What can happen if you don't upgrade Bash? Recent news reported a lot of hype about the Bash bug and even made comparisons in severity with the Heartbleed SSL bug (which is totally different, of course). Most articles made it look like everyone with a Bash shell installed should immediately disconnect from the Internet. Which is not true, of course.
The ShellShock bug [1] is simply a programming error in the widely used Bash system shell when parsing shell variables. Storing a shell function in a variable can lead to execution of code if the function definition ends with a semicolon followed by additional commands. Alone, this unexpected behavior is not a remotely exploitable bug, because it affects shells running locally on your computer (i.e., if you feed the shell such a variable definition, the extraneous commands would be executed with permissions of the user calling the shell). You could as well have typed the command by yourself. It does not matter whether or not the computer is connected to the Internet.
Remote attack possibilities of Shellshock arise if two conditions are met:
- 1. Your computer is running a remote accessible service, like the Apache web server, that additionally has been configured to provide remote execution of a Bash shell – for example, through the CGI interface.
- 2. The shell, which has become remotely accessible by this, can be fed unfiltered variable definitions from a remote client.
Apart from a web server with CGI turned on (which is not the default setting), the DHCP client, which also acts a server taking care of your computer's connectivity, could be subject to an attack if it tries to store manipulated information in Bash shell variables. However, for a successful attack, the DHCP server, which provides addresses and network setup parameters (i.e., your home router, WLAN access point, dialup modem, or another computer in your network that can act as a DHCP server) needs to be compromised first to deliver manipulated data.
In other words, if your home network is already compromised, it may be possible for the attacker to try to compromise other computers in your home network by checking for vulnerable DHCP clients calling a Bash shell. Well, if your router is already lost, there are a many more attacks possible, of course, but removing the possibility to do this in the DHCP-client-calling-Bash case is still advisable.
Some tests can tell you which (if any) of the known bugs your Bash features [2].
While you are updating Bash, you should also check which remote accessible services are running on your computer and decide if you really need them. You can get a list of servers, together with the running program names, on your computer using this command (see Listing 1 for sample output):
Listing 1
Output of sudo netstat -tulpen.
sudo netstat -tulpen
Programs running only on interface 127.0.0.1 (localhost) are usually harmless, whereas you should double-check everything running on the "match-all" address 0.0.0.0, because these are potentially accessible from the Internet.
The worldwide-open ports (marked in yellow in Listing 1) include an NFS server and LibreOffice remote presentation control port, which should be checked. The DHCP client (dhclient, marked in green) ports need to be open for renewal or termination notifications and transfer of update notifications from the DHCP server. Locally running CUPS and name server cache (named) are OK.
Flash Bug?
Installation of the Flash player does not work using the browser. Is this a bug?
Some websites claim that you can install the proprietary Flash plugin for displaying flash web content as a simple browser extension. However, it's actually not that easy, because security restrictions keep your browser from installing programs and libraries system-wide.
Many websites formerly requiring Flash, now work without special plugins using HTML5 canvases, and the browser will take care of starting the correct video player.
However, older content may still require the proprietary Flash browser plugin. On Debian-based systems, you can install it with
sudo apt-get update sudo apt-get install -t unstable flashplugin-nonfree
or try to update with
sudo update-flashplugin-nonfree --install
or you can check the plugin status with
sudo update-flashplugin-nonfree --status
You might also consider checking whether the alternative free Flash video plugin works for you, which is the package browser-plugin-lightspark in Debian.
Infos
- Shellshock: http://en.wikipedia.org/wiki/Shellshock_(software_bug)
- Bash tests: https://shellshocker.net/
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
NVIDIA Released Driver for Upcoming NVIDIA 560 GPU for Linux
Not only has NVIDIA released the driver for its upcoming CPU series, it's the first release that defaults to using open-source GPU kernel modules.
-
OpenMandriva Lx 24.07 Released
If you’re into rolling release Linux distributions, OpenMandriva ROME has a new snapshot with a new kernel.
-
Kernel 6.10 Available for General Usage
Linus Torvalds has released the 6.10 kernel and it includes significant performance increases for Intel Core hybrid systems and more.
-
TUXEDO Computers Releases InfinityBook Pro 14 Gen9 Laptop
Sporting either AMD or Intel CPUs, the TUXEDO InfinityBook Pro 14 is an extremely compact, lightweight, sturdy powerhouse.
-
Google Extends Support for Linux Kernels Used for Android
Because the LTS Linux kernel releases are so important to Android, Google has decided to extend the support period beyond that offered by the kernel development team.
-
Linux Mint 22 Stable Delayed
If you're anxious about getting your hands on the stable release of Linux Mint 22, it looks as if you're going to have to wait a bit longer.
-
Nitrux 3.5.1 Available for Install
The latest version of the immutable, systemd-free distribution includes an updated kernel and NVIDIA driver.
-
Debian 12.6 Released with Plenty of Bug Fixes and Updates
The sixth update to Debian "Bookworm" is all about security mitigations and making adjustments for some "serious problems."
-
Canonical Offers 12-Year LTS for Open Source Docker Images
Canonical is expanding its LTS offering to reach beyond the DEB packages with a new distro-less Docker image.
-
Plasma Desktop 6.1 Released with Several Enhancements
If you're a fan of Plasma Desktop, you should be excited about this new point release.