Javascript Injection

Pagina: 1
Acties:
  • 132 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • DNA_Saint
  • Registratie: Maart 2004
  • Laatst online: 15:45

DNA_Saint

Go Go Gadget Ondertitel!

Topicstarter
Ik heb mijn site beveiligd tegen SQL injections....
Bij elke post heb ik mysql_real_escape_string() gebruikt.
en daarna stripslashes() om de slashes weg te halen als ie het echo'd op de index.

Maar nu kan ik wel gewoon nog steeds javascript injections doen...
In de database staat het gewoon goed met slashes bij een javascript, maar als ie in de index komt, haalt ie slashes weg en dan werkt javascript gewoon.

hoe kan ik dit oplossen?
Want wat ik tot nu toe lees is dat ik de forms kan valideren met javascript. Maar dat is client-side en dat is toch neit veilig. Is er niet iets met php ofzo?

Huub Huub Barbatruc!


Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Nu online

gorgi_19

Kruimeltjes zijn weer op :9

Zoek eens op XSS icm PHP :) XSS is de term die je zoekt :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • martijnve
  • Registratie: December 2004
  • Laatst online: 14-09 00:34
Ik weet niet wat je precies wil doen met het systeem, maat als de users geen html hoeven te kunnen gebruiken kun je gewoon "<" en ">" er uit filteren. Dat doe ik altijd, heel veilig :-)

Mini-ITX GamePC: Core i5 3470 | 16GB DDR3 | GTX 970 4GB | Samsung 830 128GB | Dell u2711 (27", IPS,1440p), 2343BW


Acties:
  • 0 Henk 'm!

  • Kvn
  • Registratie: Maart 2001
  • Laatst online: 09:01

Kvn

striptags() ?

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
PHP heeft er wel tientallen functies voor, het is maar net wat jij wil doen. Met functies als htmlentities() en htmlspecialchars() zorg je ervoor dat speciale tekens alleen maar weergegeven worden in de browser en met functies als strip_tags() kan je gewoon tags wegfilteren. Bekijk deze functies (en gerelateerde functies) eens in de PHP manual.

{signature}


Acties:
  • 0 Henk 'm!

  • DNA_Saint
  • Registratie: Maart 2004
  • Laatst online: 15:45

DNA_Saint

Go Go Gadget Ondertitel!

Topicstarter
wow...zijn veel functies ja.
Ik ga ze allemaal eens even bekijken. Ik kwam bij de meeste Prevent SQL injections namelijk meestal de functions tegen die ik heb gebruikt...

maar bedankt!

Huub Huub Barbatruc!


Acties:
  • 0 Henk 'm!

Verwijderd

DNA_Saint schreef op dinsdag 20 maart 2007 @ 15:22:
Ik ga ze allemaal eens even bekijken. Ik kwam bij de meeste Prevent SQL injections namelijk meestal de functions tegen die ik heb gebruikt...
SQL-injection en HTML-injection hebben weinig met elkaar te maken: bij SQL-injection wordt de database gehackt. Bij HTML-injection wordt de webpagina die de bezoeker krijgt gemanipuleerd.

SQL-injection voorkom je door user input te escapen: zorg ervoor dat de structuur van de SQL-query niet veranderd. Dit kun je doen in je applicatie, maar ook in je database door met Stored Procedures of Parameterized Queries te werken.

HTML-injection is te voorkomen door te zorgen dat je user input niets verandert aan de structuur van je HTML-pagina. Meestal is de functie htmlspecialchars afdoende om je user input mee te filteren. In sommige gevallen zul je andere controles moeten uitvoeren, bijvoorbeeld als je achtergrondkleuren laat invullen.

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Hoezo gebruik je overigens nog stripslashes nadat je iets uit je database gehaald heb. Zover ik weet is dat helemaal niet nodig. Behalve als je eerst ook addslashes gedaan hebt.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

martijnve schreef op dinsdag 20 maart 2007 @ 15:10:
Ik weet niet wat je precies wil doen met het systeem, maat als de users geen html hoeven te kunnen gebruiken kun je gewoon "<" en ">" er uit filteren. Dat doe ik altijd, heel veilig :-)
wat gebeurt er als je bijvoobeeld javascript:alert() gebruikt in een [img][/img] tag?. Het is veiliger om de userinput te doorlopen en alle tekens behalve letters en cijfers te vervangen door &#ascii_nummer;.

Een voorbeeld voor XSS invoer staat hier

Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Verwijderd schreef op donderdag 22 maart 2007 @ 09:09:
[...]


wat gebeurt er als je bijvoobeeld javascript:alert() gebruikt in een [img] tag?. Het is veiliger om de userinput te doorlopen en alle tekens behalve letters en cijfers te vervangen door &#ascii_nummer;.
Nonsense. Als je UBB-parsing doet en een bepaalde tag een URL-parameter verwacht dan moet je die parameter gewoon valideren als een URL en daarbij eventuele gevaarlijke (pseudo-)protocollen afkeuren (dus de tag niet parsen) of beter: enkel bepaalde protocollen toestaan.

[ Voor 4% gewijzigd door crisp op 22-03-2007 10:17 ]

Intentionally left blank

Pagina: 1