Twee weekends geleden maakte ceo Aaron Barr van HBGary Federal bekend dat hij de kopstukken van het los-vaste hacktivistencollectief Anonymous kende. De leden van die groep, die ontstaan is op het /b/ forum van 4chan, zouden bekend zijn geworden via bijvoorbeeld sociale netwerken.

Amper een dag later bleek dat HBGary zich beter niet had kunnen branden aan de zaak van Anonymous. Hoewel de leden van die groep vooral bekendstaan als DDoS’ers, blijken ook hackers met echte skills zich tot het collectief te rekenen. Dat bleek overigens al eerder, na een hack bij de uitgeverij van Gawker.

Hackers van goeden huize

Toch moeten hackers die een beveiligingsbedrijf willen hacken wel van heel goeden huize komen. Die bedrijven weten over het algemeen wat ze moeten barricaderen. HBGary maakt beveiligingstools en geeft advies aan instanties als de FBI, CIA en NSA. Het lijkt dus voor de hand te liggen dat hun servers erg goed beveiligd zijn.

Dat bleek toch niet zo te zijn. Dat blijkt althans uit een exclusief vraaggesprek dat de Amerikaanse techsite Ars Technica met de hackers had. De hackers die de websites, mail en rootkit-community van HBGary wisten te kraken hadden eigenlijk genoeg aan hacks die zo ‘uit het boekje’ kwamen.

SQL injectie

De Anonymous hackers begonnen hun aanval bij het cms van HBGary Federal en gingen van daaruit verder. Zo kreeg het geheel een domino effect. De hackers ontdekten dat het speciaal voor HBGary ontwikkelde cms niet goed beveiligd was. Door een SQL query in het adres http://www.hbgaryfederal.com/pages.php?pageNav=2&page=27 te plaatsen, was het mogelijk om dat commando uit te voeren: SQL injectie.

SQL injectie is eenvoudig als de voorkant van een website via de url tegen een database ‘praat’. In het geval van HBGary waren dat de opties ‘pageNav’ en ‘page’. Normaal worden die opties, samen met eerder vastgestelde dingen als commando naar de database gestuurd. Door bij die opties andere commando’s in te voeren is het echter ook mogelijk om hele andere velden uit de database uit te lezen of zelfs te wijzigen.

Dat is dan ook precies wat de leden van Anonymous deden. Het cms van HBGary was, vrij ongebruikelijk, niet goed beveiligd tegen dit soort kraakpogingen. Zo konden de hackers de gebruikersdatabase van het cms te pakken krijgen.

Wachtwoorden slecht beveiligd

De wachtwoorden in die gebruikersdatabase bleken wel beveiligd: Die waren versleuteld met de veelgebruikte techniek MD5. Dat was ook direct het zwakke punt aan die beveiliging. Omdat MD5 veelgebruikt is, is het eenvoudiger om er rainbow tables voor te genereren of te downloaden. Een rainbow table is een tabel met mogelijke wachtwoorden en daarbij horende versleuteling.

Om het nog wat gênanter te maken, waren de wachtwoorden in het cms van HBGary maar één keer versleuteld. Bovendien bleken de wachtwoorden van ceo Aaron Barr en coo Ted Vera vrij simpel. Beiden telden zes kleine letters en twee cijfers, waardoor zij snel gekraakt waren.

Onveilige Linux server

De topmannen van het bedrijf maakten met hun wachtwoorden bovendien een kapitale fout. Ze hergebruikten hun toegangssleutels op verschillende sites en servers. Tussen die servers zat de Linux ssh-server van de supportwebsite van HBGary. Vera had toegang tot die server, maar had geen root access. Met zijn gegevens konden de hackers dus niets doen.

Dat leek althans zo, maar al snel bleek volgens de hackers dat de server van HBGary niet goed geüpdatet was. De hackers konden namelijk een exploit voor een bug misbruiken die al sinds november door de meeste Linux distributies opgelost was. Op die manier kregen ze volledige toegang tot de server en de vele documenten die HBGary op die machine opslaat.

Waardevolle wachtwoorden

Tegelijkertijd bleek het wachtwoord van ceo Barr ook erg waardevol. Hij is namelijk beheerder van het Google Apps account dat HBGary gebruikt voor haar e-mail. Omdat hij ook hiervoor hetzelfde wachtwoord gebruikte, was het mogelijk om de wachtwoorden van alle gebruikers te wijzigen en dus ook alle e-mails te lezen en op te slaan.

Op die manier kregen de anonieme hackers ook toegang tot het e-mailaccount van Greg Hoglund. Medeoprichter van HBGary en de beveiligingscommunity Rootkit.com. In zijn mailbox vonden ze belangrijke aanwijzingen om ook op die laatste site binnen te dringen. Het root wachtwoord was ‘88j4bb3rw0cky88’ of ‘88Scr3am3r88’ en beveiligingsspecialist Jussi Jaakonaho van Nokia heeft root toegang.

Meewerkende systeembeheerder

Omdat het niet mogelijk was om via ssh met het root account in te loggen hadden de hackers nog wel wat meer informatie nodig. Daaronder de poort waarop de ssh server remote te bereiken was en een normaal gebruikersaccount waarmee het later mogelijk was om als root commando’s uit te voeren (sudo).

Vervolgens grepen de hackers naar social engineering. Er ontstond een e-mailwisseling tussen Jaakonaho en een hacker die mailde vanuit het account van Greg Hoglund. Jaakonaho trapt volledig in de truc van de hacker, en hij geeft hem een gebruikersnaam, wachtwoord en poortnummer. Daarmee was het mogelijk om volledige controle over de server te krijgen.

Vervolgens was het eenvoudig om de homepage van Rootkit.com te wijzigen. De hackers gingen bovendien nog een stap verder: Eén van hen downloadde de volledige gebruikersdatabase van Rootkit.com en deelde die op het internet. En ook die gebruikersdatabase was alleen met enkelvoudig MD5 beveiligd.

Opeenstapeling van fouten

Concluderend ontstond de hack van HBGary allemaal bij één regelmatig voorkomende fout in het cms. Omdat topmannen van het bedrijf niet zo wijs waren om voor iedere dienst een ander wachtwoord te gebruiken was het mogelijk om in te loggen op andere servers.

Dat daaronder een ongepatchte Linux server en een beheerder van Google Apps waren, was weliswaar toevallig maar de kans hierop is wel groot. Daarna was het kinderspel om geheime documenten en e-mails van HBGary te lezen, downloaden en te delen met de rest van de wereld.

De site Rootkit.com was wel relatief goed beveiligd. Helaas bleek hier de mens weer eens de zwakste schakel. De beheerder van die server gaf wel heel vlotjes een gebruikersnaam en wachtwoord via e-mail. Terwijl hij misschien onraad had moeten ruiken omdat ‘Hoglund’ zowel zijn gebruikersnaam als wachtwoord niet meer wist.