For a two day trip I decided to test using my Android tablet instead of
also taking a laptop, and it worked out okay for the most part.

I was booked to go to Red Hat HQ in Raleigh, NC at the start of August for a
two-day business trip, well more accurately two-days in the office and another
two-days of travelling. I'd usually take my trusty ThinkPad x201 on the trip
with me, it's small and light, but it's battery life isn't so great anymore.
Earlier this year I'd bought an Android tablet, an ASUS Transformer Prime which
with a long battery life would be perfect for movies, but could it replace my
ThinkPad completely and save me travelling with two devices? I worked through
my requirements and it seemed plausible in theory, so here is how it stacked up
in practice:

Connectivity. In the UK you can only buy the Prime with the keyboard
dock, the keyboard dock is great. The in-built wifi was okay for the airport,
hotel, and office. I carry a USB network adapter anyway just in case the hotel
has a physical connection. The wifi signal on the Prime is terrible compared to
other things (like a phone) though, so be prepared to walk around a bit to the
best signal. Partial Win.

In flight entertainment.
I wanted something to watch movies (as US Airways transatlantic don't yet have
seat-back video, really!).
The large internal memory meant I could store a
few films in decent quality to watch and battery life wasn't a problem. I'd used
the tablet continously (without wifi) with the keyboard connected for 6
hours and wasn't even down to 50% battery. Although hardware decoding of videos
was a bit hit-and-miss, and after trying a dozen apps only "BS Player" seemed to
do a reasonable job. A couple of the movies I'd brought had low audio and I
couldn't figure out a way to boost it enough to hear over the noise of the plane,
even with decent in-ear noise blocking headphones. Having the keyboard dock
helped considerably as with the tablet on the tray-table I could set a decent
angle to watch a movie. Win.

Reading material. I had a few papers and magazines to read which I'd
preloaded onto the tablet in PDF format. The Adobe PDF viewer is
acceptable, but it seems a little sluggish for something running on a
quad-core processor, and the screen resolution isn't really good enough
for magazines. The new Transformer Infinity would help here. Partial Win.

Keeping in touch with home. The standard Android GMail app and Facebook
app are okay, and I was able to use GMail talk to have video chats with
my family from both the hotel and office. Win.

Working. With just a couple days away I figured all that was needed was
the ability to read and send email and browse intranet internal web pages. The
standard VPN client on the Prime worked perfectly, and along with the Firefox
beta app gave me perfect access to internal sites. For email I prefer
command-line text-window clients anyway, so I just needed to be able to connect
to a work machine. "Connectbot" on Android works well enough for ssh, and there
are a few forked versions you can get that work with the Prime keyboard. The
AndChat app works for irc. Win.

Presentations. I was giving a presentation at a meeting, but fortunately
they had a laptop set up with the projector and I didn't need to worry about
taking a HDMI lead and hoping it was a recent projector. Unexpectedly I needed
to edit an existing OpenOffice presentation to remove a couple of slides and
then convert to PDF to send to another company. I had to ask a colleague to do
it for me. There are apps that can view OpenOffice files, but no native
OpenOffice suite for android. I'd probably make sure I had access to a VNC
server in the future and use a VNC client for anything like this. Fail.

Privacy. My thinkpad has full-disk encryption but I didn't bother for
Android as I wasn't going to be storing anything sensitive on the machine. My
thinkpad has a 3M privacy filter, which is great for airplanes and airports to
stop people either side and behind you looking at your screen. The same filters
do exist for Android, but are not as straightforward (it of couse only works in
one orientation and attaches like a screen protector, so isn't the easiest thing
to continuously take on and off, and forces you to use your screen in portrait
mode for everything). Fail.

Printing a boarding card. When it was time to return home I was able to
use Firefox to check in online, and printing my boarding passes gave me a PDF
file. I didn't have any printer apps set up, but it was easy enough to email a
PDF to a colleague to print for me. Partial Win.

So in summary I think I got away with it; having just the tablet didn't stop me
doing anything that had to be done on the trip and I'll definately do the same
thing again in the future for very short trips. For anything more than a couple
of days or where connectivity might be an issue I'd miss having a full-featured
OS.

Red Hat Enterprise Linux 5.8 was released today (February 2012), seven
months since the release of 5.7 in July 2011. So let's use this opportunity to
take a quick look back over the vulnerabilities and security updates made in
that time, specifically for Red Hat Enterprise Linux 5 Server.

