Portal > Foren > Datenbanken, Server, Betriebssysteme und sonstige Programmiersprachen > Datenbanken > [ SQL ] Artikel: About Security (#11): SQL-Injection
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 28.12.2005, 15:01 Nach oben    #41
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.512
Standard

Du musst ja auch echo o.Ä. verwenden, um den "return"-Wert auszugeben.

Grüße Ben.
Ben ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2005, 15:47 Nach oben    #42
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Sieht recht gut aus.
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2005, 15:52 Nach oben    #43
Erfahrener Benutzer
 
Benutzerbild von Doggi
 
Registriert seit: 26.10.2005
Ort: Basel
Beiträge: 115
Standard

das liegt vielleicht daran, dass es der code von Jann ist

nur suche ich noch den fehler warum es nicht geht. das mit dem echo versteh ich nicht da ich die funktion ja mit variable aufrufe und ich nicht verstehe was ich da mit echo ausgeben soll. ich will ja nichts ausgeben sondern nur die variable durch die funktion verändern
__________________
Wer später bremst, fährt länger schnell...

Geändert von Doggi (28.12.2005 um 15:55 Uhr)
Doggi ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2005, 15:57 Nach oben    #44
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.367
Standard

Zitat:
Zitat von Doggi
das liegt vielleicht daran, dass es der code von Jann ist
das schützt auch nicht vor Fehlern!!!

ich nutze seit einiger Zeit:
http://de.wikipedia.org/wiki/SQL-Injection#PHP
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2005, 16:02 Nach oben    #45
Erfahrener Benutzer
 
Benutzerbild von Doggi
 
Registriert seit: 26.10.2005
Ort: Basel
Beiträge: 115
Standard

das weiß ich doch. ich wollte damit sagen, dass ich darauf momentan noch nicht gekommen wäre, da ich mit funktionen grad am probieren bin.
__________________
Wer später bremst, fährt länger schnell...
Doggi ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2005, 16:43 Nach oben    #46
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Die Funktion gibt den fertigen Wert zurück (return $var und nicht aus (echo $var. Du kannst den Rückgabewert speichern ($var = funktion() oder direkt ausgeben (echo funktion().

// Edit:
Das "sieht doch schick aus" ging an Jojo
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2005, 16:50 Nach oben    #47
Erfahrener Benutzer
 
Benutzerbild von Doggi
 
Registriert seit: 26.10.2005
Ort: Basel
Beiträge: 115
Standard

genau das erwarte ich ja. naja, vielleicht ist es einfach zeit aufzuhören und morgen weiter zu machen.
__________________
Wer später bremst, fährt länger schnell...
Doggi ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2006, 18:21 Nach oben    #48
Neuer Benutzer
 
Registriert seit: 20.01.2006
Beiträge: 2
Standard

Tach,
ich habe mich jetzt bis zu Euch "vorgegoogled" und bin ja genau in dem richtigen Beitrag gelandet.
Hochinteressant wie die verschiedenen Ansätze zur Sicherheit aufgearbeitet werden.
Nun aber mal die Frage eines PHP-Amateurs der immer so fleißig vor sich hinbastelt und meistens seine eigenen Lösungen findet.
Ich würde für mein kleines Projekt evtl. noch folgenden Denkansatz zusärtlich umsetzen wollen:

Code:
$text = $QUERY_STRING;
$suche = "SELECT";
if(stristr($text,$suche):(
// evtl. Mail mit Query String an Webmaster
echo "<h1>Schimpfworte</h1>";
exit;
endif;
Das ist jetzt die unbearbeitete Variante nur als Idee.
Es werden dann die wichtigsten Begriffe in einer for-Schleife durchgearbeitet. (SELECT,UPDATE, DROP...)

Das ganze in die Datenbankdatei vor dem connect gesetzt sollte doch schon fast alle Möglichkeiten einer Injection erschlagen, oder liege ich da falsch ?

Gruß
Marco
Marco ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2006, 18:30 Nach oben    #49
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Eine Injection wäre ja schon
PHP-Code:
$QUERY_STRING "' OR 1"
Ich denke auch, dass es wesentlich schneller gehen würde, mal kurz mit mysql_real_escape_string() drüber zu rutschen.
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2006, 18:31 Nach oben    #50
Benutzer
 
Registriert seit: 17.08.2005
Beiträge: 87
Standard

Zuerst stellt sich mal wieder die Frage nach dem Warum...

Und dann noch die nach der Richtigkeit
SELECT a,b,c FROM t WHERE x='update available. select preferred lalalala'
Ist doch eine harmlose, sinnvolle Abfrage.
Andererseits
PHP-Code:
<?php
$pass 
"' or '1'='1";
$query "SELECT username,x,y FROM UserTable WHERE userpass='$pass'";

echo 
$query;
?>
Das hätte Deine Vorgehensweise nicht verhindert, ist aber auch schlimm.
VolkerK ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2006, 20:25 Nach oben    #51
Neuer Benutzer
 
Registriert seit: 20.01.2006
Beiträge: 2
Standard

Danke für die Antworten. Es war nur ein Gedanke, aber die Einwände machen Sinn. Daher habe ich es bereits in den Müll geschoben. Schade, ein paar Schimpfkanonen wäre ich dann schon gerne losgeworden. Gruß Marco
Marco ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.01.2006, 14:25 Nach oben    #52
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Schimpfworte kannst du ja seperat filtern, z.B. bei der Ausgabe.
PHP-Code:
$search = array('schlimmes schimpfwort');
$replace = array('was nettes');

$text str_replace($search$replace$text); 
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.01.2006, 12:55 Nach oben    #53
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.512
Standard

Dazu eventuell interessant:
http://shiflett.org/archive/184

Und dazu:
http://ilia.ws/archives/103-mysql_re...tatements.html

Geändert von Ben (22.01.2006 um 20:58 Uhr)
Ben ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.02.2006, 18:23 Nach oben    #54
Neuer Benutzer
 
Registriert seit: 25.02.2006
Beiträge: 2
Standard

entschuldigt, falls ich gerade einen alten Thread aufwirble, aber ich bin momentan auf der Suche nach einer Möglichkeit, php injection möglichst unmöglich zu machen. Was mich ein wenig verwirrt hat, ist die Tatsache, dass die funktion get_magic_quotes_gpc() gar nicht so sicher ist, wie ich zuerst dachte ^^.

Wie kann man diese Funktion bitte umgehen? wenn die Anführungszeichen bzw. Hochkommata einfach escaped werden, sollte es doch nicht mehr möglich sein, die datenbank zu "ärgern" ?!
Mich würde das interesieren, da ich keine Lust hab plötzlich meine Datenbanken zu verlieren, da ich gewisse Möglichkeiten nicht in betracht gezogen habe

Falls ich einen der links übersehen haben sollte, der mich auf die Lösung stößt, bitte ich um einen kleinen Hinweiß, denn ich habe mir alle Links die sich meiner Meinung damit befassen angeschaut

mfg
Verion
Verion ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.02.2006, 18:31 Nach oben    #55
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

get_magic_quotes_gpc() gibt ja nur zurück, ob die Magic Quotes standardmäßig escapet werden oder nicht. Und weil es manchmal deaktiviert ist, kann man darauf auch nicht vertrauen

Daher:
Wenn magic_quotes_gpc
Dann stripslashes
...
mysql_real_escape_string
Lars ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.02.2006, 20:00 Nach oben    #56
Benutzer
 
Registriert seit: 17.08.2005
Beiträge: 87
Standard

Und selbst wenn es aktiviert ist, kann man sich nicht darauf verlassen; siehe auch: von Ben verlinkte Seiten.
VolkerK ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.02.2006, 20:21 Nach oben    #57
Neuer Benutzer
 
Registriert seit: 25.02.2006
Beiträge: 2
Standard

ups.. die beiden links hatte ich ausgelassen, da ich dachte, sie bezögen sich auf das auffinden von Schimpfwörtern.. Danke, werd mich da mal umschaun.

Verion
Verion ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.09.2006, 12:54 Nach oben    #58
Neuer Benutzer
 
Registriert seit: 12.09.2006
Beiträge: 12
Standard

*_* Einmal asche und zerstörung auf mein Haupt *_*

Hmm hab das mal aus irgendeinem Artikel entnommen. Allerdings leicht problematisch, wenn englische Texte erwartet werden.

Weiterhin würde ich einfach versuchen typensicher zu programmieren:

Wenn ich einen integer-Wert erwarte:
PHP-Code:
$var = (int) $_POST['mein_kleiner_int']; 
Mfg, kari

Geändert von kari01 (28.09.2006 um 14:39 Uhr) Grund: Asche auf mein Haupt ^^
kari01 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.09.2006, 13:56 Nach oben    #59
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.653
Standard

Rofl sorry, aber das ist nicht dein ernst oder?
Der Orginalartikel ist eher eine Satire und zeigt, wie es NICHT sein soll.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
sql injection robo47 Plauderecke 3 18.05.2006 16:24
[ SQL ] Artikel: About Security (#13): Mit Stored Procedures Rikku Plauderecke 0 07.07.2005 23:21
[ SQL ] Artikel: About Security (#12): SQL-Injection verh... Rikku Plauderecke 0 07.07.2005 23:18


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:07 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45