Mailinglisten-Archive |
Hallo Ron Opitz, > Ich denke da an Stichwörter wie > - cross-site-scripting Uebergeneben Werte vom Browser werden wieder dargestellt, und damit sind Ausfuehrungen ueber ein Tag moeglich z.B. Javascript. Der Server erwertet eine normale textuelle oder numerische Eingabe und der User antwortet mit Javascript. Die Funktion strip_tags entfernt Tags und bereinigt sie. > - session-manipulation Am Besten open_basedir und session.save_path fuer jede Domain setzen. > - url-modifikation In dem Fall register_globals ist aktiviert werden die per URL uebergebenen Parameter innerhalb des PHP Skriptes uebernommen. www.openfile.org/fopen.php?id=/etc/passwd Benutzt fopen.php einen Leseprozess und uebernimmt den fuer id verwendeten Parameter koennen systemweit ueber Webserverberechtigungen Auswertungen vorgenommen werden. Andere Fall eher wahrscheinlich: $USER = $_GET['username']; $PASS = $_GET['passwd']; if (isset($USER) == "developer" && isset($PASS) == "x$3&h/§G") { $log_auth = 1; } if ($log_auto == 1) { echo "Your authenticated"; } www.openfile.org/login.php?log_auto=1 Wuerde ohne eine Berechtigungspruefung Zugang gewaehren. Also am Besten $log_auth = 0, am Amfang vor der Ueberpruefung setzen oder anders coden: if (isset($USER) == "developer" && isset($PASS) == "x$3&h/§G") { start_session(); $_SESSION['SESS_CUS'] = $user_id; } > - Prüfung von <form>-Daten Ja wie gesagt Tags sollte man entfernen, in dem Fall die Daten werden wieder ueber den Browser ausgegeben. addslashes wandelt single quote ('), double quote ("), backslash (\) and NUL (the NULL byte) um. Das ist wichtig in dem Fall die Formularuebergabe wird in einem SQL-Query z.B. bei Page-Sliding ueber limit benutzt. Hier entseht SQL Injection. Aus der php.net Docu eine Funktion: function quote_smart($value) { // Stripslashes if (get_magic_quotes_gpc()) { $value = stripslashes($value); } // Quote if not integer if (!is_numeric($value)) { $value = "'" . mysql_real_escape_string($value) . "'"; } return $value; } quote_meta ist auch noch wichtig und kann ohne PHP beinflussen. Hoffe ich konnte dir weiterhelfen :-) -- Best Regards, Mark
php::bar PHP Wiki - Listenarchive