Errata count

The chart below illustrates the total number of security updates issued for Red
Hat Enterprise Linux 5 Server if you had installed 5.7, up to and including the
5.8 release, broken down by severity. It's split into two columns, one for
the packages you'd get if you did a default install, and the other if you
installed every single package (which is unlikely as it would involve quite a bit of
manual effort to select every one). For a given installation, the number of
package updates and vulnerabilities that affected you will depend on exactly
what packages you have installed or removed.

So, for a default install, from release of 5.7 up to and including
5.8, we shipped 42 advisories to address 118 vulnerabilities. 4
advisories were
rated critical, 13 were important, and the remaining
25 were moderate and low.

Or, for all packages, from release of 5.7 up to and including 5.8, we
shipped 71 advisories to address 177 vulnerabilities. 7 advisories
were rated critical, 16 were important, and the remaining 48 were
moderate and low.

An update to the
MIT krb5 telnet daemon
(December 2011) where
a remote attacker who can access the telnet port of a target machine could use
this flaw to execute arbitrary code as root. Note that the krb5 telnet daemon
is not installed or enabled by default, and the default firewall rules block remote access to
the telnet port. This flaw did not affect the more commonly used telnet daemon distributed in the
telnet-server package.

Updates to
PHP
and
PHP 5.3
(February 2012)
where a remote attacker could send a specially-crafted HTTP request to cause the
PHP interpreter to crash or, possibly, execute arbitrary code. This flaw was
caused by the fix for CVE-2011-4885.

Updates to correct 19 out of the 20 critical vulnerabilities were
available via Red Hat Network either the same day or the next
calendar day after the issues were public. The update to krb5
took 2 calendar days because it was public on Christmas day.

Overall, for Red Hat Enterprise Linux 5 since release until 5.8, 98%
of critical vulnerabilities have had an update available to address
them available from the Red Hat Network either the same day or the
next calendar day after the issue was public.

Other significant vulnerabilities

Although not in the definition of critical severity, also of interest during
this period were a couple of remote denial of service flaws that were easily exploitable:

Previous update releases

To compare these statistics with previous update releases we need
to take into account that the time between each update release is different.
So looking at a default installation and calculating the number of
advisories per month gives the following chart:

This data is interesting to get a feel for the risk of running Enterprise
Linux 5 Server, but isn't really useful for comparisons with other major
versions, distributions, or operating systems -- for example, a default install
of Red Hat Enterprise Linux 4AS did not include Firefox, but 5 Server does. You
can use our public
security measurement data and tools, and run your own custom metrics for any
given Red Hat product, package set, timescales, and severity range of interest.

The inspiration for the Sonik video for Gravitation came from a local friend of
ours, a talented and world-renowned photographer, Adrian Brannan. Ade is famous for
his analogue photo
collages (please give him a 'like' on his Facebook page):

We
often wondered how the same effect would look if rendered with video. With video
you've got the extra element of time, each segment of the mosaic can be running
from a different starting point, with a different speed, and even a different
direction. In addition the segments themselves can move over time. Would this
end up with an effect that was just too much of a mess? Or would it give an
effect that helps visualise the consequence of spacetime?

We started by taking several videos at three different locations over the period
of a year with a Kodak Zi8 camera. A motorway bridge over the M74, just outside
the Buchanan shopping center in Glasgow, and a bench in Strathclyde park.
Lining up the images was done roughly by using lines drawn on acetate stuck over the
camera screen.

The software to do the mosaic effect was hand-written. We used a simple
scripting language, Perl, and the image library GD. On a relatively modern
Linux PC running Fedora 16 we can render near real-time 720p HD even when handling 300
segments of mosaic. A simple language controls which parts of the screen come
from which video, and the first half of the music video uses this with simple
effects having just a few boxes overlayed:

Later in the video things get more
complicated, using randomisation to pick the location and movement of each
segment:

We used our scripts to create a number of ~13 second segments, then put them all
together using kdenlive. The intro and outro were taken from a different video
from a hotel room in London Victoria; the intro using a 'miniature' effect, and
outro using the randomised segments applied to a single video.

When we get notified of a security issue affecting a Red Hat product
in advance we give an acknowledgement in the security advisory and in our
CVE database.

