Software-Entwickler: Krypto-Fehler vermeiden mit Cognicrypt

In vielen Apps steckt fehlerhafte Kryptographie. Auf der Sicherheitskonferenz Ruhrsec wurde eine Lösung vorgestellt: Cognicrypt. Die Open-Source-Software sucht nach Fehlern im Code und generiert sichere Krypto-Funktionen. Neben Java sollen bald auch weitere Programmiersprachen folgen.

Artikel von veröffentlicht am
Entwickler implementieren Verschlüsselung oft fehlerhaft.
Entwickler implementieren Verschlüsselung oft fehlerhaft. (Bild: Alexas_Fotos)

Ein Passwortmanager der Sicherheitsfirma Norton und die App der Volksbanken hatten bis vor kurzem eine Gemeinsamkeit: Bei beiden wurden kryptographische Funktionen fehlerhaft implementiert. Entdeckt wurde das durch die Open-Source-Software Cognicrypt. Damit lassen sich Apps auf derartige fehlerhafte Funktionen hin untersuchen. Cognicrypt kann aber nicht nur analysieren, sondern auch den Code für kryptographische Funktionen generieren, wie der Sicherheitsforscher und Professor für Softwaretechnik an der Universität Paderborn, Eric Bodden, auf der Sicherheitskonferenz Ruhrsec in Bochum gezeigt hat.

Stellenmarkt
  1. Fachinformatiker / Informatiker (m/w/d)
    Dr. Hobein (Nachf.) GmbH, med. Hautpflege / EUBOS, Meckenheim bei Bonn
  2. (Junior) Business Analyst (m/w/d) Schwerpunkt Analyse / Reporting
    Bruno Bader GmbH + Co.KG, Pforzheim
Detailsuche

Die Apps von Norton und den Volksbanken sind keineswegs die einzigen mit fehlerhaften kryptographischen Funktionen, sie sind Teil einer Studie der Cognicrypt-Entwickler, an der auch Bodden mitgewirkt hat. Diese untersuchte die 250 Top-Android-Apps aus den Bereichen Banking, Gesundheit und Passwortspeicher im Google Playstore. In 71 Prozent der Fälle fanden sie fehlerhafte kryptographische Implementierungen. Häufig schreiben App-Entwickler den Code jedoch gar nicht selbst, sondern greifen auf Snippets aus Repositorys wie Maven zurück. Auch hier führten die Forscher eine Studie durch und analysierten über 2,7 Millionen Java-Snipptes auf Maven. Sie wurden in 73 Prozent der Fälle fündig. Nicht selten hätten die Entwickler gleich mehrere Fehler gemacht, sagt Bodden. Das häufigste Problem sei die Verwendung von AES im unsicheren ECB-Modus.

Den eigenen Code untersuchen

Cognicrypt soll den Entwicklern dabei helfen, die kryptographischen APIs sicher zu verwenden. Entwickelt wurde die Software am kollaborativen Forschungszentrum Crossing der TU Darmstadt, an deren Forschung auch Bodden beteiligt ist. Die Software ist als Plugin für die Entwicklungsumgebung Eclipse verfügbar und kann so direkt im Entwicklungsprozess eines Java-Programmes oder einer App verwendet werden. Neben Java sollen zukünftig auch die Programmiersprachen C und C++ sowie weitere Entwicklungsumgebungen unterstützt werden. Auch eine Integration in Online-Dienste ist geplant.

Die Software analysiert den Programm-Code bei jeder Änderung binnen Sekunden und warnt bei hinzugefügten Schwachstellen oder der Verwendung von veralteten oder unsicheren Algorithmen. Die Warnungen werden in Form von Fehlermarkierungen ausgegeben, erklären das Problem und schlagen Korrekturen für die betroffenen Zeilen vor.

Golem Akademie
  1. Penetration Testing Fundamentals
    23.-24. September 2021, online
  2. Microsoft 365 Security Workshop
    27.-29. Oktober 2021, Online
  3. Einführung in die Programmierung mit Rust
    21.-24. September 2021, online
