Am 30.06.2010 23:31, schrieb Christian Wolff:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 30.06.2010 22:29, schrieb Chris Bernhard:
Hi zusammen,

wenn ich eine Variable über t3lib_div::_POST('variable') verarbeite
und damit meinetwegen eine MySQL Abfrage starte, bin ich dann
schon vor XSS Scripting sicher oder muss ich hier noch irgendwas beachten?

Viele Grüße und Dankeschön,

Chris

Hallo Chris,
die functionen:
t3lib_div::_POST(), t3lib_div::_GET() ,t3lib_div::_GP()

kümmern sich lediglich darum das die variablen unabhängig von der server
konfiguration ohne escaping bei dir ankommen.

wenn du sie in datenbank abfragen verwenden willst solltest du sie escapen.

dafür gibts in der classe t3lib_DB die function fullQuoteStr($str,$table)

also folgende verwendung:
$myPostVar = t3lib_div::_POST();
$myPostVar = $GLOBALS['TYPO3_DB']->fullQuoteStr($myPostVar,'pages');

die funktion setzt den string direkt in anführungzeihen. da rüber bin
das erst mal gestolpert.

gruss chris




- --
Christian Wolff // Berlin
http://www.connye.com

some projects:
http://richtermediagroup.com | http://titanic.de |
http://fairplay-homepage.de
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)

iEYEARECAAYFAkwrt6gACgkQIcCaXPh/JHH3SwCgz6HDxLKRDCt9FIFK7JYhMKWI
SqYAoLd1PB/2ZtOdzLUptSUfuGc86pQC
=dw2M
-----END PGP SIGNATURE-----

Hi Chris auch :-)

Okay, dankeschön für den Hinweis, aber reicht dann nicht schon sowas wie

$this->myfunction(htmlspecialchars(t3lib_div::_POST('mypostvar')));

So sieht dann die Funktion aus:

function myfunction($test)
{

$clause = "p.plz LIKE '$test' LIMIT 1 ";

$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tx_blablabla_huhu p LEFT JOIN tx_blablabla_huhuhu a ON p.id= a.pid', $clause);

um eine Attacke komplett auszuschließen? Möchte ja nur sichergehen, dass meine Extensions auch wirklich sicher sind :-)

Vielen Dank und beste Grüße,

Chris
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an