login  Naam:   Wachtwoord: 
Registreer je!
 Forum

ubb beveiligen.

Offline detonix - 07/06/2007 18:14
Avatar van detonixNieuw lid We zitten met een probleem

Een vriend van mij word de laatste tijd veel lastig gevallen door XSS attacks. Dat ligt aan het ubb gedeelte. Ik weet niet echt hoe ik dat het beste kan beveiligen. Iemand enig idee(Neem aan van wel)

dit is een stukje script:

  1. $profile->info = preg_replace("/\[b\]/", "<b>", $profile->info);
  2. $profile->info = preg_replace("/\[\/b\]/", "</b>", $profile->info);
  3. $profile->info = preg_replace("/\[u\]/", "<u>", $profile->info);
  4. $profile->info = preg_replace("/\[\/u\]/", "</u>", $profile->info);
  5. $profile->info = preg_replace("/\[i\]/", "<i>", $profile->info);
  6. $profile->info = preg_replace("/\[\/i\]/", "</i>", $profile->info);
  7. $profile->info = preg_replace("/\[center\]/", "<center>", $profile->info);
  8. $profile->info = preg_replace("/\[\/center\]/", "</center>", $profile->info);

10 antwoorden

Gesponsorde links
Offline Grayen - 07/06/2007 18:40
Avatar van Grayen PHP ver gevorderde Ik weet niet veel over beveiligingen tegen XSS attacks, maar zover ik weet is ervoor zorgen dat er geen html kan worden geplaatst op de website al voldoende, dit kan met functies als strip_tags, htmlentities, htmlspecialchars.
Offline detonix - 07/06/2007 18:44
Avatar van detonix Nieuw lid Maar dan neem ik aan dat de ubb codes niet meer werken
Offline vinTage - 07/06/2007 18:58
Avatar van vinTage Nieuw lid juist wel , daar is die preg_replcae juist voor.
Offline Rik - 07/06/2007 19:07
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Als je het veiliger wilt maken kan je van dit:
  1. $profile->info = preg_replace("/\[b\]/", "<b>", $profile->info);

bijvoorbeeld dit maken:
  1. $profile->info = preg_replace('/\[b\]([^\[\]]+)\[\/b\]/ie', "'<b>' . htmlentities('\\1') . '</b>'", $profile->info);
Offline Koen - 07/06/2007 19:09
Avatar van Koen PHP expert kijk, voorbeeldje:
die preg_replace zet je in een functie die je ubb ofzo noemt.
wanneer je de lap text erdoorheen wil halen doe je als volgd:
  1. <?
  2. nl2br(ubb(htmlspecialchars($text)));
  3. // Nieuwe lijn veranderen in '<br />', je ubb code toepassen, html uitschakelen.
  4. ?>
Offline detonix - 07/06/2007 19:13
Avatar van detonix Nieuw lid Ok bedankt
Offline riekele - 07/06/2007 19:25
Avatar van riekele PHP beginner sliphead, precies andersom, php werkt van binnen naar buiten ;)
Offline Rens - 07/06/2007 19:45
Avatar van Rens Gouden medaille

Crew algemeen
Bekijk het volgende artikel eens:
http://www.phpf...amp;page=6
Offline Koen - 07/06/2007 19:46
Avatar van Koen PHP expert @riekele: als je die commentaar bedoeld:
het is de bedoeling om de functies uit te leggen, wat nl2br is,
wat ubb is en want htmlspecialchars is.
Offline Rik - 07/06/2007 19:56
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Als je dan toch aan het lezen bent kan je gelijk deze er eens bij pakken:
http://www.net-...ipting.pdf

Met erg veel uitgewerkte voorbeelden...
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.235s