By Nathan Willis
July 11, 2012
The Tor Project recently discovered a security flaw in a line of
commercial deep packet inspection (DPI) products; a flaw which an
attacker could use to intercept the SSL connections of third-party
users. The manufacturer of the product quickly pushed out an update,
but DPI products from other vendors may still be affected.
Runa Sandvik wrote
about the discovery on the Tor blog in a post dated July 3. According
to that account, the discovery took place the week before, when a Tor
user in Jordan contacted the project to report seeing a fake
certificate for torproject.org, issued by Cyberoam. The project initially
thought that a certificate authority (CA) might have been compromised
(as in the DigiNotar incident in
2011), but upon investigation, that was not the case.
Cyberoam is a network security vendor that sells DPI devices. The
user in Jordan was not witnessing an attack, but rather the evidence
that the SSL connection to Tor had been intercepted by a Cyberoam DPI
device. It is not clear from Sandvik's post whether the user was
behind a corporate Cyberoam barrier (in which case he or she may have
explicitly or implicitly agreed to the DPI interception) or was being
monitored unwillingly. Whatever the circumstances, though, it was not
the DPI filtering that constituted the security vulnerability.
CA certificate woes and default settings
Cyberoam's devices monitor SSL connections without generating browser
errors by having the user install a Cyberoam CA certificate into the
browser's trusted certificate store. Subsequently, the device
intercepts SSL connections, issuing generated certificates (signed by the
now-trusted Cyberoam CA certificate) for the requested sites and
establishing the server-side connection on the other side of
the intercept. This had happened to the user in Jordan, which was why
he or she saw a Cyberoam-issued certificate for the torproject.org
domain. The problem is that all Cyberoam devices ship with identical
CA certificates and identical private keys. Consequently, Sandvik
wrote, anyone can use a Cyberoam device to intercept traffic on any
other Cyberoam-filtered network, or even extract the key and install
it on other devices and use those to intercept traffic. In either
case, the users would not detect that their traffic was being
monitored by someone other than the approved authority.
Sandvik and Ben Laurie wrote a security advisory (CVE-2012-3372)
about the issue and notified Cyberoam before publishing the blog
post. Cyberoam wrote a post
on its own blog detailing its response to the alert. According to
Cyberoam's account, each affected device is capable of generating its
own CA certificate, and the certificate shared by all devices was
merely a "default." After Tor's alert, the company pushed out an
update to all of its devices instructing administrators to generate a
unique CA certificate, and it "forcefully generated unique keys
for all the remaining appliances." The wording in that section
is a bit ambiguous, but it appears that device administrators were
encouraged to generate a new CA certificate locally, and those that
did not do so quickly were updated to a unique certificate generated
at Cyberoam, with further instructions on local key generation.
Cyberoam (admirably) thanked Tor for the vulnerability report, and
also said that the CA certificate update makes its DPI products
significantly more secure than its competitors'.
For the update to take effect, users on a Cyberoam-monitored network
will need to import the newly-generated CA certificate into their
browser's trusted certificate store. Whether they do so willingly
depends on whether they have consented to be monitored by the device.
For its part, Tor expresses little sympathy for organizations using
DPI to intercept users' connections, repeatedly calling them "victims"
in the security alert text, and adding the footnote: "In the
corporate setting, willing victims are often known as
'employees'. Unwilling victims should not, of course, install the CA
certificate, nor should they click through certificate
warnings." On the other hand, the alert calls Cyberoam's
approach "the only legitimate way to use these
devices," in contrast with monitoring schemes that require
persuading a CA to issue fake certificates.
Security impact
Without knowing the details of the user who reported the issue
initially, it is impossible to say whether or not Cyberoam devices are
being used to monitor Internet users without their consent. There are
legitimate uses for DPI, of course, such as protecting a corporate
network. But the report hints at a different scenario, because the
user reported that common web sites (such as Gmail and Twitter) showed
the correct CA certificates — suggesting that
torproject.org was being selectively targeted for
interception.
In comments on the Tor blog, some readers questioned
whether the case was one of consenting monitoring done at an employer,
or unwilling surveillance. One anonymous reader commented that the
Cyberoam devices in question only intercept SSL connections to check
for malware, and that Tor had "raised a non-existing
vulnerability." Sandvik replied that there were two separate
issues at play: the use of the device to intercept
torproject.org traffic , and the fact that all Cyberoam
devices shipped with the same CA certificate.
Cyberoam's response should seal the second issue, assuming that future
devices ship only with unique keys. A master CA certificate
controlled by Cyberoam could still be used to sign the individual
device keys. In that case, Cyberoam might sign a separate
"intermediate" CA certificate for each individual device. Thus the
users only need to install the original Cyberoam certificate in the
browser's trust store, and the certificate trust chain still
validates. If device administrators have to re-generate a new CA
certificate for the device, they must have Cyberoam sign it, but they
do not have to have every user install something new.
But as Sandvik asked in the comment thread, "How
can you be sure that the device being used in this case is not doing
DPI, but 'just' HTTPS scanning for antivirus?" Implicitly, the
answer is "you can't," which is one of the fundamental justifications
for Tor and similar privacy-protecting projects. How the user in
Jordan came to be behind a Cyberoam scanning device is unknown, but if
he or she agreed to have web traffic monitored, particularly to the
point of manually installing a CA certificate in the browser, then
there is little or nothing to prevent the monitoring party from
engaging in all sorts of mischief. Although, in an interesting side
note, several anonymous commenters on the Tor blog posted what they
claim to be the Cyberoam devices' default private key. So even if few
people learn a lesson about the dangers of consenting to traffic
monitoring, perhaps a few others will learn a lesson about leaving
the default security settings in place.
Comments (29 posted)
Brief items
Popular pet names Rover, Cheryl and Kate could be a thing of the
past. Banks are now advising parents to think carefully before naming their
child’s first pet. For security reasons, the chosen name should have at
least eight characters, a capital letter and a digit. It should not be the
same as the name of any previous pet, and must never be written down,
especially on a collar as that is the first place anyone would
look. Ideally, children should consider changing the name of their pet
every 12 weeks.
[...]
We tried to call Barclays’ security expert R0b Ste!nway for a comment, but he was not available for 24 hours, having answered his phone incorrectly three times in succession.
--
NewsBiscuit
A group of researchers led by Professor Todd Humphreys from the University of Texas at Austin Radionavigation Laboratory recently succeeded in raising the eyebrows of the US government. With just around $1,000 in parts, Humphreys’ team took control of an unmanned aerial vehicle owned by the college, all in front of the US Department of Homeland Security.
After being challenged by his lab, the DHS dared Humphreys’ crew to hack into a drone and take command. Much to their chagrin, they did exactly that.
--
RT
Just like the huge black eye that _every major US telecom company_ got
when they got caught colluding with the NSA to spy on Americans in
obvious violation of US law? You'll recall that it was such a *huge* PR
disaster... that they're all still doing it today(!), that Congress
retroactively changed the law(!), and that the whistleblower was
indicted for espionage(!).
I agree that Intel's hardware is very probably not backdoored, but
that's simply not a standard by which threats should be measured in this
field. Treating a backdoor scenario as outside the realm of possibility
based on appeals to reputation given such obvious, massive, and recent
precedent to the contrary is... not a typical security mindset, to put
it mildly.
--
Matt Mackall
Comments (1 posted)
New vulnerabilities
backuppc: cross-site scripting
| Package(s): | backuppc |
CVE #(s): | CVE-2011-4923
|
| Created: | July 9, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the Mageia advisory:
Cross-site scripting (XSS) vulnerability in View.pm in BackupPC 3.0.0,
3.1.0, 3.2.0, 3.2.1, and possibly earlier allows remote attackers to
inject arbitrary web script or HTML via the num parameter in a view
action to index.cgi, related to the log file viewer |
| Alerts: |
|
Comments (none posted)
ffmpeg: insecure frame threads
| Package(s): | ffmpeg |
CVE #(s): | CVE-2011-3937
|
| Created: | July 9, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the Mageia advisory:
Disallow width/height changing with frame threads |
| Alerts: |
|
Comments (none posted)
jruby: denial of service
| Package(s): | jruby |
CVE #(s): | CVE-2011-4838
|
| Created: | July 10, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the CVE entry:
JRuby before 1.6.5.1 computes hash values without restricting the ability to trigger hash collisions predictably, which allows context-dependent attackers to cause a denial of service (CPU consumption) via crafted input to an application that maintains a hash table. |
| Alerts: |
|
Comments (none posted)
keepalived: denial of service
| Package(s): | keepalived |
CVE #(s): | CVE-2011-1784
|
| Created: | July 10, 2012 |
Updated: | April 10, 2013 |
| Description: |
From the CVE entry:
The pidfile_write function in core/pidfile.c in keepalived 1.2.2 and earlier uses 0666 permissions for the (1) keepalived.pid, (2) checkers.pid, and (3) vrrp.pid files in /var/run/, which allows local users to kill arbitrary processes by writing a PID to one of these files. |
| Alerts: |
|
Comments (none posted)
kernel: denial of service
| Package(s): | kernel |
CVE #(s): | CVE-2012-2744
CVE-2012-2745
|
| Created: | July 10, 2012 |
Updated: | October 24, 2012 |
| Description: |
From the Red Hat advisory:
* A NULL pointer dereference flaw was found in the nf_ct_frag6_reasm()
function in the Linux kernel's netfilter IPv6 connection tracking
implementation. A remote attacker could use this flaw to send
specially-crafted packets to a target system that is using IPv6 and also
has the nf_conntrack_ipv6 kernel module loaded, causing it to crash.
(CVE-2012-2744, Important)
* A flaw was found in the way the Linux kernel's key management facility
handled replacement session keyrings on process forks. A local,
unprivileged user could use this flaw to cause a denial of service.
(CVE-2012-2745, Moderate) |
| Alerts: |
|
Comments (none posted)
kernel: denial of service
| Package(s): | kernel |
CVE #(s): | CVE-2012-3375
|
| Created: | July 10, 2012 |
Updated: | July 13, 2012 |
| Description: |
From the Red Hat advisory:
* The fix for CVE-2011-1083 (RHSA-2012:0150) introduced a flaw in the way
the Linux kernel's Event Poll (epoll) subsystem handled resource clean up
when an ELOOP error code was returned. A local, unprivileged user could use
this flaw to cause a denial of service. (CVE-2012-3375, Moderate) |
| Alerts: |
|
Comments (none posted)
libgdata: insufficient certificate verification
| Package(s): | libgdata |
CVE #(s): | CVE-2012-1177
|
| Created: | July 11, 2012 |
Updated: | August 29, 2012 |
| Description: |
From the Novell bugzilla:
libgdata doesn't validate ssl certificates for all connections |
| Alerts: |
|
Comments (none posted)
mod_security: modsecurity multipart bypasses
| Package(s): | mod_security |
CVE #(s): | |
| Created: | July 11, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the Fedora advisory:
ModSecurity Multipart Bypasses fixed by this upstream release. [v2.6.6]
Upgrade to the latest stable upstream release.
Upgraded mod_security package. |
| Alerts: |
|
Comments (none posted)
mod_security_crs: modsecurity core rule set multipart bypasses
| Package(s): | mod_security_crs |
CVE #(s): | |
| Created: | July 11, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the Fedora advisory:
ModSecurity Core Rule Set Multipart Bypasses fixed by this upstream release. [v2.2.5]
Updated spec file.
ModSecurity Rules |
| Alerts: |
|
Comments (none posted)
openjpeg: code execution
| Package(s): | openjpeg |
CVE #(s): | CVE-2012-3358
|
| Created: | July 11, 2012 |
Updated: | July 16, 2012 |
| Description: |
From the Red Hat advisory:
An input validation flaw, leading to a heap-based buffer overflow, was
found in the way OpenJPEG handled the tile number and size in an image tile
header. A remote attacker could provide a specially-crafted image file
that, when decoded using an application linked against OpenJPEG, would
cause the application to crash or, potentially, execute arbitrary code with
the privileges of the user running the application. |
| Alerts: |
|
Comments (none posted)
pidgin: remote code execution
| Package(s): | pidgin |
CVE #(s): | CVE-2012-3374
|
| Created: | July 9, 2012 |
Updated: | March 15, 2013 |
| Description: |
From the Debian advisory:
Ulf Härnhammar found a buffer overflow in Pidgin, a multi protocol instant
messaging client. The vulnerability can be exploited by an incoming
message in the MXit protocol plugin. A remote attacker may cause a crash,
and in some circumstances can lead to remote code execution. |
| Alerts: |
|
Comments (none posted)
pidgin: information disclosure
| Package(s): | pidgin |
CVE #(s): | CVE-2011-4922
|
| Created: | July 10, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the Ubuntu advisory:
Julia Lawall discovered that Pidgin incorrectly cleared memory contents used in
cryptographic operations. An attacker could exploit this to read the memory
contents, leading to an information disclosure. This issue only affected Ubuntu
10.04 LTS. |
| Alerts: |
|
Comments (none posted)
python3: data leaks, memory damage, and crash
| Package(s): | python3 |
CVE #(s): | CVE-2012-2135
|
| Created: | July 11, 2012 |
Updated: | August 13, 2012 |
| Description: |
From the Novell bugzilla:
In the utf-16 decoder after calling unicode_decode_call_errorhandler
aligned_end is not updated. This may potentially cause data leaks,
memory damage, and crash. The bug introduced by implementation of the
issue #4868. In a similar situation in the utf-8 decoder aligned_end
is updated.
|
| Alerts: |
|
Comments (none posted)
wireshark: denial of service
| Package(s): | wireshark |
CVE #(s): | CVE-2012-3825
CVE-2012-3826
|
| Created: | July 11, 2012 |
Updated: | July 11, 2012 |
| Description: |
From the CVE entries:
Multiple integer overflows in Wireshark 1.4.x before 1.4.13 and 1.6.x before 1.6.8 allow remote attackers to cause a denial of service (infinite loop) via vectors related to the (1) BACapp and (2) Bluetooth HCI dissectors, a different vulnerability than CVE-2012-2392. (CVE-2012-3825)
Multiple integer underflows in Wireshark 1.4.x before 1.4.13 and 1.6.x before 1.6.8 allow remote attackers to cause a denial of service (loop) via vectors related to the R3 dissector, a different vulnerability than CVE-2012-2392. (CVE-2012-3826) |
| Alerts: |
|
Comments (none posted)
xorg-server: code execution
| Package(s): | xorg-server |
CVE #(s): | CVE-2012-2118
|
| Created: | July 10, 2012 |
Updated: | April 11, 2013 |
| Description: |
From the CVE entry:
Format string vulnerability in the LogVHdrMessageVerb function in os/log.c in X.Org X11 1.11 allows attackers to cause a denial of service or possibly execute arbitrary code via format string specifiers in an input device name. |
| Alerts: |
|
Comments (none posted)
Page editor: Jake Edge
Next page: Kernel development>>