Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

xss lücke am konkreten Beispiel

Empfohlene Antworten

Veröffentlicht

Hi,

ich möchte gerne eine XSS Lücke innerhalb einer Semesterarbeit praktisch erläutern und auch kurz vorstellen. Ich habe mir jetzt folgendes vorgestellt.

Habe mir jetzt einfach ein Formular geschrieben:

<html>

<head>

</head>

<body>

<form action="xss.php" method="get">

<p>Vorname:<br><input name="vorname" type="text"></p>

<input type="submit" value=" Absenden ">

</form>

</body>

</html>

Wenn ich jetzt mittels eines links

<a href="xss.php?vorname=<script>alert('Hallo Welt!');</script>">XSS</a>xss.php

drauf zu greife, möchte ich gerne das halt einfach ein alert fenster erscheint.

Das php Script sieht wie folgt aus

<?php

echo $_GET['vorname'];

?>

Es erfolgt aber keine Ausgabe, sondern die <> werden ausgefiltert mittels %c3

Habt ihr ne Idee wie es funktionieren könnte? Oder ne andere Idee für ein kleines XSS Beispiel?

Ich habe als Browser schon Firefox 1.0, 2.0, IE6,7 sowie Opera360 benutzt. Als Webserver wird Apache eingesetzt ohne irgendwelche Filterfunktionen.

Danke und Gruß

Malte

Also ich hab das bei einem Gästebuch von uns hier mal folgendermaßen demonstriert (nur groß zusammengefasst):

Eine Textarea, in die der Text fürs Gästebuch eingetragen wird. Der Text wird wie er kommt 1:1 in die DB geschrieben und auch genauso dann wieder angezeigt.

Dann einen Eintrag inklusive eines

<script type="text/javascript>...</script>

geschrieben und in dem Script wurde nichts anderes getan, als die SessionID aus dem Cookie angezeigt in einem Alert.

Um dann noch zu zeigen dass das nicht nur bissl blöd ist, hab ich in einem zweiten Browser (also nicht nur zweites Fenster, sondern der 2te Browser war ein IE, der erste ein FF) Die Seite nochmal aufgerufen, ohne Anmeldung und per GET, also in der URL, die SessionID mitgegeben (abgetippt). Und schwupps war ich da angemeldet mit den Rechten die ich auch im FF hab.

Denkbar wäre z.B. ein Aufruf einer Seite im Script (Bild laden z.B.), aber diese Seite ist ein Skript, welches z.B. die SessionID per GET entgegennimmt und speichert oder sonstwas. Damit könntest du dann auch einfacher und u.U. automatisiert die Sessions die gespeichert wurden prüfen.

Wenn ein Admin sich das so verseuchte GB ansieht hast du dessen Session und da eine Session nicht immer komplett gecleared wird, somit u.U. auch einen Zugriff auf die Seite (also das CMS o.ä.).

EDIT:

Das Problem bei dir ist, dass du das Script per URL übergeben willst. Die URL wird aber (URL-)encoded, also Sonderzeichen u.ä. durch Hex-Werte ersetzt. Das ist das, was du dann siehst.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.