Software-Wiki
Advertisement

Der Underhanded C Contest ist ein seit 2005 jährlich ausgetragener Wettbewerb. Das Ziel ist es, ein Programm in der Programmiersprache C zu schreiben, welches fehlerhaft ist, aber in einer Weise, dass der Fehler selbst bei ordentlicher Inspektion nicht auffällt und selbst dann nur so aussieht, wie ein kleiner, üblicher Programmfehler.

So sollten die Teilnehmer beispielsweise im Jahre 2008 ein Programm schreiben, dass in seiner eigentlichen Funktion Teile eines Bildes im Portable Pixmap-Dateiformat verdecken sollte, aber durch den Fehler die Bildinformationen irgendwie doch noch zumindest teilweise rekonstruierbar in der Ausgabedatei verstecken, sodass der Benutzer davon nicht ohne weiteres etwas merkt. Eine der Gewinnerlösungen las Informationen zurück, indem die Bilddaten zwar mit Nullen überschrieben wurden, aber jede Stelle einzeln, sodass man anhand des Unterschiedes 0/00/000 mit einem entsprechenden Programm ohne Probleme herausfinden konnte, was die Pixel in ungefähr enthielten.

Laut des Organisators soll der Wettbewerb vor allem zeigen, dass fähige Programmierer ohne Probleme Hintertüren in Programme einbauen können, ohne dass jemand anderes diese selbst durch genauere Analysen findet.

Einige der Lösungen gingen zur Erreichung des Ziels sogar so weit, dass sie Maschinencode in Variablen geschickt so versteckten, dass durch Fehler bei Zeigeroperationen dieser ausgeführt wird und verschiedene Dinge anstellt, oder durch geschickte Pufferüberläufe zusätzlich Daten irgendwohin schickten.

Weblinks[]


Wikidata-logo Im Wikidata-Objekt Q7883692 befinden sich offene Daten zum Thema und Links zu Wikimedia-Projekten.
Info Sign  Dieser Wikipedia-Artikel wurde gemäß GFDL bzw. CC-by-sa mit allen Versionen importiert.
Advertisement