Weitere IT-Trainings

Durch die Kombination verschiedener Analysetechniken sowie den Fokus auf die Krypto-Analyse habe Cognicrypt eine niedrige False-Positivie-Rate, erklärt Bodden. Bei der Analyse der 2,7 Millionen Java-Snippets auf Maven habe diese bei 5 Prozent gelegen. Statische Analyse von Software-Code warte üblicherweise mit deutlich mehr False Positives auf.

Cognicrypt generiert sicheren Krypto-Code

"Ein Ziel war es, sicheren Krypto-Integration-Code zu generieren, damit die Entwickler nicht alles selber schreiben müssen", sagt Bodden. Mit Cognicrypt lasse sich für zahlreiche kryptografische Anwendungsszenarien, beispielsweise die Verschlüsselung einer Datei oder die Authentifizierung eines Nutzers, korrekter und sicherer Quellcode generieren. Diesen könne der Entwickler direkt in die Anwendungen integrieren, erklärt Bodden. Mit ein paar Klicks lassen sich die Aufgabe und die Algorithmen auswählen, die verwendet werden sollen. Anschließend generiert die Software den Java-Code für die Krypto-Funktion. Dabei werde nicht viel Wissen vorausgesetzt.

Bodden hofft nach eigenen Angaben auf bessere und vor allem einfachere Krypto-APIs, "die nur auf die richtige Weise verwendet werden können." Vielleicht könnte Cognicrypt damit in fünf Jahren obsolet werden. Sie sei für heute geschrieben und helfe den Entwicklern, Kryptographie auf eine sichere Weise zu verwenden.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Probefahrt mit EQS
Mercedes schüttelt Tesla ab, aber nicht die Klimakrise

Der neue EQS von Mercedes-Benz widerlegt die Argumente vieler Elektroauto-Gegner. Auch die Komforttüren gefallen uns.
Ein Bericht von Friedhelm Greis

Probefahrt mit EQS: Mercedes schüttelt Tesla ab, aber nicht die Klimakrise
Artikel
  1. Elektroauto: Mercedes EQS mit besserer Hinterachslenkung als Abo
    Elektroauto
    Mercedes EQS mit besserer Hinterachslenkung als Abo

    Den Mercedes EQS gibt es mit Hinterachslenkung mit 4,5 Grad Einschlag. Wer ein Jahresabo abschließt, bekommt sogar 10 Prozent Lenkeinschlag und damit eine bessere Lenkung.

  2. Loongson 3A5000: Chinesische Quadcore-CPU mit eigenem Befehlssatz
    Loongson 3A5000
    Chinesische Quadcore-CPU mit eigenem Befehlssatz

    50 Prozent schneller als der Vorgänger-Chip und dabei sparsamer: Der 3A5000 mit LoongArch-Technik stellt einen wichtigen Umbruch dar.

  3. Spiele-Notebooks: Lenovo schaltet H.264-Encoding ab
    Spiele-Notebooks
    Lenovo schaltet H.264-Encoding ab

    Mal eben eine Spieleszene mit dem Gaming-Laptop aufnehmen? Bei vielen Lenovo-Notebooks klappt das derzeit nicht, aber Besserung ist in Sicht.

JohSpaeth 06. Jun 2019

Hallo, ich bin ein Mitarbeiter der Gruppe von Eric Bodden und bin an der Entwicklung rund...

JohSpaeth 06. Jun 2019

Hallo, ich bin ein Mitarbeiter der Gruppe von Eric Bodden und habe CogniCrypt...



  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Schnäppchen • 30% Rabatt auf Amazon Warehouse • ASUS TUF VG279QM 280 Hz 306,22€ • Fractal Design Meshify C Mini 69,90€ • Acer Nitro XF243Y 165Hz OC ab 169€ • Samsung C24RG54FQR 125€ • EA-Promo bei Gamesplanet • Alternate (u. a. Fractal Design Define S2 106,89€) • Roccat Horde Aimo 49€ [Werbung]
    •  /