molily: Nicht nur meckern, zeigen! Escaping für JavaScript-Variablen

Beitrag lesen

Javascript string literals in HTML are subject to significant restrictions particularly due to the potential for unquoted attributes and any uncertainty as to whether Javascript will be viewed as being CDATA or PCDATA by the browser.

Diese »uncertainty« gibt es nicht, solange man HTML 4 oder HTML 5 schreibt. In HTML 4 ist script CDATA und in HTML 5 ist es ähnlich definiert.

Es lässt sich nur schwer Code schreiben, der in HTML und XML sicher ist, weil eben die Parsing-Regeln anders sind. Ich würde es gar nicht erst versuchen.

Problematisch ist eher, dass nicht alle existierenden Browser die neuen HTML5-Parsingregeln umsetzen, man also mit vielen weiteren Interpretationen rechnen muss. Insbesondere ältere IEs sind hier betroffen. Da jeder aktuelle IE per Meta-Tag in den Kompatibilitätsmodus versetzt werden kann und damit die Fehler eines beliebigen alten IEs simuliert, ist selbst jeder IE 11 entsprechend angreifbar.

Zu XSS generell empfehle ich die Paper und Präsentationen von Mario Heiderich:
https://cure53.de/#publications

Mathias

0 48

PHP array an javascript function übergeben

javascriptnewbie
  • javascript
  1. 0
    dedlfix
  2. 0
    Der Martin
    1. 0
      molily
    2. 0
      javascriptnewbie
      1. 0
        M.
        1. 0

          Gute Idee

          Tom
          • menschelei
      2. 1
        ChrisB
        1. 0
          javascriptnewbie
          1. 0
            molily
            1. 0
              javascriptnewbie
              1. 0
                M.
              2. 6
                molily
      3. 0
        Tom
        1. 0
          javascriptnewbie
          1. 0
            Tom
            1. 0
              Sven Rautenberg
              1. 0

                Nicht nur meckern, zeigen! Escaping für JavaScript-Variablen

                Tom
                1. 0
                  molily
                  1. 0
                    tami
                    1. 0
                      molily
                      1. 0
                        tami
                  2. 0
                    Tom
                    1. 0
                      molily
              2. 0

                PHP json_encode - kontextspezifisches Escaping

                tami
                1. 0
                  tami
                  1. 0
                    molily
                    1. 0
                      Sven Rautenberg
                      1. 0
                        molily
                        1. 0
                          molily
                        2. 0

                          JSON in HTML einbetten

                          molily
                          1. 1

                            JSON in HTML einbetten - RoR "vs" ZF

                            tami
                            1. 0
                              tami
                              1. 0
                                Tom
                                1. 0
                                  molily
                            2. 0
                              molily
                              1. 0
                                tami
                                1. 0
                                  tami
                              2. 0

                                JSON-Paket mit composer vom Zend Framework holen

                                tami
                              3. 2

                                JSON in HTML einbetten

                                molily
                                • php
                          2. 0

                            Reihenfolge der Auswertung?

                            Tom
                            1. 0
                              tami
                            2. 0
                              tami
                            3. 0

                              Reihenfolge der Auswertung? Codierung, kleine Korrektur

                              Tom
                            4. 0
                              molily
                              1. 0
                                Tom
                                1. 0
                                  molily
                  2. 0
                    Tom