De Raadt gelooft wel dat security-bedrijf NETSEC zo’n 10 jaar geleden is ingehuurd om backdoors te installeren in Unix-variant OpenBSD. Hij twijfelt er echter aan of die inderdaad geschreven zijn en of ze ook echt in de code terecht zijn gekomen. “Als ze zijn geschreven, geloof ik niet dat ze in onze code-tree zijn geraakt. De backdoors kunnen zijn ingezet in een eigen product.”

Hij schrijft dit in een posting, van net voor de kerst, op de OpenBSD-mailinglist. Daar wordt al weken gediscussieerd over de claims van voormalig security-consultant Gregory Perry. Die heeft begin december opgebiecht dat de FBI hem en andere ontwikkelaars had ingehuurd om backdoors te planten in OpenBSD, wat juist de veiligste is van de BSD-varianten.

Ontkenning

De oprichter van OpenBSD heeft de aantijgingen, die privé aan hem zijn gemaild, vrij snel openbaar gemaakt. Daarbij heeft hij enkele beschuldigde mensen niet vantevoren gewaarschuwd, wat hem niet in dank is afgenomen. Kernelontwikkelaar Jason Wright is met name genoemd. Hij is volgens zelfverklaard backdoor-collaborateur Perry één van de andere betrokkenen, maar hij heeft vervolgens furieus gereageerd op de hele kwestie, zowel in antwoord op vragen van Webwereld als in een eigen posting op de OpenBSD-mailinglist.

Wright wijst erop dat de geclaimde tijdslijn voor zijn betrokkenheid bij IPSEC niet klopt. IPSEC is één van de OpenBSD-onderdelen waarin volgens Perry backdoors zijn geïnstalleerd voor de FBI. Dat zou zijn gedaan door het inmiddels allang opgedoekte NETSEC, dat ook security-werk deed voor de Amerikaanse overheid.

Vrijpleiten

OpenBSD-grondlegger De Raadt verklaart nu dat hij niet gelooft dat Wright schuldig is aan het plaatsen van backdoors in de OpenBSD-code. Hij wijst er wel op dat Perry degene is die Wright heeft ingehuurd bij NETSEC, voordat eerstgenoemde om onbekende redenen is ‘verwijderd’ uit dat bedrijf, schrijft De Raadt.

“Jason heeft niet aan cryptografie gewerkt, vooral omdat hij een maker van device drivers was.” Dat zijn geen reguliere drivers voor bijvoorbeeld randapparatuur, maar ondersteunende drivers voor het encryptieraamwerk in OpenBSD. Dat raamwerk is begin deze eeuw ook voorzien van backdoors, claimt klokkenluider Perry.

Zijdelings

Volgens De Raadt is Wright wel zijdelings bezig geweest met de encryptiedelen in OpenBSD. “Hij heeft de IPSEC-laag wel aangeraakt, omdat die laag ook IPCOMP doet”, aldus De Raadt. IPCOMP is het IP Payload Compression Protocol dat ip-netwerkverkeer voor IPSEC-verbindingen comprimeert. Daarbij wordt dataverkeer vanuit de IPSEC-stack doorgegeven aan de door Wright ontwikkelde drivers. “Hij heeft dus de data-flow van die code aangeraakt, maar niet de algoritmes.”

Ook IPSEC-architect en -hoofdontwikkelaar Angelos Keromytis wordt door De Raadt vrijgepleit. Die ontwikkelaar heeft na het vertrek van Wright de encryptielaag geschreven die de overdracht regelt van verzoeken vanuit de IPSEC-stack aan de drivers, schrijft De Raadt. Keromytis heeft volgens het OpenBSD-opperhoofd echter wel gewerkt voor NETSEC. Eerder heeft techblog ReadWriteWeb gemeld dat Kermoytis nooit in dienst is geweest bij het sinds december verdachte security-bedrijf.

De Raadt hekelt nog wel de oorspronkelijke encryptielaag van Keromytis. Dat cryptocomponent in OpenBSD “bevatte het stomme, onveilige idee van [encryptiemethode - red.] ‘half-IV’ dat de Amerikaanse overheid toen promootte. Snel nadat zijn contract afliep, is dat eruit gerukt. Vrij snel daarna werd het CBC oracle-probleem bekend, en ging IPSEC/crypto over naar random genereren van IV.”

Verdachte IPSEC-bug

Een verdere weerlegging van de backdoorsclaim komt uit een inmiddels uitgevoerde audit van de IPSEC-code in OpenBSD. Daarbij heeft programmeur Marsh Ray een verdachte bug gevonden, die in 2002 stilletjes is gefixt. Ray hekelt die stilhouding, maar stelt nu dat die bug, en de fix daarvoor, niet een (of twee) van de vermeende backdoors zijn. Ook De Raadt zegt niet te geloven dat deze bug het resultaat is van kwade opzet.

De bug is gevonden in code die is gemaakt door Kermoytis. Het gaat om een softwarematige authenticatie van IPSEC-datapakketten die niet nodig is als een IPSEC-ondersteunende netwerkkaart dat hardwarematig al doet. De softwarematige controle werd door de bug echter nooit uitgevoerd. De fix zou zijn gemaakt door Jason Wright.

Code doornemen

De code van OpenBSD is nog niet geheel doorgenomen op de aanwezigheid van de geclaimde backdoors. De Raadt wijst er op dat dat niet nodig is voor alle code: het door de claims van Perry verdachte deel van OpenBSD is maar een klein onderdeel van de code. “Ik kan ook verheugd melden dat mensen nu de gelegenheid te baat nemen om een belangrijk deel van de code te auditen, een deel waarvan veel mensen - veel te lang al - hadden aangenomen dat het veilig is.”