• Gelöst optimusreroll

    (@optimusreroll)


    Hallo,
    Das Landesamt für Sicherheit in der Informationstechnik hat auf einer unserer Webseiten einen Pentest durchgeführt und eine Liste an umzusetzenden Maßnahmen übermittelt. Bis auf eine konnten wir diese auch alle umsetzen. Allerdings wird ebenfalls darauf hingewiesen, dass das Softwarepaket zxcvbn eine bekannte Schwachstelle aufweist (https://security.snyk.io/package/npm/zxcvbn/4.4.1) und dringend ersetzt werden muss. Da dies aber Teil von WordPress selbst ist, bin ich hier überfragt. Hat ihr jemand bereits Erfahrung oder sogar einen Lösungsvorschlag?

    Grüße

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 12 Antworten – 1 bis 12 (von insgesamt 12)
  • Moderator threadi

    (@threadi)

    Das ist eine WordPress Core-Datei die du weder austauschen noch anpassen solltest. Genauer gesagt ist es diese hier: https://github.com/WordPress/WordPress/blob/master/wp-includes/js/zxcvbn.min.js

    Es gibt dazu schon seit 7 Jahren ein Ticket mit dem Ziel die Datei auf Version 4.4.2 zu aktualisieren: https://core.trac.wordpress.org/ticket/43749 – dort hat sich auch schon jemand anderes mit so einem Pentest-Ergebnis gemeldet. Soweit ich sehe scheitert es momentan daran, dass das niemand übernommen hat zu bearbeiten. Gerne kannst du dich in dem Ticket mit dranhängen um ihm eine höhere Bedeutung zur Bearbeitung zu geben oder – wenn du dazu in der Lage bist – selbst einen Patch bereitzustellen.

    Es gibt auch noch einen 2. Ansatz wonach man diese Bibliothek austauschen sollte: https://core.trac.wordpress.org/ticket/63259 – hier scheitert es jedoch wohl an der Art und Weise der Meldung.

    Bitte beachte unbedingt, dass du mögliche Sicherheitslücken nicht öffentlich diskutierst sondern an das Security Team meldest. Das Vorgehen ist hier auch auf deutsch beschrieben: https://de.wordpress.org/about/security/ – es ist durchaus möglich das dem Team dort das schon bewusst ist und sie an einer (nicht öffentlichen) Lösung arbeiten.

    • Diese Antwort wurde vor 1 Monat, 1 Woche von threadi geändert.
    Moderator La Geek

    (@la-geek)

    Wie es aussieht, ist die Version 4.4.2 bereits mindestens 8 Jahre alt und auch betroffen:
    https://security.snyk.io/package/npm/zxcvbn/4.4.2. Es scheint keine sichere Version zu existieren.

    Bemerkenswert ist Folgendes:

    Feedback from the Bavarian „Landesamt für Sicherheit in der Informationstechnik“:
    „The vulnerability only affects the availability of the website in the client’s browser and does not pose a threat to the server side, provided the affected library is only used on the client side. However, this still constitutes a violation of the administrative regulation BayITSiR-14, section 3.4 d), since security patches (including those from third-party products) must be installed immediately.“

    Heißt (soweit ich das richtig verstehe), dass davon keine Gefahr ausgeht, wenn die Bibliothek nur auf der Client-Seite (WordPress-Installation/Browser?) verwendet wird.

    Wie auch immer: Hier ist eine Möglichkeit beschrieben, wie man die Verwendung dieses JavaScripts verhindert (physisch bleibt die Bibliothek auf dem Server allerdings vorhanden):
    https://stackoverflow.com/questions/45769522/disable-zxcvbn-min-js-in-wordpress-and-woocommerce

    Auch von meiner Seite noch einmal:

    Bitte beachte unbedingt, dass du mögliche Sicherheitslücken nicht öffentlich diskutierst sondern an das Security Team meldest.

    Thread-Starter optimusreroll

    (@optimusreroll)

    Vielen Dank für das schnelle und ausführliche Feedback. Ich entschuldige mich, dass ich die mögliche Schwachstelle öffentlich diskutiert habe. Allerdings fand ich es schwierig, bzw. nahezu unmöglich einen direkten Weg zu finden das Problem zu melden und bin über mehrere Umwege hier im Forum gelandet. Auch der oben gepostete Link macht es einem nicht wirklich einfach das Problem zu melden.

    Moderator threadi

    (@threadi)

    Der Link enthält direkt einen hervorgehobenen Hinweis wo man sich an das Security Team wenden kann. Dort wiederum steht:

    For security issues with the self-hosted version of WordPress, submit a report at the WordPress HackerOne page. Include as much detail as you can. Please always use HackerOne instead of Core Trac, even if the vulnerability is only in trunk, or a beta/RC release, because there are some sites that run those in production.

    D.h. du müsstest dich damit hier melden: https://hackerone.com/wordpress

    Moderator La Geek

    (@la-geek)

    @optimusreroll
    Es war kein Vorwurf, woher solltest du das auch wissen? Unabhängig davon kann es jedoch nicht oft genug betont werden, wie wichtig der sensible Umgang mit Sicherheitslücken ist.

    Bei einer schweren Sicherheitslücke wäre dein Beitrag sehr schnell im Archiv gelandet.

    Im Fall der zxcvbn-Bibliothek scheint es sich vor allem um einen „Verstoß gegen die Verwaltungsvorschrift BayITSiR-14, Abschnitt 3.4 d) zu handeln, die besagt, dass Sicherheitspatches (auch von Drittanbietern) unverzüglich installiert werden müssen.“ ABER! Das ist lediglich meine Interpretation der vorliegenden Aussagen.

    Thread-Starter optimusreroll

    (@optimusreroll)

    Vielen Dank für Eure Hilfe. Mein Anliegen auf https://hackerone.com/wordpress wurde jedoch mit folgender Begründung nahezu umgehend geschlossen:
    There is no attack vector here. There is no way to exploit it. In order for it to be a valid issue, you have to show how it can be used to exploit anything at all. This is a Javascript library used to measure passwords. It is not used by WordPress itself. It cannot be used to attack other people, or indeed to attack anything.

    Ich hoffe, dies ist auch für das Ministerium ausreichend.

    Moderator La Geek

    (@la-geek)

    Vielen Dank für die Rückmeldung.
    Zu dem Trac-Ticket hatte ich noch ein paar Anmerkungen beigesteuert:
    Vielleicht tut sich ja doch noch etwas.

    @optimusreroll ich habe genau das selbe Problem und finde keine Lösung. Diese Schwachstelle ist mit „zwingend“ eingestuft. Ich werde ebenfalls versuchen die Antwort von Hackerone als Argument anzubringen.

    Ich drück uns die Daumen!
    LG Manja

    Moderator La Geek

    (@la-geek)

    Ich werde ebenfalls versuchen die Antwort von Hackerone als Argument anzubringen.

    Ich vermute beim Ministerium?

    Es wäre schön, wenn ihr uns (bei entsprechenden Ergebnissen) auf dem Laufenden halten würdet.

    Zusätzliche Beiträge im Trac-Ticket könnten vielleicht hilfreich sein (die Hoffnung stirbt ja bekanntlich zuletzt). Schließlich gibt es eine alternative Bibliothek, wenn schon für das aktuell eingesetzte JS kein Sicherheits-Update verfügbar ist.

    Wie sieht es mit diesem oben geposteten Workaround aus? Nicht hilfreich/hilfreich? (als Übergangslösung)

    Hier ist eine Möglichkeit beschrieben, wie man die Verwendung dieses JavaScripts verhindert (physisch bleibt die Bibliothek auf dem Server allerdings vorhanden):
    https://stackoverflow.com/questions/45769522/disable-zxcvbn-min-js-in-wordpress-and-woocommerce

    Thread-Starter optimusreroll

    (@optimusreroll)

    Antwort vom Ministerium: Bei Punkt 2.2 muss ich auf die Verwaltungsvorschrift BayITSiR-14 Punkt 3.4 d) verweisen, welche vorsieht, dass Sicherheitspatches unverzüglich eingespielt werden müssen. Hier verbleiben lediglich die Optionen, die Software zu entfernen, die Schwachstelle beispielsweise durch eine Migration auf die Software zxcvbn-ts (vgl. Beschreibung im Bericht) zu beheben oder eine Ausnahmegenehmigung zu erteilen.

    Nachfolgend der Link aus dem Bericht zur empfohlenen Migration: https://zxcvbn-ts.github.io/zxcvbn/guide/migration/#zxcvbn-ts-0-3-x-to-zxcvbn-ts-1-x-x

    Dies konnten wir aber bisher noch nicht testen. Ich werde ein Update posten, sobald wir dies durchführen konnten.

    @optimusreroll Ihr sichert doch bestimmt auch das Login über einen Proxy ab, richtig? Dann ist die Bibliothek nicht relevant.

    Ich werde versuchen sie zu entfernen wie hier beschrieben: https://wpforpro.com/what-is-zxcvbn-min-js-in-wordpress-and-how-to-change-loading-behavior/

    Moderator La Geek

    (@la-geek)

Ansicht von 12 Antworten – 1 bis 12 (von insgesamt 12)

Du musst angemeldet sein, um auf dieses Thema zu antworten.