Toon posts:

[PHP] RemoveXSS code voorbeelden?

Pagina: 1
Acties:
  • 51 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik ben nu al uren aan het zoeken naar een site met duidelijke voorbeelden van hoe de RemoveXSS functie te implementeren (http://quickwired.com/kal...p_xss_filter_function.php).

Heeft iemand hier ervaring mee? Ik dénk namelijk dat ik het goed doe, maar toch zijn er nog bepaalde $_GET variabelen waarmee ik voor problemen kan zorgen (XSS). Graag een praktisch voorbeeld over hoe deze functie te implementeren (liefst generiek) binnen een website.

  • mcdronkz
  • Registratie: Oktober 2003
  • Laatst online: 16-04 12:44
Ik snap niet echt wat je bedoeld. Dit is als het ware gewoon een functie die hetzelfde werkt als bijvoorbeeld str_replace, maar ipv een needle en een haystack geef je gewoon de variabele op waarin de input of output gecontroleerd wordt op XSS aanvallen.

Stel, je hebt een gastenboek en je wil berichten tonen, dan doe je zoiets:

PHP:
1
2
3
4
while($result = mysql_fetch_assoc($sql)) {
echo "Bericht:<br />";
echo remove_xss($result['bericht']); // veilig het bericht weergeven
}

[ Voor 32% gewijzigd door mcdronkz op 23-11-2006 14:36 ]


  • mithras
  • Registratie: Maart 2003
  • Niet online
PHP:
1
2
3
foreach($_GET as $key=>$value){
  $_GET[$key] = RemoveXSS($value);
}
:?
Wat wil je precies, ik snap je vraag namelijk niet helemaal...

Verwijderd

Zo te zien zit er geen return in,

ze zijn dus aan het einde, voor het sluiten van de function:

return $found; vergeten

hiermee kan je dus kijken of de get een poging is tot XSS

PHP:
1
2
3
if(!(removeXSS($_GET['id'])) {
// input is veilig
}


jammer dat ze hem niet als for each hebben gebouwd... dan zou je gewoon je hele GET er in een keer doorheen kunnen klappen!

leuke uitbreiding! Ga ik eens maken denk ik :D

[ Voor 25% gewijzigd door Verwijderd op 23-11-2006 14:39 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Hoe je cross site scripting tegen kan gaan is toch echt wel te vinden. Je geeft hier bar weinig informatie en laat je eigen code niet eens zien, alleen die van anderen. Als je gebruikersinvoer direct wil weergeven op het scherm, dan blokkeer je XSS-attacks al door HTML in die variabelen niet te parsen. Je moet gewoon zorgen dat er geen HTML geïnjecteerd kan worden, en als je dat wel wil, dan moet je maar eens kijken naar strip_tags.

Intussen doe ik dit topic op slot. Mocht je er met mijn tips en de tips hierboven niet uit kunnen komen, dan kun je een nieuw topic openen. Let wel, doe dat dan wel aan de hand van onze quickstart. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Dit topic is gesloten.