Apr 11, 2014

Heartbleed: What is it?

In the past few days, there has been a lot of information floating around about a bug known as Heartbleed. The bug affects versions of a program called OpenSSL and can allow for severe information disclosure that could be used to nullify the encryption used to connect to affected websites. Here is a simple run-down:


SSL stands for Secure Sockets Layer and it is the primary form of encryption used to connect to secure sites. It's the "S" in "https" when accessing a secure web page (primarily for web sites that require log-in information, such as web mail, social media, banking, and commercial web sites.) Anywhere that you have to give a username and password, or any other sensitive information, you should be using some form of encryption, of which SSL is the most popular form.

*I explain SSL because that is the acronym used in the affected program (OpenSSL) and is the most popularly known such protocol. In actuality it appears that the bug is with the TLS (Transport layer Security) protocol, which is the successor/replacement for SSL. The fundamental concepts are the same.


The encrypted session is set-up and managed by the web site your are connecting to, and different web sites can use different programs to do this. OpenSSL is one such program. It is popular because it is open-source (the source code is freely available) and is free to install and use. Part of the functionality of this program is the use of a "heartbeat" which is a protocol used to determine if the OpenSSL service is functioning. A user sends a special request to the server running OpenSSL, which - if functioning properly - responds to and lets the user know that it is up and running as intended.

The Bug

There is a bug in certain versions of OpenSSL that can be exploited to return contents of the servers memory. When replying to a heartbeat request, the server can be induced (through the use of a specifically crafted malformed request) to return, not just the expected heartbeat value, but up to 64 kilobytes of whatever is in the servers current memory. 64 kilobytes is a lot of information, upwards of 64,000 characters.

An excellent graphical explanation is here:

The Impact

The contents of memory that are returned are random, but can contain any number of sensitive information including:
  • The private keys used by the server to encrypt the communication;
  • Usernames and passwords;
  • Cookies and other session information;
Access to this information could allow a malicious user to impersonate users, hijack sessions, or even decrypt traffic being sent to the web server. Since it is impossible to determine what information may have been disclosed through exploitation of this bug, the confidentiality of communication with affected web sites should be considered completely compromised. While this bug has only recently been publicly identified, it has been around for almost two years, and we can't be sure who has previously known about this bug and kept it to themselves.

What do to?

There is already a patch out that addresses this bug, and any web site owners that use this product should be implementing it, and issuing new certificates for their web server (since the existing ones are already compromised).

Many people have rashly suggested changing all your passwords RIGHT NOW, which is premature. So long as a web site is still vulnerable, your username and password can be compromised any time you use the site. Only after the web site has implemented a patch should you then change your password.

(Some) Affected Sites/Services:
  • Facebook
  • Instagram
  • Pinterest
  • Tumbler
  • Google (including Gmail, Youtube, Wallet, Play, and Apps)
  • Yahoo (including Homepage, Search, Mail, Finance, Sports, Food, Tech, Flickr)
  • Etsy
  • GoDaddy
  • Intuit
  • USAA
  • Dropbox
  • Minecraft
  • OKCupid
All of the above sites have made statements indicating that they were (or may have been) affected by the bug but have implemented measures to fix the vulnerability. While most of the sites say they have seen no evidence of compromise, there is no way to be sure.

(Some) Notable Unaffected Sites/Services:
  • LinkedIn
  • Apple
  • Amazon
  • Microsoft
  • AOL
  • Hotmail/Outlook
  • eBay
  • Groupon
  • Nordstrom
  • PayPal
  • Target
  • Walmart
  • Back of America
  • Capital One
  • Chase
  • Citigroup
  • E*Trade
  • Fidelity
  • PNC
  • Schwab
  • ScotTrade
  • TD Ameritrade
  • TD Bank
  • U.S. Bank
  • Wells Fargo
  • IRS
  • Evernote
All of the above sites have indicated that they were note affected by this vulnerability, either because they are not using OpenSSL or not using a vulnerable version of OpenSSL

  • Twitter
  • Netflix
  • Wordpress
These web sites and services have either not made statements or have provided ambiguous or conflicting information regarding the issue.

Ultimately, you should change the password for any service that was affected by this vulnerability. However, you should only do this when the web site or service has adequately fixed the vulnerability. Unfortunately, the two ways of doing this are not currently 100% reliable. You can rely on statements made by the owner of the web site (and trust that) or attempt to use one of the number of web sites out there purporting to be able to check for vulnerability to this bug. Unfortunatley for the latter, many of these services are not reliable, giving contradictory readings on multiple tries. In this case it is probably best to wait until the web site or service issues a statement indicating that they have resolved the issue.

If you use a web site or service not mentioned above and cannot find any statement made by the web site's owner, then it wouldn't be out of line to send an e-mail to the owner or administrator of the site to ask them if they were ever vulnerable, if they've fix it, and whether you should change your username and password.

As always in such cases, you should be wary of people attempting to take advantage of the fear and uncertainty. It's possible that some of the previously mentioned tools might deliberately give false readings on whether or not a web site is vulnerable to the bug. Additionally, people may attempt to send out phishing e-mails encouraging users to change their password which they then can capture. As a matter of course, you should be wary of any e-mail that asks you to change your password and should never use the links provided in those e-mails.

