[php] zabierpieczenie formularza

0

witam.

mam przykladowy formularz:

<form method="POST" action="strona.php"> <input type="text" name="pole1" size="20" value="&lt;?php echo $pole1; ?">"> <input type="submit" value="Wyślij" name="Submit"></p> </form>

i mam nastepujace pytanie:
jak zabezpieczyc taki formularz przed atakami XSS?
doczytalem sie w artykule na tym serwerze (http://4programmers.net/article.php?id=689) ze nalezy uzyc funkcji "strip_tags", ale mam problem.
jak mam jej uzyc zeby bylo dobrze, w ktorym miejscu w kodzie i co wpisac.

0

rozumiem że chcesz to wykorzystać do księgi gości

<?
if ($_POST['t']==1) {
$_POST['pole1'] = strip_tags($_POST['pole1']);
... i tu jakiś kod do zapisywania zawartości pola ...
} else {
echo "<form method=\"POST\" action=\"strona.php\">";
echo "<input type=\"text\" name=\"pole1\" size=\"20\">";
echo "<input type=\"submit\" value=\"Wyślij\" name=\"Submit\">";
echo "<input type=\"hidden\" value=\"1\" name=\"t\">";
echo "</form>";
}
?>

</php>
0

aghrrr kto usuwa moje posty....

zapytam jeszcze raz.
JAK ZABEZPIECZYC FORMULARZ ABY WPISANIE TEKSTU
">Test
NIE POWODOWALO POJAWIENIE SIE TEKSTU
Test">
POZA FORMĄ?

0

ja bym uzyl htmlspecialchars(), samo strip_tags() nic nie da w tym przypadku bo bo ma usuwac tagi a tam nie ma zadnego tagu...

0

a jak przefiltrowac zmienna przed wyslaniem jej ?

0
ophis napisał(a)

a jak przefiltrowac zmienna przed wyslaniem jej ?
javascriptem

0

hmmm no dobra javascriptem...ale ja w ogóle jestem ciemny z JS [glowa] ale domyslam sie ze moze chodzic o onsubmit.... moglby mi ktos jakis przyklad dac? :P

0

ophis: Ale zamiana tego JavaScriptem to już samo w sobie jest narażeniem na XSS... Ja sobie w przeglądarce wyłączę JavaScritp, wyślęspreparowaną wiadomość i dostanę co chcę. Już nie mówiąc o użyciu napisanego przez siebie narzędzia nie opartego na przeglądarce zwykłej. Zabezpieczenia polegające na poleganiu na stronie użytkownika do niczego nie prowadzą. To tak jakbyś w banku wystawił sejf do hallu, otworzył go, zwolnił ochronę, ale zatrudnił gościa, który grzecznie by prosił wszystkich wchodzących do banku, by nic nie zabierali [sciana]

0

hmmm zapewne masz racje :]

w takim razie jak mam zabezpieczyc? da sie w ogóle?

0

dokładnie tak jak tu: http://4programmers.net/Forum/256761#256761 tylko zamiast strip_tags ma być htmlspecialchars - trochę inwencji!

0

ach ty spryciarzu :> dales linka do tego samego topicu... :D tylko ja sie pytam jak przefiltrowac dane przed wyslaniem formularza :]

0
ophis napisał(a)

ach ty spryciarzu :> dales linka do tego samego topicu... :D

podał ci linka do konkretnego postu :>

0

ophis: No to tłumaczę, że przed wysłaniem formularza filtrowanie tego NIE MA SENSU. Zrób to po stronie serwera przed zapisaniem w bazie czy gdzie ty tam tego nie zapisujesz.

0

po stronie servera juz zrobilem, ale pomimo tego iz to nie ma sensu chcialbym wiedziec jak to przefiltrowec PRZED wyslaniem....o ile jest to mozliwe.

1 użytkowników online, w tym zalogowanych: 0, gości: 1