michael2105
Neues Mitglied
Hallo allerseits,
folgender Code erstellt Metatags für die einzelnen Seite eines CMS an dem ich gerade arbeite.
Da dachte ich mir, ich bastel einfach die Prüfung aller per $_GET übergebenen Variablen direkt in diese Funktion.
Allerdings kenne ich mich noch nicht wirklich mit SQL_Injection aus und frage daher mal in die Runde, ob ich mit meinem Code auf dem richtigen Weg bin und was ich ggfs. noch verbessern kann um meine Seite zu schützen.
Danke für Eure Hilfe & Gruß
Michael
folgender Code erstellt Metatags für die einzelnen Seite eines CMS an dem ich gerade arbeite.
Da dachte ich mir, ich bastel einfach die Prüfung aller per $_GET übergebenen Variablen direkt in diese Funktion.
Allerdings kenne ich mich noch nicht wirklich mit SQL_Injection aus und frage daher mal in die Runde, ob ich mit meinem Code auf dem richtigen Weg bin und was ich ggfs. noch verbessern kann um meine Seite zu schützen.
Danke für Eure Hilfe & Gruß
Michael
Code:
// Generiert Meta-Tags
// Prüft alle auf der Seite benutzten Variablen aus $_GET
// Funktionsaufruf erfolgt per hardcode in index.php - also bei jedem Seitenaufruf
function showMetaTags() {
if (get_magic_quotes_gpc()) {
$id = stripslashes( $_GET['id'] ); #nur Zahlen
$m = stripslashes( $_GET['m'] ); #nur Zahlen
$cur = stripslashes( $_GET['cur'] ); #nur Zahlen
$news_id = stripslashes( $_GET['news_id'] ); #nur Zahlen
$seite = stripslashes($_GET['seite']); #nur Zahlen
$show = stripslashes( $_GET['show'] ); #nur Buchstaben
$type = stripslashes( $_GET['type'] ); #nur Buchstaben
}
else
{
$id = $_GET['id'];
$m = $_GET['m'];
$cur = $_GET['cur'];
$news_id = $_GET['news_id'];
$seite = $_GET['seite'];
$type = $_GET['type'];
$show = $_GET['show'];
}
// Trimmen
$id = trim( $id );
$m = trim($m);
$cur = trim($cur);
$news_id = trim($news_id);
$seite = trim($seite);
$show = trim($show);
$type = trim($type);
$zahlen = array();
if(!empty($id)) { $zahlen[] = $id; }
if(!empty($m)) { $zahlen[] = $m; }
if(!empty($cur)) { $zahlen[] = $cur; }
if(!empty($news_id)) { $zahlen[] = $news_id; }
if(!empty($seite)) { $zahlen[] = $seite; }
foreach($zahlen as $element) #Mal sehen ob auch nur Zahlen ankommen - sonst exit
{
if(!is_numeric($element)) {
exit;
}
}
$buchstaben = array();
if(!empty($show)) { $buchstaben[] = $show; }
if(!empty($type)) { $buchstaben[] = $type; }
foreach($buchstaben as $element) #Mal sehen ob auch nur Buchstaben ankommen - sonst exit
{
if(is_numeric($element)) {
exit;
}
}