SIWECOS: Was sind Secure Flags, DOMXSS-Sources und DOMXSS-Sinks und wie stelle ich sie ein bzw. ab?

  • Hallo zusammen,


    ich versuche meine Seiten möglichst sicher zu gestalten und nehme mir u.a. Siwecos zur Hilfe.


    Nun schnitt meine kleine Seite eigentlich immer nicht sooo schlecht ab, doch jetzt sind drei neue Punkte erschienen und bemängeln "unsicheren Javascript" und das meine Cookies sind nicht gesichert sind.


    Thema Cookie Security:

    Ich nutze die .htaccess von Christian Schmidt (Joomla Security),

    kann ich dort die fehlenden Sachen:

    • Des Secure Flag ist nicht gesetzt.
    • Das HttpOnly Flag ist gesetzt.

    ergänzen?

    Bzw. gibt es da bereits bekannte Befehle für die htaccess, die nur ergänzt werden müssten?

    Was beudetet "Secure Flag" überhaupt?


    Das größere Problem wird sicher die Überprüfung des JavaScript-Codes nach DOMXSS-Sources und DOMXSS-Sinks.

    In einem anderen Beitrag habe ich gelesen, dass eine Akutalisierung der jQuery Bibliothek hilft.

    Leider finde ich in meinem Template keine direkte Bibliothek, unter templates/jp-host/js/ findet sich nur eine
    theme.js mit 3 Zeilen Code.


    Siwecos bemängelt:

    siwecos.SINKSS_FOUND und "Es wurden „Sources“ gefunden."


    Leider komme ich auch mit dem wiki von Siwecos nicht weiter, ganz stumpf gesagt: "Ich weiss nicht, was die von mir wollen.".


    Ich wäre euch sehr dankbar über eine kleine Aufklärung,

    was diese Sicherheitslücken überhaupt sind,

    wie man sie finden kann und vielleicht auch beheben kann.


    Vielen vielen Dank!!

  • Bezüglich der Secure Flags: hier geht es i.d.R. um die Joomla Session Cookies, mit der dein Browser zur aktuellen Login-Sitzung zugeordnet wird. In Joomla 3.x wird dieses Cookie ohne das sog. Secure Flag an den Browser geschickt. Diese Flag führt, wenn es gesetzt ist, dazu dass der Browser das Cookie nur bei verschlüsselten Verbindungen mitgeschickt wird um ein abgreifen zu verhindern.

    In Joomla 4 wird dieses Flag gesetzt sein, in Joomla 3 ist mir noch kein Weg dafür bekannt - werde das aber wohl mal sauber checken um das Flag für die SIWECOS.de Website zu setzen, das ist auch eine Joomla Website.


    Zum Thema domxss zitiere ich mal den Entwickler:


    DOMXSS ist rein als Hinweis zu verstehen. Schlägt der Scanner an, so besteht unter weiteren Umständen die theoretische Möglichkeit einen XSS-Angriff über die Sinks und Sources zu starten.

    Wenn der Scanner anschlägt, heißt das aber noch lange nicht, dass auch eine _XSS Lücke_ vorhanden ist.


    Wie wir zusammen mit Marcus besprochen haben, sollte das Ergebnis idealerweise nur als Hinweis ausgegeben werden, da war jedoch soweit ich weiß noch kein direkter Konsens gefunden worden, wie wir das Kommunizieren wollen.


    Weitere Infos:

    https://www.owasp.org/index.php/DOM_Based_XSS

    https://www.netsparker.com/blo…-scripting-vulnerability/ (hier auch gut beschrieben)

  • Danke David.. :)

    Ich hatte das mit dem Cross-site Scripting in den Vorträgen zum JD18 aufmerksam verfolgt und hatte danach gleich überall den http Header geschützt..


    Wenn es nur ein Hinweis ist, mache ich erst mal nicht weiter heiß, sonst ist der Abend weg und es ist nichts geworden..

    Werde das Thema aber auf jeden Fall weiter verfolgen, denn auf einer einfacheren Joomla Seite habe ich das Problem nicht und eigentlich möchte ich das ganze richtig verstehen und die Lücken beheben..



    Was ich noch fragen wollte, im Zusammenhang mit den JavaScript Libraries:

    Mein Template nutzt alleine 3 Javascript Libraries und wahrscheinlich eines der Plugins noch eine vierte..


    Das heisst auf einer Website kommen die Libraries jQuery Migrate, jQuery, LightBox und FancyBox und dann noch als Frameworks MooTools und TweenMax zum Einsatz..

    Ich denke mal das ist weder für die o.g. "Sicherheitslücken", noch für den PageSpeed wirklich gut oder spielt das keine Rolle?


    Ich bin eigentlich immer für "weniger ist mehr"..

  • Habe den Code nochmal geprüft und es reicht in Joomla 3 die „HTTPs erzwingen“ Option auf „gesamte Seite“ zu setzen.

    SniperSister:

    Ist zwar schon älter, passt aber exakt zu meinem Problem:

    Auf meinen Seiten wird auch das nicht-gesetzte Secure-Flag bemängelt (habe nur http only). Nun ist es so, dass ich die https-Weiterleitung über die .htaccess realisiert habe und nicht über die Aktivierung von "HTTPS erzwingen" im Backend.


    1. Gibt es weitere Möglichkeiten, das Secure-Flag zu setzen?

    2. Könnte es Probleme geben, wenn externe Anbieter (z.B. von Cookie Consent Manager-Tools) Ihre Cookies setzen, um die Cookie-Zustimmungen bzw. Einstellungen zu speichern?