{"id":203131,"date":"2018-04-09T09:09:17","date_gmt":"2018-04-09T07:09:17","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=203131"},"modified":"2024-08-12T13:14:52","modified_gmt":"2024-08-12T11:14:52","slug":"authentifizierungsschwachstelle-in-auth0-geschlossen","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2018\/04\/09\/authentifizierungsschwachstelle-in-auth0-geschlossen\/","title":{"rendered":"Authentifizierungsschwachstelle in Auth0 geschlossen"},"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\" height=\"47\" align=\"left\" \/>Das h\u00f6rt sich nicht wirklich gut an: In der Auth0 Indenty-Plattform gab es eine Sicherheitsl\u00fccke, die die Umgehung der Authentifizierung erm\u00f6glicht. Das betraf Millionen von Anmeldevorg\u00e4ngen. Inzwischen scheint die L\u00fccke aber behoben zu sein.<\/p>\n<p><!--more--><\/p>\n<h2>Worum geht es bei Auth0?<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ssl-vg03.met.vgwort.de\/na\/464913fb3aa64ea1b2ab1d58fae45590\" alt=\"\" width=\"1\" height=\"1\" \/>Bei Auth0 handelt es sich um eine Identit\u00e4tsplattform, die das Login in verschiedenen Webseiten \u00fcbernehmen soll. Der Benutzer meldet sich bei der Auth0-Identit\u00e4tsplattform an und erh\u00e4lt mit deren Authentifizierung Zugang zu weiteren Webdiensten. Dazu reicht die Auth0 Indenty-Plattform ein entsprechendes Token an die betreffenden Seiten weiter, die das als Login-Information akzeptieren.<\/p>\n<p>Auth0 hat, laut <a href=\"https:\/\/thehackernews.com\/2018\/04\/auth0-authentication-bypass.html\" target=\"_blank\" rel=\"noopener\">The Hacker News<\/a> so um die 2.000 Unternehmenskunden und wickelt t\u00e4glich so um die 42 Millionen Anmeldevorg\u00e4nge ab. Es ist damit eine der gr\u00f6\u00dften Authentifizierungs-Plattformen. Die Plattform bzw. das Angebot ist <a href=\"https:\/\/auth0.com\/\" target=\"_blank\" rel=\"noopener\">hier<\/a> einsehbar. Auf Hackernoon findet sich <a href=\"https:\/\/web.archive.org\/web\/20230203173823\/https:\/\/hackernoon.com\/authentication-as-a-service-an-honest-review-of-auth0-315277abcba1\" target=\"_blank\" rel=\"noopener\">dieses Review<\/a> von September 2017.<\/p>\n<h2>Die Authentifizierungsschwachstelle<\/h2>\n<p>Bei Tests einer Anwendung <a href=\"https:\/\/medium.com\/@cintainfinita\/knocking-down-the-big-door-8e2177f76ea5\" target=\"_blank\" rel=\"noopener\">entdeckten<\/a> Forscher der Sicherheitsfirma Cinta Infinita im September 2017 eine Schwachstelle (<a href=\"https:\/\/cve.mitre.org\/cgi-bin\/cvename.cgi?name=CVE-2018-6873\" target=\"_blank\" rel=\"noopener\">CVE-2018-6873<\/a>) in der Legacy Lock API von Auth0. Eine falsche Validierung des JSON Web Tokens (JWT) Audience-Parameters erm\u00f6glichte es, die Anmeldung zu umgehen. Die Login-Authentifizierung lie\u00df sich mit einen einfachen Cross-Site Request Forgery (CSRF\/XSRF)-Angriff gegen die Anwendungen, die \u00fcber die Auth0-Authentifizierung laufen, umgehen.<\/p>\n<p>Die CSRF-Schwachstelle von Auth0 (CVE-2018-6874) erm\u00f6glicht es einem Angreifer, ein g\u00fcltiges, signiertes, f\u00fcr ein separates Konto generiertes JWT wiederzuverwenden. Damit lie\u00df sich auf das Konto des betroffenen Opfers zugreifen. F\u00fcr einen solchen Hack ben\u00f6tigte der Angreifer lediglich die Benutzer-ID oder E-Mail-Adresse des Opfers. Diese l\u00e4sst sich mit einfachen Social-Engineering-Tricks ermitteln.<\/p>\n<p>(Quelle: <a href=\"https:\/\/youtu.be\/9E7kfdGN1eY\" target=\"_blank\" rel=\"noopener\">YouTube<\/a>)<\/p>\n<p>Dazu ben\u00f6tigt ein Angreifer lediglich die Benutzer-ID oder E-Mail-Adresse des Opfers, die mit einfachen Social-Engineering-Tricks ermittelt werden kann. Nach Ansicht der Forscher ist der Angriff reproduzierbar und f\u00fcr viele Konten nutzbar, \"solange man die erwarteten Felder und Werte f\u00fcr die JWT kennt. In den meisten F\u00e4llen besteht kein Bedarf an Social Engineering. Die Authentifizierung f\u00fcr Anwendungen, die eine E-Mail-Adresse oder eine inkrementelle Ganzzahl zur Benutzeridentifizierung verwenden, w\u00fcrde trivial umgangen.\"<\/p>\n<p>Die Sicherheitsforscher haben Auth0 kontaktiert, worauf diese binnen 4 Stunden reagiert und die Schwachstelle gefixt haben. Da die Auth0-Authentifizierung \u00fcber einen SDK und diverse Bibliotheken auf vielen Clients implementiert war, musste der Dienst alle Kunden kontaktieren. In den SDKs (auth0.js 9 und Lock 11) ist die Schwachstelle ausgemerzt. Es dauerte 6 Monate, bis das alles gefixt war, so dass die Information erst jetzt an die \u00d6ffentlichkeit gelangte. Ein entsprechendes Advisory wurde vor einigen Tagen <a href=\"https:\/\/auth0.com\/blog\/managing-and-mitigating-security-vulnerabilities-at-auth0\/\" target=\"_blank\" rel=\"noopener\">hier<\/a> ver\u00f6ffentlicht.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das h\u00f6rt sich nicht wirklich gut an: In der Auth0 Indenty-Plattform gab es eine Sicherheitsl\u00fccke, die die Umgehung der Authentifizierung erm\u00f6glicht. Das betraf Millionen von Anmeldevorg\u00e4ngen. Inzwischen scheint die L\u00fccke aber behoben zu sein.<\/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-203131","post","type-post","status-publish","format-standard","hentry","category-sicherheit","tag-sicherheit"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/203131","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=203131"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/203131\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=203131"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=203131"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=203131"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}