Thread Eventmanager v2.0.0: Bitte mal ausführlich testen (16 answers)
Opened by renee at 2005-04-03 23:08

renee
 2005-04-05 18:57
#40337 #40337
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=Tom,05.04.2005, 16:49]Danke, für deine Tips werde mal schaun ob ich das alles hinkriege.

Quote
Du scheinst die Eingabe nicht zu quoten, so dass SQL-Injections möglich scheinen...


Was meinst du damit, kannst das etwas genauer erklären?

Quote
Schau Dir mal im DBI-Modul die ?-Schreibweise an...


Ja, werde ich mal machen.

Tom[/quote]
Ich bekomme folgende Fehlermeldung:
DBD::mysql::db do failed: You have an error in your SQL syntax near 'ist'<br /><br />; show tables;','1112712749','212.121.153.12')' at line 1 at post.cgi line 291.

Wenn ich folgende Beschreibung eingebe:
Quote
mein
'ist'

; show tables;


von daher nehme ich an, dass Du Dein Statement im Skript ungefähr so drinstehen hast:
Code: (dl )
my $stmt = "INSERT INTO table VALUES('$angaben','nr','$ip')";

Dadurch bekommst Du einen Fehler, wenn ein User ein ' im Text angibt. Deswegen solltest Du die ?-Schreibweise nutzen:
Code: (dl )
1
2
3
my $stmt = "INSERT INTO table VALUES(?,?,?)";
my $sth = $dbh->prepare($stmt) or die $dbh->errstr();
$sth->execute($angaben,$nr,$ip) or die $dbh->errstr();

Dadurch werden die ' und andere böse Zeichen automatisch gequotet und erzeugen keinen Fehler mehr!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread Eventmanager v2.0.0: Bitte mal ausführlich testen