Apr 8, 2014

New Unbreakable Encryption based on Biology? Unlikely

It's being reported that scientists at Lancaster University have developed an 'unbreakable' encryption methodology, inspired by human biology. Their paper is here.

Admittedly, the paper is too technical for me to decipher, let alone critique. However, if what is being reported (such as here.) is an accurate representation, we can begin to scrutinize this, at least on principle.

1. Modeled on how the heart and lungs coordinate their rhythms

I'm initially skeptical at the cryptographic value in this type of communication. Don't get me wrong, there are plenty of cryptographic schemes implemented in nature. Most notably would be stenography in the form of camouflage. However, this is cryptography implemented as a defense mechanism between species, I don't see how or why the body would evolve cryptographic communication between organ systems.

The issues involved with coordinating heart and lungs is a timing issue, and you'd want to ensure, foremost, the success of the signal being sent and, secondarily, the fidelity of the information content (which would most certainly be simplistic). While some cryptographic principles come into play in ensuring the integrity of a message, they don't provide actual encryption and are a far cry from a "revolutionary new method of [encryption]".

More to the point, if the method is so unbreakable, how did we break it to determine what it was?

2. Infinite key choices

The primary (if only) strength allegedly offered by this scheme is the fact that it allows for an infinite number of choices for key. Given the premise that modern cryptographic codes are broken by discovering the key through brute force methods, making the key size potentially unlimited makes the code unbreakable.

Simple. Too simple. First, brute force guessing of the cryptographic key is not the only form of cryptanalysis. Cryptanalysis is a broad field incorporating methods such as differential cryptanalysis, known-plaintext attacks, and side-channel attacks. Brute force attacks are essentially the lowest and least efficient form of cryptographic attack and we are already at the point where it would take lifetimes to break modern-day encryption through that method.

Second, the value of making the key size unlimited is dubious. There are always limitations. The reason why key sizes are limited to specific sizes today is the fact that the algorithms are specificly designed with those key sizes in mind. Larger key sizes allow for greater substitutions to be made, obfuscating the data to a greater degree. The implication here is that this algorithm is somehow dynamic that it can handle any key size. My question is: what is the trade off? In translating this to an algorithm to be used by a computer, there are size, time, and bandwidth constraints that practically limit the size of keys that can be chosen.

I also don't see the procedure for choosing keys in the first place. How the keys are chosen or generated is at least, if not more, important than the key length.

3. Simultaneous transmission/Key sharing

This is where I'm completely lost. Simultaneous transmission of information has nothing to do with encryption. It is a limitation of the transmission media being used. Most devices are wireless and, therefore, can transmit simultaneously anyway. Those devices that communicate over wires and cables would still be bound by the physical limitations of those media.

Based on the paper, what it seems that it is doing is taking multiple information streams and encrypting them all. If that is what it is doing, then fine, just say that. But I would deny the simultaneous nature of the transmission. All this seems like is a form of multiplexing - wrapping multiple streams of information into one - and then encrypting that using a single key. So, basically, a VPN.


I'm at a loss to see what is revolutionary here. It'd be nice to see a lay person translation of how this algorithm works, and what protections it offers against modern cryptanalysis. But, generally, speaking, articles that are hyped up like this rarely live up to it.

Tick tock...

OK, so what's the latest date by which Bush, son of Bush, brother of Bush, does an about face, and claim that his words were twisted by the liberal media?

Apr 7, 2014

Who tossed this one?

"The plan is to allow those things that had been proposed over many years to reform a health-care system in America that certainly does need more help so that there's more competition, there's less tort reform threat, there's less trajectory of the cost increases, and those plans have been proposed over and over again. And what thwarts those plans? It's the far left. It's President Obama and his supporters who will not allow the Republicans to usher in free market, patient-centered, doctor-patient relationship links to reform health care."

Hint: It was a response to what would be the bagger alternative to Obamacare.

Apr 2, 2014

Mo' Money Speech


Yup, no longer is anyone restrained by being unable to legally brib--- I mean, contribute larger amounts of money-speech to anyone. Watch out, fascism might get way ahead of the cross, people!

For the record, I am in favor of all such limits being removed. So good job, Scalia, Thomas, Roberts, Kennedy and Alito! This is a good thing, because it should cost a lot more than a measly billion dollars to buy the presidency like was the case in 2012. Now, if they could also require immediate and complete disclosure of all donors, this would be perfect.

McCutcheon, the big winner gloated:
With the ruling, we continue to chip away at the long entrenched status quo from the grassroots — a status quo that has kept challengers, better ideas, and new entrants to the political arena mostly locked out, ensuring that citizens are able to contribute to multiple candidates or causes who share their views only provides further support to a system in which 'We the People' hold the ultimate reins of power.
Baggers of the world, now you get to find out how invaluable you were when you were used by the Republicans. They thank you for your support and no longer need to fund your inefficient astroturf movement. Take solace in the fact that Democrats will now almost certainly lose control of the Senate in 2014. Nothing like a bunch of  rich patriots calling the shots, eh?