We've now created a
page to give acknowledgements to the companies and individuals that
report issues in our online services, such as finding a cross-site scripting
flaw in a Red Hat web site, or a vulnerability in OpenShift.

We pushed an
update to Flash Player for Red Hat Enterprise Linux Supplementary today, on
a Friday, because it fixed Critical vulnerabilities. But we try not to push
updates on a Friday unless they are critical and already public.

So let's take a look at the most common times and days we push
advisories for Red Hat Enterprise Linux 4, 5, and 6 (including
Supplementary) using a heatmap:

The more advisories pushed for a given date and hour, the darker
that section of the graph is. So the most popular times
for pushing advisories are Tuesdays at 10am and 2pm Eastern US time,
Fridays are pretty light for pushes, and there was nothing
during the weekends. The spread of the graph shows that we push advisories when
they are ready, rather than waiting to a fixed day and time, in order to reduce
the risk to users.

All the data used to create this graph is available as part of
our public metrics.
Thanks to Sami Kerola for
the R code from which I based my
graph generation.

A few weeks ago the 2011 update to
the CWE/SANS Top 25 Most Dangerous
Software Errors was published. As part of our contribution to this
update we analysed the most severe vulnerabilities that affected Red Hat
since the last update and mapped each one to the appropriate Common
Weakness Enumeration (CWE) type.

The table below lists all vulnerabilities which have a CVSS score of 7
or more ('high'), that we fixed in any product during calendar year 2010.

Red Hat Enterprise Linux 5.7 was released last week (July 2011), six months
since the release of 5.6 in January 2011. So let's use this opportunity to take
a quick look back over the vulnerabilities and security updates made in that
time, specifically for Red Hat Enterprise Linux 5 Server.

Errata count

The chart below illustrates the total number of security updates issued for Red
Hat Enterprise Linux 5 Server if you had installed 5.6, up to and including the
5.7 release, broken down by severity. It's split into two columns, one for
the packages you'd get if you did a default install, and the other if you
installed every single package (which is unlikely as it would involve quite a bit of
manual effort to select every one). For a given installation, the number of
package updates and vulnerabilities that affected you will depend on exactly
what packages you have installed or removed.

So, for a default install, from release of 5.6 up to and including
5.7, we shipped 27 advisories to address 109 vulnerabilities. 3
advisories were rated critical, 12 were important, and the remaining
12 were moderate and low.

Or, for all packages, from release of 5.6 to and including 5.7, we
shipped 58 advisories to address 172 vulnerabilities. 4 advisories
were rated critical, 20 were important, and the remaining 34 were
moderate and low.

Critical vulnerabilities

The 4 critical advisories addressed 34 critical vulnerabilities across just 2 different packages:

An update to OpenJDK 6 Java Runtime Environment,
(June 2011)
where a web site hosting a malicious Java applet could potentially run
arbitrary code as the user.

Three updates to Firefox (March 2011, April 2011, June 2011)
where a malicious web site could potentially run arbitrary code as the user
running Firefox.

Updates to correct all of the 34 critical vulnerabilities were
available via Red Hat Network either the same day or the next
calendar day after the issues were public.

Overall, for Red Hat Enterprise Linux 5 since release until 5.7, 97%
of critical vulnerabilities have had an update available to address
them available from the Red Hat Network either the same day or the
next calendar day after the issue was public.

Other significant vulnerabilities

Although not in the definition of critical severity, also of interest during
this period were a couple of flaws that were easily exploitable:

A flaw in dhcp,
CVE-2011-0997,
fixed by
RHSA-2011:0428, where a malicious DHCP
server could send a response that could lead to arbitrary code execution on connecting clients.

Previous update releases

To compare these statistics with previous update releases we need
to take into account that the time between each update release is different.
So looking at a default installation and calculating the number of
advisories per month gives the following chart:

This data is interesting to get a feel for the risk of running Enterprise
Linux 5 Server, but isn't really useful for comparisons with other major
versions, distributions, or operating systems -- for example, a default install
of Red Hat Enterprise Linux 4AS did not include Firefox, but 5 Server does. You
can use our public
security measurement data and tools, and run your own custom metrics for any
given Red Hat product, package set, timescales, and severity range of interest.

