{"id":210884,"date":"2018-10-24T00:17:00","date_gmt":"2018-10-23T22:17:00","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=210884"},"modified":"2021-08-26T17:02:53","modified_gmt":"2021-08-26T15:02:53","slug":"schwachstelle-in-jquery-plugin-seit-3-jahren-angegriffen","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2018\/10\/24\/schwachstelle-in-jquery-plugin-seit-3-jahren-angegriffen\/","title":{"rendered":"Schwachstelle in jQuery-Plugin seit 3 Jahren angegriffen"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"float: left; margin: 0px 10px 0px 0px; display: inline\" src=\"https:\/\/borncity.com\/blog\/wp-content\/uploads\/2015\/01\/Schutz.jpg\" width=\"40\" align=\"left\" height=\"47\"\/>Noch eine kurze Meldung aus dem Bereich Sicherheit. Eine Zero-Day-Schwachstelle in einem jQuery File Upload-Plugin war Cyber-Kriminellen bekannt und wird seit mindestens 3 Jahren ausgenutzt. Es gibt zwar einen Fix, aber offenbar sind noch viele veraltete Fassungen (Forks) des Plugins im Einsatz.<\/p>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/vg05.met.vgwort.de\/na\/db28740873574fa392e59774533ad783\" width=\"1\" height=\"1\"\/>Die Information findet sich in <a href=\"https:\/\/www.zdnet.com\/article\/zero-day-in-popular-jquery-plugin-actively-exploited-for-at-least-three-years\/\" target=\"_blank\" rel=\"noopener\">diesem ZDNet.com-Beitrag<\/a>, der auf die Problematik hinweist. Die Schwachstelle betrifft das jQuery File Upload Plugin, das von dem deutschen Entwickler Sebastian Tschan (Blueimp) geschrieben wurde.<\/p>\n<h2>jQuery File Upload Plugin-Schwachstelle<\/h2>\n<p>Das Plugin ist das zweith\u00e4ufigste benutzte jQuery-Projekt auf GitHub, am h\u00e4ufigsten wird das jQuery-Framework abgerufen. Das jQuery File Upload Plugin wurde \u00fcber 7.800 Mal als Fork angelegt und dann in m\u00f6glicherweise Tausenden anderer Projekte integriert. Das Plugin findet sich in CMS, CRM, Intranetl\u00f6sungen, WordPress-Plugins, Drupal-Add-ons, Joomla-Komponenten und so weiter.<\/p>\n<p>Eine Schwachstelle in einem solchen Plugin ist verheerend, da sie Sicherheitsl\u00fccken in vielen Plattformen aufrei\u00dft. Und genau dieses Worst-Case-Szenario ist passiert. Anfang 2018 hat Larry Cashdollar, ein Sicherheitsforscher f\u00fcr Akamais SIRT (Security Intelligence Response Team), eine Schwachstelle im Quellcode des Plugins entdeckt, die Datei-Uploads auf PHP-Server verarbeitet. <\/p>\n<p>Diese Schwachstelle erm\u00f6glicht Angreifern b\u00f6sartige Dateien (f\u00fcr Backdoors und Shells) auf Server hochzuladen. Gegen\u00fcber ZDNet sagte Larry Cashdollar, dass die Schwachstelle in the wild seit 2016 ausgenutzt werde. Die Schwachstelle scheint eine der am schlechtesten geh\u00fcteten Geheimnisse der Hackerszene gewesen zu und bereits vor 2016 aktiv genutzt worden zu sein.<\/p>\n<p>Alle jQuery File Upload-Versionen vor 9.22.1 sind anf\u00e4llig. Da die Schwachstelle auf spezifischem PHP-Code f\u00fcr den Datei-Upload basiert, sollten andere serverseitige Implementierungen als sicher angesehen werden.<\/p>\n<h2>Ursache f\u00fcr CVE-2018-9206 in Apache<\/h2>\n<p>Nachdem Cashdollar den Zero-Day-Bug Anfang des Monats an Blueimp meldete, untersuchte dieser die Schwachstelle. Der Entwicklers identifizierte die Ursache der Schwachstelle nicht im Code des Plugins, sondern in einer \u00c4nderung im Apache Web Server Projekt aus dem Jahr 2010. Am 23. November 2010, nur f\u00fcnf Tage bevor Blueimp die erste Version seines Plugins auf den Markt brachte, hat die Apache Foundation die Version 2.3.9 des Apache HTTPD-Servers ver\u00f6ffentlicht. Dieses Release wirkte sich indirekt auf das erwartete Verhalten des Plugins auf Apache Servern aus.<\/p>\n<p>Ab dieser Version unterst\u00fctzte der Apache HTTPD-Server eine Option, die es dem Serverbesitzer erm\u00f6glicht, benutzerdefinierte Sicherheitseinstellungen f\u00fcr einzelne Ordnern \u00fcber .htaccess-Dateien zu ignorieren. Diese Einstellung wurde aus Sicherheitsgr\u00fcnden vorgenommen, war standardm\u00e4\u00dfig aktiviert und blieb es auch f\u00fcr alle nachfolgenden Versionen des Apache HTTPD-Servers.<\/p>\n<p>Das jQuery File Upload-Plugin setzte aber voraus, dass eine benutzerdefinierte .htaccess-Datei existiert, um Sicherheitseinschr\u00e4nkungen f\u00fcr seinen Upload-Ordner festzulegen. Und genau das war vom Apache HTTPD-Team f\u00fcnf Tage zuvor ge\u00e4ndert worden \u2013 das grundlegende Design des Plugins war damit sicherheitstechnisch wertlos. Inzwischen hat Blueimp sein Pluging \u00fcberarbeitet, aber viele Forks nutzen noch den alten Code. Laut Sicherheitsforscher sind so gut wie alle Forks angreifbar. Cashdollar hat das Ganze in <a href=\"https:\/\/web.archive.org\/web\/20210315213806\/https:\/\/blogs.akamai.com\/sitr\/2018\/10\/having-the-security-rug-pulled-out-from-under-you.html\" target=\"_blank\" rel=\"noopener\">diesem Akamai-Blog-Beitrag<\/a> dokumentiert \u2013 weitere Details lassen sich <a href=\"https:\/\/www.zdnet.com\/article\/zero-day-in-popular-jquery-plugin-actively-exploited-for-at-least-three-years\/\" target=\"_blank\" rel=\"noopener\">bei ZDNet<\/a> nachlesen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Noch eine kurze Meldung aus dem Bereich Sicherheit. Eine Zero-Day-Schwachstelle in einem jQuery File Upload-Plugin war Cyber-Kriminellen bekannt und wird seit mindestens 3 Jahren ausgenutzt. Es gibt zwar einen Fix, aber offenbar sind noch viele veraltete Fassungen (Forks) des Plugins &hellip; <a href=\"https:\/\/borncity.com\/blog\/2018\/10\/24\/schwachstelle-in-jquery-plugin-seit-3-jahren-angegriffen\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[426],"tags":[4328],"class_list":["post-210884","post","type-post","status-publish","format-standard","hentry","category-sicherheit","tag-sicherheit"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/210884","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=210884"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/210884\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=210884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=210884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=210884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}