Ankündigung

Einklappen
Keine Ankündigung bisher.

Übergabe variable

Einklappen

Neue Werbung 2019

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

  • krentscher
    hat ein Thema erstellt Übergabe variable.

    Übergabe variable

    Hallo Gemeinschaft

    habe mal ne Frage bzgl. Anzeige - der erste echo wird der Wert richtig angezeigt - weiter unten nicht mehr - was hab ich da falsch gemacht

    PHP-Code:
    <?php
    $name 
    $_GET['variable'];
     echo 
    "name".$_GET['variable'];

    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Test</title>
    </head>

    <body>
    <p>Herzlich Willkommen auf der Seite </p>
    <p>&nbsp;</p>
    <p><a href="abfrage.php?name=<?php $_GET['variable']; ?>">Link</a></p>
    <?php $name?>
    </body>
    </html>

  • hausl
    antwortet
    Kann also Passwörter abgreifen
    Theor. auch Cookies auslesen bzw. wo hin senden (AJAX) etc..

    Einen Kommentar schreiben:


  • hellbringer
    antwortet
    Zitat von BlackScorp Beitrag anzeigen
    ich weiß was das ist, mir fallen da halt nur keine Szenarien ein. Außer ich verschicke ein link wie "schau mal http://foobar.php?variable=<script>window.location.href=' download.virus.now'</script>" und das dann als short URL verpacken
    Oder man postet so einen Link in einem Forum, usw.

    Und sowas ist schon sehr schlimm. Dadurch kann man beliebigen JavaScript-Code einbinden und hat somit volle Kontrolle was im Browser auf der Seite passiert. Kann also Passwörter abgreifen oder diverse Aktionen ausführen. Wenn es hier im Forum eine XSS-Lücke gäbe, könnte man sie zB. ausnutzen um mit fremden User-Accounts Spam-Nachrichten zu posten.

    Einen Kommentar schreiben:


  • BlackScorp
    antwortet
    ich weiß was das ist, mir fallen da halt nur keine Szenarien ein. Außer ich verschicke ein link wie "schau mal http://foobar.php?variable=<script>window.location.href=' download.virus.now'</script>" und das dann als short URL verpacken

    Einen Kommentar schreiben:


  • hellbringer
    antwortet
    Zitat von BlackScorp Beitrag anzeigen
    ja ich weiß, mir gings nur um die Schort Variante von echo, wobei, ein einfaches GET ausgeben, da passiert doch eh nichts.
    https://de.wikipedia.org/wiki/Cross-Site-Scripting

    Einen Kommentar schreiben:


  • BlackScorp
    antwortet
    Zitat von tk1234 Beitrag anzeigen
    Aber nicht den Wert aus $_GET direkt ausgeben! Hier werden die beiden Kontextwechsel (URL bzw. HTML) nicht berücksichtigt!
    ja ich weiß, mir gings nur um die Schort Variante von echo, wobei, ein einfaches GET ausgeben, da passiert doch eh nichts.

    Einen Kommentar schreiben:


  • tk1234
    antwortet
    Zitat von BlackScorp Beitrag anzeigen
    PHP-Code:
    <p><a href="abfrage.php?name=<?= $_GET['variable']; ?>">Link</a></p>
    Aber nicht den Wert aus $_GET direkt ausgeben! Hier werden die beiden Kontextwechsel (URL bzw. HTML) nicht berücksichtigt!

    Einen Kommentar schreiben:


  • hausl
    antwortet
    PHP-Code:
    <?php $name?>

    PHP-Code:
    <?php echo htmlspecialchars($name); ?>
    oder

    PHP-Code:
    <?= htmlspecialchars($name); ?>

    Einen Kommentar schreiben:


  • BlackScorp
    antwortet
    Zitat von krentscher Beitrag anzeigen
    kannst du mir das vielleicht zeigen
    du kannst es auch so schreiben, sieht dann übersichtlicher aus

    PHP-Code:
    <p><a href="abfrage.php?name=<?= $_GET['variable']; ?>">Link</a></p>

    Einen Kommentar schreiben:


  • tk1234
    antwortet
    Neben der bereits erwähnten nicht vorhandenen Behandlung des Kontextwechsels:

    Zitat von krentscher Beitrag anzeigen
    der erste echo wird der Wert richtig angezeigt - weiter unten nicht mehr
    Es gibt in dem Code kein zweites echo, es kann also auch nichts angezeigt werden.

    Einen Kommentar schreiben:


  • krentscher
    antwortet
    danke

    Einen Kommentar schreiben:


  • krentscher
    antwortet
    ah - so <?php echo htmlspecialchars($name);?>

    Einen Kommentar schreiben:


  • krentscher
    antwortet
    kannst du mir das vielleicht zeigen

    Einen Kommentar schreiben:


  • hellbringer
    antwortet
    Werte dürfen nicht direkt in HTML-Code oder URLs eingefügt werden. Du musst immer den Kontextwechsel beachten.

    Für URL-Parameter verwende urlencode() oder http_build_query(), für Ausgaben in HTML verwende htmlspecialchars().

    Einen Kommentar schreiben:

Lädt...
X