Autor Zpráva
stepanka
Profil *
Ahoj,

nevíte prosím někdo, jakým nastavením v PHP by mohlo být toto:

Mám jeden e-shop na třech serverech. Všechny jsou naprosto stejné. Když do přihlašovacího formuláře pro vstup do administrace vložím

"<script>alert(123)</script>


vyskočí mi na VŠECH TŘECH serverech vyskakovací okno s nápisem "123".

Když ale vložím

"<script>alert('XSS')</script>


vyskočí mi vyskakovací okno POUZE NA JEDNOM ze serverů. Na dalších dvou se nic nestane.
Nejspíš to bude těma apostrofama, ale vůbec nevím, kde v php.ini bych tohle mohla hledat.. Nevíte někdo, čím se to ovládá?

Mockrát děkuju
Nox
Profil
Nevím proč se to liší, každopádně vyskakovat by to nemělo pokud možno nikdy, ne? Takže htmlspecialchars()...

edit: aha, jasně, zapomněl jsem

ještě přidám http://phpfashion.com/escapovani-definitivni-prirucka, vlastně to tam taky zmiňují
Majkl578
Profil
Řekl bych, že Magic Quotes. To změní (escapuje) ' na \'.
stepanka
Profil *
Nox, Majkl578:
Moc vám oběma děkuju, je to opravdu v nastavení magic_quotes_gpc, to se na jednotlivých serverech liší. Ještě jednou díky.

Nox:
Nevím proč se to liší, každopádně vyskakovat by to nemělo pokud možno nikdy, ne? Takže htmlspecialchars()...
to nebylo předmětem dotazu, samozřejmě že to ošetřím.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: