LAMP ist das sicherste Open-Source-Projekt
Der weit verbreitete LAMP-Stack zählt zu den sichersten Anwendungen auf Basis von Open-Source. Das zeigt eine aktuelle Studie, die das US-Department of Homeland Security finanziert hat. Mit dem Geld soll Software möglichst sicher werden.
Für die umfangreiche Studie hat das Unternehmen Coverity, ein Hersteller von Tools für Quellcode-Analyse, den Code von 32 Open-Source-Projekten untersucht. Insgesamt hat Coverity zusammen mit der Universität Stanford 17,5 Millionen Code-Zeilen nach Fehlern durchforstet.
Dabei schneiden die Projekte Linux, Apache, MySQL und Perl/PHP/Python, gemeinhin als LAMP-Stack bezeichnet und vor allem bei Web-Anwendungen im Einsatz, im Vergleich zu anderen Projekten sehr gut ab. Insgesamt kommen die untersuchten Codezeilen der 32 Projekte auf 0,434 Fehler pro 1000 Zeilen. Bei der LAMP-Software sind es 0,290. Einziger Ausreißer ist PHP. Die Web-Sprache liegt mit ihrer Fehlerquote über dem Durchschnitt.
Die meisten Fehler pro 1000 Zeilen weist mit 1,237 das ‘Amanda Backup-Tool’ auf. Die wenigsten Fehler auf 1000 Zeilen gerechnet hat der Audio-Player ‘XMMS’ mit 0,051. Das Grafik-System ‘X’ weist in über 2,3 Millionen Codezeilen 1681 Fehler auf und hat somit insgesamt die meisten Bugs.
Die US-Behörde für Heimatschutz hat mit Coverity, Symantec und der Universität Stanford einen Dreijahresvertrag abgeschlossen. Rund 1,2 Millionen Dollar stehen für das ‘Open Source Hardening Project’ zur Verfügung. Damit sollen Sicherheitslücken aufgespürt und auch das Tool von Coverity für die Analyse von Code verbessert werden.
“Eines der Ziele unserer Forschung zur Qualität und Sicherheit von Software ist es, eine Bewertungsgrundlage zu definieren, die das Ermitteln der Ausfallsicherheit von Software in Open-Source- und unternehmensgebunden Softwareprojekten zulässt”, sagte Ben Chelf, CTO von Coverity. Jedoch könne keine Technologie alle Fehler in Software aufspüren. “Über eine automatisierte und wiederholbare Analysestruktur haben wir jedoch eine kritische Masse an Daten gesammelt, um zu zeigen, wie sich Softwarequalität konkret beurteilen, vergleichen und letztlich auch verbessern lässt.”
So will das Unternehmen die Beurteilung von Open-Source-Projekten – die ohnehin aufgrund des Prinzips der vielen Augen meist von sehr guter Qualität sind – automatisieren und damit beschleunigen. Coverity rechnet vor, dass zum Beispiel allein eine manuelle Analyse der rund 3,1 Millionen Codezeilen des Linux-Kernels 28 Mannjahre verschlingen würde. Die Ergebnisse der Untersuchung will Coverity nun den wichtigsten Entwicklern der einzelnen Projekte weiterleiten, um die Fehlerbehebung zu beschleunigen.
Auch ein Web-basiertes System, das ständig neue Code-Veröffentlichungen herunterlädt und analysiert, hat das Unternehmen entwickelt. Ergebnisse werden täglich aktualisiert und können abgerufen werden. Nach einer Registrierung kann die gesamte Untersuchung auch als PDF heruntergeladen werden.