{"id":3017,"date":"2021-11-16T10:20:47","date_gmt":"2021-11-16T10:20:47","guid":{"rendered":"https:\/\/network-king.net\/compiler-fehler-erleichtert-angriffe-auf-lieferketten\/"},"modified":"2022-03-23T09:00:12","modified_gmt":"2022-03-23T09:00:12","slug":"compiler-fehler-erleichtert-angriffe-auf-lieferketten","status":"publish","type":"articles","link":"https:\/\/network-king.net\/de\/compiler-fehler-erleichtert-angriffe-auf-lieferketten\/","title":{"rendered":"Compiler-Fehler erleichtert Angriffe auf Lieferketten"},"content":{"rendered":"\n<p>Forscher der Universit\u00e4t Cambridge haben einen Fehler entdeckt, der die meisten Compiler betrifft. Der Fehler erm\u00f6glicht es, f\u00fcr das menschliche Auge unsichtbare Schwachstellen in Programme einzuschleusen, die sich noch in ihrer Entwicklung befinden. Diese gezielten Schwachstellen k\u00f6nnten dann den Weg f\u00fcr Angriffe auf Lieferketten ebnen. Diese wurden nach dem SolarWinds-Fall, der Ende 2020 mit einer Flut kompromittierter Systeme bei Unternehmen des Privatsektors und gro\u00dfen US-Regierungsbeh\u00f6rden auftrat, bekannter.<\/p>\n\n\n\n<p>In einem Artikel mit dem Titel \u201e<em><a href=\"https:\/\/www.trojansource.codes\/\" target=\"_blank\" rel=\"noreferrer noopener\">Trojan Source: Invisible Vulnerabilities<\/a><\/em>\u201c (Unsichtbare Schwachstellen) erkl\u00e4ren die Forscher, dass Entwicklungssysteme, wie z. B. Open-Source-Systeme, auf menschliche \u00dcberpr\u00fcfung angewiesen sind. Nur so k\u00f6nnen sie b\u00f6sartige Beitr\u00e4ge von Freiwilligen erkennen.<\/p>\n\n\n\n<p>Wie ist es also m\u00f6glich, Compiler so auszutricksen, dass sie Bin\u00e4rcode erzeugen, der nicht mit dem programmierten Code \u00fcbereinstimmt \u2013 die so genannten Trojanischen Pferde in Quellcodeform? Es wurden einige Tricks entdeckt, um die Quellcodedateien so zu manipulieren, dass menschliche Pr\u00fcfer und Compiler eine andere Logik erkennen. Den Forschern zufolge funktioniert dieser Angriff mit den Sprachen C, C ++, C #, JavaScript, Java, Rust, Go und Python. Es wird vermutet, dass er auch mit den meisten anderen modernen Sprachen funktioniert.<\/p>\n\n\n\n<p>Die Schwachstelle hat mit der Unicode-Komponente und ihrem bidirektionalen oder \u201eBidi\u201c-Algorithmus zu tun. Im Detail ist <a href=\"https:\/\/home.unicode.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Unicode<\/a> der Standard, der ein Zeichen einer eindeutigen Zahl zuordnet, die von Computern unabh\u00e4ngig von Plattform, Programm oder Sprache verstanden wird. Der Bidi-Algorithmus hingegen befasst sich mit Bedeutungsunterschieden bei der Anzeige von Texten \u2013 zum Beispiel, wenn ein Satz in Englisch, der von links nach rechts gelesen wird, in einer arabischen Zeitung zitiert wird, deren Sprache von rechts nach links interpretiert wird.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/network-king.net\/wp-content\/uploads\/2021\/11\/supply.jpg\" alt=\"\" class=\"wp-image-2948\" width=\"461\" height=\"199\" srcset=\"https:\/\/network-king.net\/wp-content\/uploads\/2021\/11\/supply.jpg 922w, https:\/\/network-king.net\/wp-content\/uploads\/2021\/11\/supply-300x130.jpg 300w, https:\/\/network-king.net\/wp-content\/uploads\/2021\/11\/supply-768x332.jpg 768w\" sizes=\"(max-width: 461px) 100vw, 461px\" \/><figcaption>Quelle: <a href=\"https:\/\/arxiv.org\/pdf\/2106.09898.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">Eine weitere Arbeit von Forschern aus Cambridge<\/a> \u2013 Angriff durch Umordnung in einem maschinellen \u00dcbersetzungssystem. Der rote Kreis zeigt die in umgekehrter Reihenfolge kodierte Zeichenfolge an.<\/figcaption><\/figure><\/div>\n\n\n\n<p>Dieses <a href=\"https:\/\/krebsonsecurity.com\/2011\/09\/right-to-left-override-aids-email-attacks\/\" target=\"_blank\" rel=\"noreferrer noopener\">Schlupfloch<\/a> wurde bereits vor mehr als zehn Jahren ausgenutzt, um die Dateierweiterungen von per E-Mail verbreiteten Malware-Dateien zu verschleiern.<\/p>\n\n\n\n<p>Im speziellen Fall von Compilern und Programmiersprachen k\u00f6nnen die Steuerzeichen f\u00fcr die Anzeigereihenfolge frei, scheinbar harmlos und vor den Augen der Korrekturleser gesch\u00fctzt verwendet werden. Mehrere Ebenen von Textsequenzen und solche Codes k\u00f6nnen eine scheinbar zuf\u00e4llige Neuordnung bewirken, die aber in Wirklichkeit ein Anagramm einer ausgefeilten Logik ist.  Im Allgemeinen verarbeiten Compiler keine Formatierungssteuerzeichen, einschlie\u00dflich Bidi-Codes, sodass dieses Schlupfloch ausgenutzt werden kann, um Anweisungen zu entwerfen. Diese k\u00f6nnen visuell nicht erkannt werden.  Die meisten gut durchdachten Programmiersprachen lassen die Verwendung beliebiger Steuerzeichen im Quellcode nicht zu, da sie wohl dazu geeignet sind, die programmierte Logik zu beeinflussen. In solchen F\u00e4llen f\u00fchrt die Einf\u00fchrung von Bidi-Steuerzeichen in den Quellcode in der Regel zu einem Syntaxfehler.<\/p>\n\n\n\n<p>In dem Papier weisen die Forscher darauf hin, dass Gegenma\u00dfnahmen auf verschiedenen Ebenen ergriffen werden k\u00f6nnen. Sie reichen von der Sprach- und Compiler-Spezifikation bis hin zu Code-Repository und der Entwicklungspipeline. Sie glauben auch, dass eine langfristige L\u00f6sung f\u00fcr das Problem in den Compilern selbst implementiert werden wird. Ihrer Meinung nach sch\u00fctzen fast alle Compiler bereits vor der Erstellung von Funktionen mit Null-Zeichen-Namen. Andere melden bereits Fehler als Reaktion auf Tricks, die Hieroglyphen in Funktionsnamen ausnutzen.<\/p>\n\n\n\n<p>Dar\u00fcber hinaus behaupten die Forscher, sie h\u00e4tten alle Unternehmen und Organisationen informiert, in deren Produkten Schwachstellen entdeckt wurden. Sie sagen, dass sie ihnen ein 99-t\u00e4giges Embargo nach der ersten Ver\u00f6ffentlichung angeboten h\u00e4tten, damit die betroffenen Produkte gepatcht werden k\u00f6nnen. Es h\u00e4tte verschiedene Reaktionen auf die Kontaktaufnahme gegeben, die von Patch-Zusagen und Bug-Bounties bis hin zu einer fristlosen K\u00fcndigung und Verweisen auf die Rechtspolitik reichten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Forscher der Universit\u00e4t Cambridge haben einen Fehler entdeckt, der die meisten Compiler betrifft. Der Fehler erm\u00f6glicht es, f\u00fcr das menschliche Auge unsichtbare Schwachstellen in Programme einzuschleusen, die sich noch in ihrer Entwicklung befinden. Diese gezielten Schwachstellen k\u00f6nnten dann den Weg f\u00fcr Angriffe auf Lieferketten ebnen. Diese wurden nach dem SolarWinds-Fall, der Ende 2020 mit einer&#8230;<\/p>\n","protected":false},"featured_media":2951,"comment_status":"closed","ping_status":"closed","template":"","format":[],"category":[47],"tags":[],"company":[],"topic":[],"class_list":["post-3017","articles","type-articles","status-publish","has-post-thumbnail","hentry","category-cybersecurity"],"acf":[],"_links":{"self":[{"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/articles\/3017","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/articles"}],"about":[{"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/types\/articles"}],"replies":[{"embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/comments?post=3017"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/media\/2951"}],"wp:attachment":[{"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/media?parent=3017"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/category?post=3017"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/tags?post=3017"},{"taxonomy":"format","embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/format?post=3017"},{"taxonomy":"company","embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/company?post=3017"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/network-king.net\/de\/wp-json\/wp\/v2\/topic?post=3017"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}