Haben Sie jemals darüber nachgedacht, dass das Zeitalter der benutzerdefinierten Kryptografie unwiderruflich vorbei ist? Nein, ich sage nicht, dass die Verschlüsselung von Messenger und Kryptowährungen heute ungünstig ist. Ich spreche von der guten alten RBS, also von den Bank-Client-Systemen. Vor etwa 10 Jahren bestand jede Kundenbank mit Selbstachtung aus Software und einem Token mit digitaler Signatur. Und heute ist es fast eine Seltenheit, dass jeder überall auf SMS-Bestätigungen umstellt, was sicherlich eine Größenordnung bequemer ist, als mit den Einstellungen von Krypto-Anbietern herumzuspielen und CPU-Zertifikate festzulegen.
Was ist los, hat die Bequemlichkeit die Sicherheit in einem Bereich wie dem Finanzwesen wirklich überwogen? Aber nein, es stellt sich heraus, dass die Sicherheit beider Optionen gleich niedrig ist. Wie ist es, nun, es ist klar, dass die SMS-Authentifizierung alles andere als eine ideale Sicherheit ist, da sie SMS abfangen und ersetzen kann, aber die Krypta befindet sich sogar im Hardware-Träger! Der Punkt ist, dass jedes Sicherheitssystem anhand seines schwächsten Glieds bewertet wird.
Alice und Bob
Ich werde das Problem am Beispiel von Alice und Bob beschreiben. Stellen Sie sich vor, Alice hält ein Smartphone in einer Hand, auf dessen Bildschirm ein Zahlungsbeleg angezeigt wird. Auf der anderen Seite befindet sich ein digital signiertes drahtloses Token. Alice muss einen elektronischen Zahlungsauftrag unterschreiben. Dazu reicht es aus, den Token und das Smartphone zu koppeln und auf "Unterschreiben" zu klicken.
Als ob alles einfach und sicher genug wäre - beide Geräte gehören Alice und beide sind in ihren Händen. Angenommen, es gibt Bob, der in diesem Moment beschließt, Alices Dokument abzufangen und ein weiteres Dokument an ihren Token zu senden - beispielsweise einen Zahlungsauftrag, bei dem ein großer Betrag von Alices Konto auf ein unbekanntes Konto überwiesen wird.
Hier werden wir nicht verschiedene Szenarien betrachten, wie dies zu tun ist. Es reicht aus, die potenziell unsicheren Bereiche aufzulisten, in denen Bob die beabsichtigte Substitution durchführen kann. Der potenzielle Angriffsbereich umfasst also: Smartphone-Betriebssystem, Prozessor, Videoprozessor, RAM, drahtloser Kommunikationskanal. Durch das Abfangen der Smartphone-Steuerung per Fernzugriff kann Bob einen Angriff auf einen der aufgelisteten Bereiche ungefähr nach dem folgenden Algorithmus organisieren: Verfolgen Sie, ob das Token-Gateway zum Empfangen von Daten geöffnet ist, fangen Sie Alices Dokument auf dem Weg vom RAM zum drahtlosen Sender ab, senden Sie sein Dokument an das Token-Gateway und empfangen Sie es vom drahtlosen Empfänger des Smartphones signiertes Dokument und senden Sie es an einen bestimmten Host. Zeigen Sie gleichzeitig Informationen zu Alices erfolgreich signiertem Dokument auf dem Smartphone-Bildschirm an.Der Angriff kann über einen drahtlosen Kommunikationskanal ausgeführt werden, im Allgemeinen ist der Angriffsalgorithmus jedoch derselbe.
Jemand könnte eine Frage haben - was ist mit Kryptographie? Ist es wirklich unmöglich, Verschlüsselung zum Schutz vor Bob zu verwenden? Die Verschlüsselung kann natürlich verwendet werden, aber leider ist es unmöglich, die Schlüssel vor Bob, der die Kontrolle über das Smartphone übernommen hat, auf dem Smartphone selbst zu verbergen. Aber selbst wenn die Verschlüsselungsschlüssel außerhalb des Geräts verwendet werden, wird dies die Situation nicht retten, da Es ist sinnvoll, ein elektronisches Dokument nur zu verschlüsseln, bevor es an ein Token gesendet wird, um den drahtlosen Kanal zu schützen. Alle anderen Vorgänge mit dem Dokument im Smartphone selbst werden ausschließlich in offener Form ausgeführt. In dieser Situation kann sich der Benutzer nur auf das aktualisierte Antiviren- und Bank-Betrugsbekämpfungsprogramm verlassen.
Über Betrugsbekämpfung
Ich möchte ein paar Worte zu dieser umstrittenen Technologie sagen. Wenn jemand darauf gestoßen ist, wird er mich verstehen. Jede aus Sicht der Bank verdächtige Zahlung wird sofort gesperrt, und damit wird das Konto gesperrt, gefolgt von einem mehrtägigen Marathon, bei dem Dokumente gesammelt und der Bank nachgewiesen werden, dass Sie ein guter Bürger sind, der Geld an einen anderen guten Bürger überweisen möchte. Nun, das ist so, inspiriert von den jüngsten Ereignissen aus meiner eigenen Erfahrung.
MITM oder besser MID
Wir haben also eine Art Mann in der mittleren Bedrohung - "Man In The Middle" (MITM). In diesem Fall in der Mitte zwischen dem Smartphone-Bildschirm und dem digital signierten Token. Im Gegensatz zum klassischen Man-in-the-Middle-Angriff ist es jedoch unmöglich, ihn mit kryptografischen Methoden zu neutralisieren. Ich weiß nicht, ob diese Art von Angriff einen eigenen Begriff hat. Wir haben ihn eine Person in einem Gerät genannt - "Man In Device" (MID) . Im Folgenden werde ich diesen Angriff so nennen.
Die wachsenden Möglichkeiten von Cyberkriminellen, die Kontrolle über den Computer oder das Smartphone eines anderen Benutzers aus der Ferne abzufangen, eröffnen Perspektiven für verschiedene Hackerangriffe. Darüber hinaus kann der größte Schaden durch Angriffe im Zusammenhang mit der elektronischen Signatur verursacht werden - das Ersetzen von Dokumenten beim Signieren und das Ersetzen von Dokumenten beim Anzeigen. Beispielsweise wird Ihnen auf Ihrem Smartphone ein elektronischer Reisepass, eine elektronische Vollmacht, ein elektronischer Ausweis, ein elektronisches Ticket usw. angezeigt. Die Echtheit des Dokuments wird durch eine elektronische Signatur bestätigt. Wie können Sie jedoch schnell und zuverlässig überprüfen, ob das elektronische Dokument tatsächlich mit einer elektronischen Signatur signiert ist und dem Standard entspricht? Ich hoffe, jeder versteht, dass der Stempel mit den Worten "von einer qualifizierten elektronischen Signatur signiert" nichts mit der elektronischen Signatur zu tun hat.In Photoshop kann es auf jedes elektronische Dokument geklebt werden.
Es ist eine Sache, wenn Sie im Dienst ständig die Echtheit solcher elektronischer Dokumente überprüfen müssen - in diesem Fall sollten Sie über ein zertifiziertes Tool zum Empfangen, Anzeigen und Überprüfen elektronischer Dokumente verfügen. Zum Beispiel ein QR-Scanner und ein daran angeschlossener Computer mit vorinstallierter zertifizierter Software.
Wenn Sie jedoch ein einfacher Benutzer oder in Ihrem Unternehmen sind, müssen diese Vorgänge nicht regelmäßig ausgeführt werden, und Sie verfügen über ein normales Smartphone, um ein elektronisches Dokument zu überprüfen. Dann besteht die Gefahr, dass Sie Opfer eines Angriffs werden, bei dem Dokumente auf dem Bildschirm Ihres Geräts ersetzt werden.
Was ist auf dem Markt?
Gibt es heute Methoden und Geräte, um den Man In Device-Angriff zu neutralisieren? Ja, solche Geräte sind vorhanden. Dies sind Benutzerterminals der Trust Screen-Klasse.
Ihr Funktionsprinzip besteht darin, physisch zu verhindern, dass ein Angreifer das Gerät selbst betritt. Tatsächlich ist dies das gleiche Smartphone, jedoch mit vorinstallierter und zertifizierter Software, mit integrierter Software zum Arbeiten mit einer digitalen Signatur und abgeschnitten von der Außenwelt. Und es hat nur zwei Funktionen: Ein elektronisches Dokument eines bestimmten Formats zu akzeptieren, anzuzeigen, zu signieren und mit einer Signatur zurückzugeben. Oder akzeptieren Sie das signierte Dokument, zeigen Sie das Dokument selbst und eine Meldung über die Gültigkeit der digitalen Signatur an. Im Allgemeinen ist es bequem, sicher und zuverlässig, aber ich hätte gerne etwas Kompakteres für solche Fälle, idealerweise ohne Aufladen und etwas, das immer zur Hand ist.
Mit dieser Einstellung haben wir vor 1,5 Jahren mit dem Brainstorming begonnen, um nach einer neuen Lösung für die Bedrohung durch Man In Device zu suchen.
Zurück zu Alice und Bob
Kehren wir zur Klarheit der gefundenen Lösung noch einmal mit Alice und Bob zum Bedrohungsmodell zurück. Alice hält also immer noch ein Smartphone in der Hand, egal welche Marke und welches Modell und welches Betriebssystem. Nennen wir es ein nicht vertrauenswürdiges Gerät. In ihrer anderen Hand hält Alice ein bestimmtes Gerät mit einer digitalen Signatur. Wir gehen davon aus, dass dies ein zertifiziertes vertrauenswürdiges Gerät ist, das gemäß allen Kanonen der Informationssicherheit hergestellt wurde, und Bob kann dieses Gerät von Alice nicht hacken. Aber Bob stieg leicht in Alices Smartphone ein und ist bereit, den Man In Device-Angriff darauf auszuführen.
Möglicherweise stellen Sie fest, dass sich die Situation bislang nicht von der oben beschriebenen unterscheidet, in der Bob problemlos einen Dokumenten-Spoofing-Betrug ausführt. Wo ist die Lösung?
Die gefundene Lösung, die wir als "vertrauenswürdigen Anzeigeeffekt" bezeichnen, neutralisiert diese Angriffe nicht, ermöglicht es uns jedoch sicherzustellen, dass das richtige Dokument auf dem Smartphone-Bildschirm angezeigt wird. Dieses Prinzip ähnelt der Idee der Quantenkryptographie, bei der der Kommunikationskanal nicht geschützt ist, die Parteien jedoch garantiert den Versuch bestimmen, den Schlüssel abzufangen. In unserer Technologie verpflichten wir uns also nicht, die Unermesslichkeit zu nutzen, um Kommunikationskanäle, Betriebssystem, Prozessor usw. zu schützen, aber unsere Lösung ist in der Lage, die Tatsache der Ersetzung oder Änderung eines elektronischen Dokuments auf nicht vertrauenswürdigen Geräten, sei es ein Smartphone oder ein persönliches, zuverlässig zu bestimmen Computer.
Um zu verstehen, wie unsere Technologie funktioniert, stellen wir uns noch einmal vor, dass zum Signieren eines Dokuments eine Datei mit einem Dokument von einem Smartphone an ein vertrauenswürdiges Gerät gesendet wird. Auf dem Weg des Dokuments hat der Angreifer jedoch viele Möglichkeiten, das Dokument oder die darin enthaltenen Daten zu ersetzen. Und hier stellt sich die Hauptfrage. Wie können Sie sicherstellen, dass ein kleines vertrauenswürdiges Gerät ohne Bildschirm zur Anzeige des empfangenen Dokuments das richtige Dokument erhalten hat? In unserer Lösung senden wir das Dokument vom vertrauenswürdigen Gerät zurück und zeigen es erneut auf dem Smartphone-Bildschirm an. Das Bild des Dokuments auf dem vertrauenswürdigen Gerät wird jedoch mit bestimmten Sicherheitsetiketten versehen, die auf spezielle Weise generiert wurden. Die entwickelte Technologie erzeugt aufgrund der Prinzipien der visuellen Kryptographie einen "vertrauenswürdigen Betrachtungseffekt" - eine exotische Richtung im Bereich der modernen Kryptographie.
Über visuelle Kryptographie
Eine der bekanntesten Methoden gehört Moni Naor und Adi Shamir, die sie 1994 entwickelten. Sie demonstrierten ein gemeinsames geheimes Grafikschema, nach dem das Bild in n Teile unterteilt wurde, so dass nur eine Person mit allen n Teilen das Bild entschlüsseln konnte, während die anderen n-1 Teile keine Informationen über das Originalbild zeigten.
Durch das Verbinden getrennter Geheimnisse können Sie verborgene Informationen sehen.
In unserer Technologie funktioniert der umgekehrte Mechanismus: Drei Geheimnisse werden zu einem Ganzen zusammengefasst, sodass Sie nicht jedes der Geheimnisse in einer streng begrenzten Zeit isolieren können. Wenn Sie das Ganze nur in drei Originalteile aufteilen, können Sie die darin verborgenen Informationen sehen.
3 Geheimnisse sind hier versteckt
Geheimnisse sind geteilt
Lassen Sie uns das Kryptoschema des Algorithmus analysieren
Der Originaltext besteht aus drei Schwarzweißbildern. Jedes Pixel ist entweder 0 - transparent oder 1 - schwarz.
Wenn Bilder einander überlagert werden, werden die Pixel nach dem folgenden Prinzip zusammengeführt:
1) 0 + 0 + 0 = 0
2) 1 + 0 + 0 = 1 oder 0 + 1 + 0 = 1 oder 0 + 0 + 1 = 1
3) 1 + 1 + 0 = 1 oder 1 + 0 + 1 = 1 oder 0 + 1 + 1 = 1
4) 1 + 1 + 1 = 1
Das Zusammenführen von Bildern führt somit zum Verlust einiger Informationen (Zeilen 2 und 3), die ohne Schlüssel nicht möglich sind Stellen Sie jedes der Bilder separat wieder her. Dies ist die Verschlüsselungsstufe.
Jetzt zeige ich Ihnen, wie Sie einen Entschlüsselungsschlüssel generieren, dh das Bild wieder in seine ursprünglichen Komponenten zerlegen.
Zum Beispiel haben wir drei Fragmente der Originalbilder vor uns, die sich überlagern:
Das verschlüsselte Fragment des Bildes enthält schwarze und transparente Pixel und enthält weniger Informationen als die drei Originalbilder.
Um einen Entschlüsselungsschlüssel zu erstellen, müssen Sie die schwarzen Pixel in jedem Fragment der Originalbilder durchlaufen und sie gemäß den Koordinaten abgleichen.
Der resultierende Schlüssel enthält die Koordinaten der schwarzen Pixel im verschlüsselten Bild und deren ursprünglichen Inhalt.
In dem gegebenen Beispiel wird der folgende Schlüssel erhalten:
a1: 110, c2: 011, d2: 111, b4: 010, a5: 110, c5: 111
wobei a1 die Koordinaten des schwarzen Pixels im verschlüsselten Bild sind und 110 die Farben der Pixel mit denselben Koordinaten sind in den Originalbildern.
Dieser Krypto-Algorithmus ist im Wesentlichen eine Einwegfunktion mit einem Schlüssel.
Über kryptografische Stärke
Berechnen wir den Kryptowiderstand dieses Algorithmus. Jedes schwarze Pixel ist das Ergebnis des Zusammenführens von Pixeln aus drei Ebenen. Gleichzeitig gibt es, wie oben gezeigt, 7 Optionen für eine solche Zusammenführung, ich werde sie noch einmal zitieren:
Somit gibt es in einem kleinen Fragment des im Beispiel angegebenen Bildes, das aus 6 schwarzen Pixeln besteht, 7 bis zur 6. Potenz oder 117 649 Optionen für die Zerlegung in Originalbilder ...
Es ist leicht abzuschätzen, dass, wenn beispielsweise 1000 solcher Pixel auf einem Bild in voller Größe erscheinen,dann beträgt die Anzahl der Optionen 7 bis 1000. PotenzKombinationen.
Es ist klar, dass mit einem gegebenen Kryptowiderstand eine direkte Hacking-Methode unmöglich ist. Der potenzielle Angreifer verfügt jedoch über andere Methoden zur Kryptoanalyse.
Unter Berücksichtigung der Tatsache, dass Bilderkennungssysteme, die auf neuronalen Netzen basieren, in letzter Zeit große Fortschritte gemacht haben, könnte ein potenzieller Angreifer sie durchaus verwenden, um ein Bild eines Authentizitätscodes auf einem einzelnen Bild zu erkennen. In diesem Fall ist dieses Tool jedoch aus drei Gründen machtlos.
Zunächst wird der Authentizitätscode in deformierter Form in Form eines Captchas angezeigt. Darüber hinaus sind auch die Position des Captchas und der Neigungswinkel zufällig.
Zweitens wird das Captcha mit einem zufällig gemusterten Sicherheitsraster und Dokumenttext gemischt.
Und drittens ist die Zeit für einen Versuch, den Angreifer zu erkennen, mit 1-2 Sekunden extrem kurz. Dies ist die Zeit, die ab dem Moment vergehen muss, in dem der Benutzer die Taste auf dem vertrauenswürdigen Gerät drückt und das Bild auf dem Bildschirm des nicht vertrauenswürdigen Geräts angezeigt wird.
Versuchen Sie, ein Codewort zu erkennen, das mit einem Sicherheitsnetz und einem Teil des Dokumenttextes gemischt ist
Nach Verfärbung des Schutznetzes
Das gleiche Fragment nach der Schicht mit dem Schutznetz ist teilweise verfärbt - das Codewort ist leicht zu erkennen
Ist alles so glatt?
Ein Überblick über die vorgestellte Technologie wäre jedoch unvollständig, ohne eine potenzielle Lücke zu erwähnen, die ein Hacker ausnutzen könnte. Tatsache ist, dass eine der drei Ebenen auf einem einzelnen Bild dem Angreifer Bob im Voraus bekannt ist - dies ist ein Bild mit dem Text des Dokuments. Natürlich hat Bob auch ein Bild seines eigenen Dokuments, durch das er Alices Dokument ersetzen wird. Und dann kann Bobs Aufgabe stark vereinfacht werden. Wenn Sie eines der drei Geheimnisse in Form einer Ebene mit einem Textbild kennen, können Sie eine Maske mit einem Bild dieses Geheimnisses von einem einzelnen Bild subtrahieren. Als Ergebnis wird ein Bild angezeigt, das zwei Ebenen enthält - mit einem Schutznetz und einem Authentizitätscode. Dann wird das resultierende Bild mit dem Bild des Textes des Originaldokuments gemischt. Und das ist alles - das Problem des Hackens ist gelöst.
Hier ist jedoch nicht alles so einfach: In den Bereichen, in denen Textpixel mit Pixeln des Sicherheitsgitters und / oder des Authentizitätscodes gemischt werden, bleiben nach dem Subtrahieren der Maske sichtbare Lücken bestehen. Wenn sich der Originaltext jedoch durch eine kleine Anzahl von Zeichen auf dem lokalen Fragment vom gefälschten unterscheidet, verschwinden diese Lücken in den meisten Abschnitten, nachdem das Restbild des Sicherheitsgitters mit dem Authentizitätscode dem Originaltext auferlegt wurde, und verbleiben nur in einem kleinen Fragment, in dem die Ersetzung vorgenommen wurde. Daher bemerkt Alice möglicherweise nicht einmal die Dokumentersetzung.
Entscheidung
Um die Möglichkeit des Hackens gemäß dem obigen Szenario zu verhindern, wird eine ziemlich einfache Lösung vorgeschlagen. Auf dem vertrauenswürdigen Gerät wurde das Bild des Textes des Dokuments zuvor durch zufällige Werte leicht verzerrt. Der einfachste Weg zum Verformen besteht darin, die Breite jedes der 4 Ränder jeder Seite des Dokuments zu ändern.
Darüber hinaus ändert sich die Breite jedes Feldes auf seinen Zufallswert, entweder in Richtung der Zunahme oder Abnahme. Es reicht aus, die Breite der Felder um einige Pixel zu ändern, und dieser Angriff ist mit bloßem Auge in Form von Restartefakten aus den Teilen der baumelnden Zeichen sichtbar, nachdem die Maske abgezogen wurde. Wenn der Text des Dokuments wie im folgenden Beispiel Linien enthält, sind die Linienbilder nicht betroffen, wenn der Text deformiert wird.
Durch eine reibungslose Verfärbung des Sicherheitsnetzes können Sie sicherstellen, dass sich der Text des Dokuments nicht ändert.
Zum besseren Verständnis wird ein Beispiel mit Schwarzweißbildern angegeben. Mit einer bestimmten Modifikation des Algorithmus kann er jedoch auch auf Farbbilder angewendet werden.
Nun ein paar Worte zur Rolle des Benutzers in dieser Technologie. Die Verwendung visueller Kryptografiemethoden in der Technologie impliziert die Verwendung der Vision des Benutzers als Hauptmetrik für die Beurteilung des Fehlens oder Vorhandenseins eines Man In Device-Angriffs. Tatsächlich handelt es sich um eine visuelle Validierung, die in zwei aufeinander folgenden Vorgängen des Benutzers
ausgedrückt wird : 1. Vergleichen des Authentizitätscodes auf dem Indikator eines vertrauenswürdigen Geräts mit dem Authentizitätscode im Captcha auf dem Dokumentbild
als vertrauenswürdiges Gerät, wird vorgeschlagen , eine spezielle Plastikkarte erstellen
mit einem Indikatoren eines Echtheitscode und Tasten „bestätigen“ und „Abbrechen“
2.Comparison des Textes mit einer allmählichen Abnahme des Kontrast von Schichten mit einem Schutzgitter und Authentizität Codes mit dem ursprünglichen Text des Dokuments angezeigt
Das ist letzte Operation auf die Fähigkeit einer Person zu bemerken , basierend die geringste Veränderung im Gesamtbild. So wie ein Jäger im geringsten Umriss ein sich bewegendes Wild im Wald durch die Zweige der Bäume bemerken kann, so kann der Benutzer hier deutlich sehen, dass sich der allmählich entstehende Text des Dokuments nicht ändert, wenn der Kontrast der beiden anderen Bildebenen abnimmt und im Kontext dem Original entspricht.
Es ist die visuelle Validierung, die den endgültigen vertrauenswürdigen Anzeigeeffekt erzeugt.
PS Im nächsten Teil werde ich versuchen, darüber zu sprechen, mit welchen Problemen ich bei der Entwicklung eines Prototyps konfrontiert war, wie es möglich ist, einige der komplexen Berechnungen von einem vertrauenswürdigen Gerät auf einen vertrauenswürdigen Server zu übertragen, ohne die Sicherheit zu beeinträchtigen, und ob es uns gelungen ist, einen Investor für das Projekt zu finden.