Red Hat Enterprise Linux 5.6 was released last week (January 2011), nearly ten
months since the release of 5.5 in March 2010. So let's use this opportunity to
take a quick look back over the vulnerabilities and security updates made in
that time, specifically for Red Hat Enterprise Linux 5 Server.

Errata count

The chart below illustrates the total number of security updates issued for Red
Hat Enterprise Linux 5 Server if you had installed 5.5, up to and including the
5.6 release, broken down by severity. It's split into two columns, one for
the packages you'd get if you did a default install, and the other if you
installed every single package (which is unlikely as it would involve a bit of
manual effort to select every one). For a given installation, the number of
package updates and vulnerabilities that affected you will depend on exactly what you
have installed or removed.

So, for a default install, from release of 5.5 up to and including
5.6, we shipped 57 advisories to address 206 vulnerabilities. 10
advisories were rated critical, 27 were important, and the remaining
20 were moderate and low.

Or, for all packages, from release of 5.5 to and including 5.6, we
shipped 80 advisories to address 300 vulnerabilities. 12 advisories
were rated critical, 34 were important, and the remaining 34 were
moderate and low.

Critical vulnerabilities

The 12 critical advisories addressed 49 critical vulnerabilities across just 3 different packages:

An update to the Exim Internet Mailer,
(December 2010),
where an unauthenticated remote attacker could run arbitrary code as root on a
server.
Exim is not a default package or enabled by default. There is a
public exploit for this issue which worked on Red Hat Enterprise Linux 5.

Updates to correct 48 out of the 49 critical vulnerabilities were
available via Red Hat Network either the same day or the next
calendar day after the issues were public. The update to fix Exim took
3 calendar days from
the date of the report
to the Exim developers.

Overall, for Red Hat Enterprise Linux 5 since release until 5.6, 97%
of critical vulnerabilities have had an update available to address
them available from the Red Hat Network either the same day or the
next calendar day after the issue was public.

Other significant vulnerabilities

Although not in the definition of critical severity, also of interest during
this period were several kernel flaws that where an local user could gain
root privileges. The following had publicly available exploits:

A fix
for CVE-2010-2240
was provided
by RHSA-2010-0661
(August 2010). The public exploit did not work against Red Hat Enterprise
Linux 5, but it may be possible to create one that does.

A fix
for CVE-2010-3904
was provided
by RHSA-2010-0792
(October 2010). The public exploit did not work against Red Hat Enterprise
Linux 5 but it is possible to create one that does.

Previous updates

To compare these statistics with previous update releases we need
to take into account that the time between each update is different.
So looking at a default installation and calculating the number of
advisories per month gives the following chart:

This data is interesting to get a feel for the risk of running Enterprise
Linux 5 Server, but isn't really useful for comparisons with other major
versions, distributions, or operating systems -- for example, a default install
of Red Hat Enterprise Linux 4AS did not include Firefox, but 5 Server does. You
can use our public
security measurement data and tools, and run your own custom metrics for any
given Red Hat product, package set, timescales, and severity range of interest.

Hold on a second. It might be important. I'd better go and read it. Oh it's just a note
confirming some meeting for next week. Deleted. Now, what was I working on?

A few years ago, when I was analysing where my time was going, (and why I was
working 60+ hour weeks), I figured out that the context switching caused by
being unable to concentrate on a task for more than a few minutes was a major
productivity drain.

It's hard to resist a new email. My new cellphone takes great delight in having
'push' email and would really like to beep on each new message I receive. The web
is full of gmail notifier applications designed specifically to interrupt you
to some important new mail. Even my favourite command-line email client, Alpine,
likes to ping you about new mail arriving in your inbox even if you're busy
in some other mailbox or composing a mail.

Alpine ought to have some sort of "don't notify me" option, but in the meantime
I apply the brute-force patch below to disable it.

This 5-minute patch has saved me several hours of task switching
every week, and although this means it can sometimes be an hour or two between
me checking my inbox, no one has really noticed.

Between releases there are lots of changes made to improve security and we've not
listed everything; just a high-level overview of the things we think are most
interesting that help mitigate security risk. We could go into much more
detail, breaking out the number of daemons covered by the SELinux default
policy, the number of binaries compiled PIE, and so on.

Note that this table is for the most common architectures, x86 and x86_64 only; other supported architectures may vary.