Ankündigung

Einklappen
Keine Ankündigung bisher.

XSS Schutz bei Editor?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • XSS Schutz bei Editor?

    Hallo,
    ich habe einen WYSIWYG Editor geschrieben. Nun bietet dieser die Möglichkeit, auch HTML Code einzugeben. Der Inhalt wird dann in eine MYSQL Tabelle geschrieben. Nun auch HTML Code. Natürlich kann ich XSS mit Methoden wie htmlspecialchars oder htmlentities verhindern, allerdings wird dann auch der Code nicht interpretiert. Und die HTML Tags sollen ja Interpetiert werden, nur JavaScript und sonstige gefährliche Codes nicht.

    Gibt es da eine Möglichkeit, das Problem zu lösen? Wie würdet ihr das ganze angehen?

  • #2
    Schau dir mal den HTMLPurifier an.
    Falls du es nicht findest: http://lmgtfy.com/?q=HTMLPurifier

    Kommentar


    • #3
      Leider ist das wiederum auf eine PHP Version beschränkt. Gibt es auch Möglichkeit, es programmiertechnisch zu lösen? Zum Beispiel tags mit str_replace gegen eigene BBCodes zu wechseln und beim Auslesen dann diese Codes mit str_replace wieder in HTML Codes ändern? Würde so etwas möglich sein?

      Kommentar


      • #4
        Leider ist das wiederum auf eine PHP Version beschränkt.
        Einen Server mit PHP 5+ sollte man mittlerweile finden ...

        Klar kannst du das selber programmieren, aber mit str_replace ist es nicht getan, da die Tags richtig verschatelt werden müssen, du musst die Attribute auslesen und überprüfen usw...

        Kommentar


        • #5
          mit strip_tags die gefährlichen rausfiltern

          Kommentar


          • #6
            mit strip_tags die gefährlichen rausfiltern
            Nein! Absolut gefährlich.
            Nimm den Purifier (oder eine vergleichbare Lib) oder lass es sein.

            Kommentar


            • #7
              Nein! Absolut gefährlich.
              wieso ?

              Kommentar


              • #8
                Weil nicht allein spezielle Tags potentiell schädlichen Inhalt besitzen können. Auch DIVs und SPANs können mit den richtigen Attributen gefährlich werden, ganz zu schweigen von IMG-Tags.
                Dazu kommt auch noch, dass du damit immer noch nicht das Problem fehlerhafter Verschachtelung gelöst hast.

                Kommentar


                • #9
                  Könnte ich nicht einfach alle JavaScript Tags der Zeichenkette entfernen, mit str_replace? Ist nur JavaScript gefährlich oder auch HTML?

                  Kommentar


                  • #10
                    Siehe mein letztes Posting.

                    Kommentar


                    • #11
                      Wäre es denn notwendig, so etwas zu sichern? Ich habe ein cms für andere geschrieben und um Zugang zu der Seite zu bekommen, muss man eingeloggt sein. Und der Nutzer will sicher nicht sich selbst schaden. Es gibt auch keine Registrierungsmöglichkeit. Oder kann ich in diesem Fall XSS vernachlässigen?

                      Kommentar


                      • #12
                        Es geht nicht nur um XSS, das was die meinen Editoren an HTML produzieren ist meist recht gruselig, da kann der Purfier auch nachhelfen...
                        Ich versteh immer noch nicht warum du den nicht einsetzen willst ???

                        Kommentar

                        Lädt...
                        X