OpenSSL

OpenSSL er en open-source implementering af SSL- og TLS-protokollerne. Kernefunktionaliteten er skrevet i C, og implementerer basale kryptografiske funktioner og stiller forskellige hjælpefunktioner til rådighed.
Der eksisterer "wrappere" der muliggør brug af OpenSSL, i et hav af andre programmeringssprog.

Der findes versioner til de fleste Unix-lignende operativsystemer (herunder Solaris, Linux, Mac OS X og de forskellige open source BSD operativsystemer), OpenVMS og Microsoft Windows. IBM leverer en porteret version til System i (OS/400). OpenSSL er baseret på SSLeay af Eric A. Young og Tim Hudson, udviklingen af denne stoppede officielt omkring december 1998, da Young og Hudson begge begyndte at arbejde for RSA Security.

Licenser 
OpenSSL har en "dobbelt-licens", under OpenSSL-licens og SSLeay-licens. OpenSSL-licensen er en Apache-licens 1.0 og SSLeay-licensen er en 4-klausuls BSD-licens. Den normale betydning af betegnelsen dobbelt-licens er at brugeren frit kan vælge den licens han ønsker at anvende. Men OpenSSL dokumentationen bruger betegnelsen dobbelt-licens i betydningen at begge licenser gælder.

Da OpenSSL-licensen er en Apache-licens 1.0, og ikke en Apache-licens 2.0, kræver den at sætningen 'This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/) optræder i marketingmateriale og i enhver distribution (Afsnit 3 og 6 i OpenSSL-licensen). Pga. denne begrænsning, er OpenSSL-licensen og Apache-licensen inkompatible med GPLen.
Nogle GPL udviklere har tilføjet en OpenSSL undtagelse'' til deres licenser alene for at tillade at OpenSSL kan blive brugt med deres system. GNU Wget og climm bruger begge sådanne undtagelser. Nogle pakker (som Deluge) har specifikt modificeret GPL-licensen ved at tilføje et ekstra afsnit i starten af licensen der dokumenterer undtagelsen. Andre pakker bruger den LGPL licenserede GnuTLS som udfører den samme opgave.

Velkendte sårbarheder

Sårbarhed i Debian implementeringen 
For at undgå visning af en fejl i Valgrind analyseværktøjet havde en vedligeholder af Debian distributionen anvendt en patch i Debian implementeringen af OpenSSL pakken, som utilsigtet kom til at bryde dens tilfældighedsgenerator. Den defekte version blev inkluderet i Debian udgaven fra 17. september 2006 (version 0.9.8c-1). Enhver nøgle dannet med den defekte tilfældighedsgenerator, og data krypteret med sådan en nøgle, blev kompromiteret. Fejlen blev rapporteret af Debian den 13. maj 2008.

I Debian 4.0 distributionen (etch), blev disse problemer løst i version 0.9.8c-4etch3 og for Debian 5.0 distributionen (lenny), blev disse problemer læst i version 0.9.8g-9.

Heartbleed-bug 

Den 7. april 2014, blev det annonceret at OpenSSL 1.0.2-beta samt alle versioner af OpenSSL i 1.0.1 serien, bortset fra 1.0.1g, havde en alvorlig hukommelseshåndteringsfejl i deres implementering af TLS Heartbeat udvidelsen. Denne defekt kunne blive brugt til at afsløre op til 64 kilobyte af applikationshukommelsen med hvert eneste heartbeat. Dens CVE nummer er CVE-2014-0160.

Sårbarheden har eksisteret siden 31. december 2011, og den sårbare kode er blevet meget udbredt med udgivelsen af OpenSSL version 1.0.1 den 14. marts 2012. Ved at læse hukommelsen på webserveren, kan angribere få adgang til følsomme data, og dermed kompromitere serverens og dens brugeres sikkerhed. Potentielt sårbare sikre data omfatter serverens private master key, hvilket gør det muligt for angribere at bryde krypteringen af tidligere aflyttet kommunikation med serveren og dermed implementere et man-in-the-middle angreb.

Sårbarheden kan måske også afsløre ikke-krypterede dele af brugeres følsomme forespørgsler og svar, herunder cookies og kodeord, hvilket måske kan gøre det muligt for angribere at overtage identiten af en anden bruger af tjenesten. Ved afsløringen blev det vurderet at ca. 17% eller en halv million af Internettets sikre webserverere certifieret af certifikatudstedere var følsomme over for angrebet.

Der er etableret en dedikeret webside The Heartbleed Bug  der giver et overblik over fejlen samt anvisninger på tiltag. Det danske teknologisite Version2 har også en oversigt.

Kilder

Eksterne henvisninger 
 OpenSSL.org

It-sikkerhed
Kryptografi
Fri software