Was macht der Key beim rendern? Wegrennen.

Efail hat alle schockiert, weil durch einen Syntax Fehler der durch einen Hacker verursacht wird, ganz einfach Key`s und Content den Stream verlassen bzw. an fremde Server gesendet werden können. Nun habe ich mir den Witz von oben angesehen (Was macht der Key beim rendern? Weg rennen) und mich gefragt ob man theoretisch eine HTTPS Verbindung oder einen internen File-Stream unterbrechen könnte und dann einen Exploit verursachen könnte.

Witz über Fluide Objekte: Was macht der Key beim rendern? Efail | PGP
Witz über Fluide Objekte: Was macht der Key beim rendern? Efail | PGP

Das Problem ist grundsätzlich einfach: Ein Computer arbeitet logisch einfach von "oben" nacht "unten". Und da in dem betreffenden Fall ein Fehler, bzw. absichtlich ein exploit vor dem eigentlichen Code platziert ist, kommt es dazu, dass dieser Code zuerst und für alle anderen Befehle geltend ausgeführt wird. So kommt es in der Programmierung doch häufig vor, dass es zu solchen Fehlern kommt, was dann entweder zu einem Freeze führt oder ein solches Sicherheitsrisiko wie im vorliegenden Fall von Efail darstellt. Dass der gesamte verschlüsselte Filestream an den betreffenden Bildserver geht, ist deshalb einzig und allein die Folge, von unterlassenen Abgrenzungen bzw. Error Expections von den betreffenden PGP S/MIME Plugins/Clients. Denkt man nun an solche Fehler, so ist es für mich unmöglich, nicht an meinen Artikel zu ZIP Bomben zu denken, denn diese verlassen auch, denn für sie vorgesehenen Rahmen:

Schon wieder dieser Witz: Two objects rammed together, wenn das unten beschriebene Szenario tatsächlich passiert wäre oder passieren würde, dann wäre dieser Witz auf jedenfalls angebracht. Die fiktive Firma die ich in der Geschichte genannt habe, setzt auf eine ganz normale DDOS Protection, die ihren Server vor Flood-DDOS Angriffen schützen soll. Dies klappt normalerweise auch gut. Da die Firma File-Handling benötigt, bzw. eine Uploadfunktion hat, verfügt der Server auch über einen Uploadfilter sowie über ein gesicherter Ordner, in dem die Dateien gescannt werden. Der betreffende Ordner ist nicht mehr im WWW Verzeichnis und ist aber auch nicht im eigentliche User-Verzeichniss.

Die meisten Bot Zugriffe konnten durch die DDOS-Protection abgewimmelt werden, doch einige schafften es dennoch durch.

Diese Bots laden nun Dateien hoch. Es gilt die folgende Chart:

 

User sends the header containing the data

Firewall / DDOS Protection make a Deep Packet Inspection to check the data

PHP FILE GET INPUT FUNCTION

DATEI WIRD ZWISCHENGESPEICHERT

Viren-Scan

Einlagerung in die Datenbank

Die Absicherung von IT Systemen und Programmen gegen solche Sicherheitslücken ist nicht einfach, ist aber grundsätzlich mit dem folgendem Punkt realisierbar:

Wer Sicherheit und Datenintegrität will, dem sollte bewusst sein, dass er diese nur erreichen kann, wenn er für genügend Error Expections sorgt. Und dabei reichen solche einfachen und lapidaren }else if{ Statements absolut nicht aus, denn diese sind viel zu generalistisch. So kann es sein, dass semantische Fehler oder Fehler die aufgrund von Freezes auftreten gar nicht durch diese Statements erfasst werden, da diese Art von Statement nur schaut ob die Daten richtig sind und nicht, ob diese Daten auch rechtzeitig und vollständig bzw. richtig "ankamen" bzw. verarbeitet werden. Das sogenannte Error-Handling ist auch deshalb essenziell, weil es zur Vermeidung von Schäden und Abstürzen notwendig ist. Doch was hat Error-Handlin mit der Efail Sicherheitslücke zu tun? Um dies zu erklären, solltest du wissen, wie die Lücke genau aufgebaut ist:

 

Efail gefährdet die Sicherheit von verschlüsselten Emails (PGP und S/MIME), da durch das Nachladen bzw. Anfordern von Bildinhalten, der gesamte verschlüsselte Filestream an den betreffenden Bildserver geht. Eigentlich handelt es sich um ein fehlerhaftes Laden, was die Systemintegrität bzw. Datenintegrität gefährdet. Die Angreifer dringen in den File-Stream ein und fügen ihm ein <img Tag hinzu, welches sie nach der Source nicht schliessen, was dann die Verbindung zum Server herstellt. Dieses "herausbrechen" von einem Datenstream kann sogar schon physisch bedingt zu einem Datenverlust kommen, weshalb die Angreifer meist nur sehr kleine Teile der Nachricht entschlüsseln können. Neben dem Laden von den neusten Plugin Updates lohnt es sich sehr, das Nachladen von Bildern zu beschränken bzw. bis zum Update ganz zu verbieten. Oder du deaktivierst das Nachladen, nimmst dein Gerät offline und schaust dir im Quellcode die URL an, auf der sich das Bild befindet. Es kommt bei der Lücke zu einer heiligen Entschlüsselung bzw. Verarbeitung.

Wenn du Fragen hast oder Hilfe benötigst, kannst du dich jederzeit per Kontaktformular an mich wenden.  Mehr zur Efail-Sicherheitslücke 

 

Würde man nun das Error-Handling des Empfänger-Dekodierungsclients mit einer Funktion ergänzen, die den Inhalt von dem <img Tag bei der Lücke prüfen würde, so könnte eine Decodierung und damit die Übermittlung der Daten verhindert werden. Natürlich tönt dies hier einfacher als es in der Tat ist.

 

Allgemein gesagt sollte man versuchen das Error-Handling mehr "gegen" die gewünschte Antwort richten, da es so in einem Fall von einem Semantik-Fehler wahrscheinlicher ist, dass dieser umgehen werden kann. Nun kann man den betreffenden Fehler aber auch auf andere Applikationen übertragen, man stelle sich nur ein Programm vor, welches aufgrund von einem "verspäteten" Prozess falsche Daten, bzw. einen Datenzusatz erhalten würde. Dies würde zwar in diesem Fall nicht unbedingt zu einem Datenverlust führen, könnte aber zu einem Absturz oder zu einer Verletzung der Datenintegrität führen.

Beispiel:

+0100sharingdTrying to grab power assertion while we already have one

Dieser Fehler habe ich zuvor nur auf Linux Geräten gesehen. Gestern aber, fand ich diese Fehlermeldung in meinen Log-Files.

Dabei wird vom Hardware Device Manager für ein Prozess Spannung bzw. Energie angefragt, obwohl diese Energie bereits vorhanden ist. Währenddessen, bemerkte ich eine starke Auslastung! Dies wurde mir in der Aktivitätsanzeige angezeigt.

 Energie, bzw. der Strom wird in einem neuen Modul gebraucht, das für die betreffende Aktion verwendet werden muss, weshalb ich davon ausgehe, dass das Problem in den Caches oder beim RAM liegt. So könnte es sein, das keine Rückmeldung kam. Da das Gerät bei diesem Fehler aber immer noch problemlos weiter funktioniert, denke ich eher, dass es ein Problem beim Schreiben/Lesen des Zwischenstands gab. Wie allgemein bekannt ist, werden Assertionen in der Informatik als Überprüfungen von Code bzw. von Funktionen verwendet. In dem Fehler, denn man oben sehen kann, kam es zu einer Ausnahme die möglicherweise nicht erkannt wurde bzw. richtig verarbeitet wurde, weshalb es zu dem Fehler kam.

 

Tipps:

 

1.Update Plugins/Clients.

2.Purge den RAM, sobald eine Leistungsspitze erreicht wird, da dies das Risiko eines Absturzes, bzw. einer Verzögerung minimiert.

3.Konfiguriere die Firewall bzw. die Permissions des Programmes so, dass der Zugriff nur auf eine begrenzte Liste möglich ist.

4.Führe Tests bzw. eine Überprüfung im Offline bzw. deaktivierten API Modus durch.

 

Alle Angaben ohne Gewähr. Stand: 18.05.2018 21:11

Click the button

Chance of Elysion | Buy my book now:

Chance of Elysion | There is only one step at a time, so Cooper manages to find some relief knowing that there is only one intruder.  Still, the unknown whereabouts of O`Brien keep him at the edge, making him lean some more out of his hideout towards the
Me with my book | Chance of Elysion | There is only one step at a time, so Cooper manages to find some relief knowing that there is only one intruder. Still, the unknown whereabouts of O`Brien keep him at the edge, making him lean some more out of his hi

TRAPPIST-1 E is a new chance for humanity and scientists finally found a way how to reach that place. In Elysion town they build the first human colony outside of earths star- system. But shortly before arriving on TRAPPIST-1 E, they meet an old friend: Greed and Hate. There is an explosion on the colony ship and on the planet the colony is repeatedly attacked for no reason by traitors, the separatists. When the Separatists send an encrypted signal to Earth, the mayor of Elysion Town, Cooper, begins the rescue of the colony from which they fled from Earth. Can humanity change or is this its nature? Cooper needs to rescue his daughter Sophie from the hands of the separatists and wants to keep her, as well as her little sister Shannon, from suddenly becoming a copy of the destroyed and exploited first earth.

Chance of Elysion | An event like this was supposed to happen. A revolution is always waiting to explode. | TRAPPIST-1 E is a new chance for humanity and scientists finally found a way how to reach that place. In Elysion town they build the first human co
Chance of Elysion by Severin Kämpfer


KONTAKT

Bitte den Code eingeben:

Hinweis: Bitte die mit * gekennzeichneten Felder ausfüllen.


ADCELL

Hey! Thats me!

Severin Kämpfer Bremgarten bei Bern

16 years old trekkie.

Persönliche Webseite:

https://www.severin-kaempfer.ch

Unterstütze KKTVCAM mit 1 CHF! Bezahle mit Bitcoin!



Made with ♥ in Bern (Switzerland)!

KKTVCAM ÜBERNIMMT KEINE HAFTUNG FÜR ALLE ANGABEN AUF DIESER SEITE.