Was machen Softwareentwicklerinnen und -entwickler, wenn sie vor einem Problem stehen und nicht weiterwissen? Sie stellen die Frage in einem Forum. Oft hatten andere vorher schon das gleiche Problem, und so hilft ganz häufig eine schnelle Recherche in den Wissensdatenbanken der Foren.
Nun gibt es für jedes Problem meistens unterschiedliche Lösungen. Darunter ist immer eine, die nach dem Prinzip „quick and dirty“ schnell zum Erfolg führt. Der Ausdruck mag flapsig erscheinen, es schwingt jedoch ein ernstes Problem mit, das man als Laie nicht auf Anhieb sieht: Entwicklungsprojekte kämpfen häufig mit zu niedrig dotiertem Projektbudget. So wundert es niemanden, dass bei einer Auswahl an funktionierenden Lösungen die einfachste gewählt wird. Häufig ist diese jedoch nicht die beste und sicherste.
Auf einem Pentest-Kolloquium wurde vor ein paar Jahren eine Forschung von Fischer et al. der TU München aus dem Jahre 2019 vorgestellt, in der untersucht wurde, wie schnell und wie weit sich schadhafter Code im Netz verbreitet. Dafür haben sie exemplarisch einen bestimmten Code-Schnipsel des beliebten Entwicklerforums StackOverflow genutzt, der nachweislich eine gravierende Sicherheits-Schwachstelle besitzt. Dieser Code-Schnipsel löste ein Problem, das sehr viele Android-Entwickler nachgefragt hatten, hebelte jedoch für die Behebung des funktionalen Problems die TLS-Verschlüsselung der Apps, die diesen Code- Schnipsel verwenden, komplett aus. Es wurde nachgewiesen, dass ca. 190.000 Apps aus dem Google Play Store diesen Code-Schnipsel verwenden. Darunter sind sicherheits- oder datenschutzrelevante Apps wie z.B. Finance-Health-, Banking- und Social-Media-Apps. Die Forschergruppe hatte nachgewiesen, dass diese „Man-in-the-Middle“-Schwachstelle des besagten Code- Schnipsels nicht nur akademischer Natur, sondern auch tatsächlich ausnutzbar ist. Sie konnten die Kommunikation einiger exemplarisch ausgewählter Apps hacken und infolgedessen Anmeldeinformationen, Kreditkarten- und andere wichtige Daten abgreifen.
Anhand empirischer Untersuchungen konnte nachgewiesen werden, dass 30 Prozent aller kryptografisch relevanter Code-Schnipsel auf StackOverflow schwere Sicherheitslücken aufweisen. Es muss davon ausgegangen werden, dass StackOverflow hier nur stellvertretend für alle möglichen anderen Plattformen steht. Die „lessons learned“ für uns Sicherheits-Schaffende sind u.a., dass bei Programmen und Apps, von denen Menschenleben abhängen oder wo ein Missbrauch großen finanziellen oder reputativen Schaden verursachen könnte, ein Penetrationstest alleine nicht ausreicht. Hier müssen vor dem Einsatz unbedingt umfangreiche Code-Analysen durchgeführt werden.
Die gute Nachricht, die aus dieser Forschung hervorgeht, lautet, dass es zu über 99 Prozent all dieser problematischen Code-Schnipsel auch mindestens eine Lösung gibt, die kein Sicherheitsproblem beinhaltet. Die Forschergruppe untersucht derzeit eine Möglichkeit, Entwicklern bevorzugt die guten Code-Schnipsel anzubieten.
Eine andere Variante, Software generell sicherer zu gestalten wäre, den Entwicklern die Chance zu geben, neuen Code etwas besonnener auszuwählen. Auch wenn das bedeutet, dass die Projekte ein bisschen weniger agil als bislang umgesetzt werden können.