【发布时间】:2013-09-14 17:46:33
【问题描述】:
我有以下代码:
<?php
header( 'Content-type: text/xml' );
mysql_connect( 'domain', 'user', 'password' );
mysql_select_db( 'database' );
mysql_query(" INSERT INTO user(userName,password,email)
VALUES(
'".$_POST['username']."',
'".md5($pass)."',
'".$_POST['email']."',
)" );
?>
当我尝试在 url 中加载它时:
http://xcode.domain.de/add.php?userName=test&password=test
我的服务器出现此错误:
警告:输入中的意外字符:''' (ASCII=39) state=1 in /kunden//webseiten/xcode/add.php 第 15 行
解析错误:语法错误,第 15 行 /kunden/webseiten/xcode/add.php 中的意外 '"'
有人可以帮忙吗?
谢谢
【问题讨论】:
-
这就像教科书中的脚本注入漏洞示例。
-
你到底是什么意思?
-
您的变量似乎来自 URI QUERY_STRING,在 PHP 中填充到
$_GET,而不是$_POST。 @crush 意味着您在尝试将值插入数据库之前不清理输入。因此,如果我将用户名设为Milo';DROP TABLE user--,那么您可能会遇到麻烦。