我正在尝试注入下面给出的脚本,我给的东西就像 -
的userid =" ABCD"和pid =" &#39 ;; drop table shubh // "
但它没有删除表格。我在stackoverflow上看到了很多答案,每个人都在使用这些评论" - "但根据PHP手册,评论是" //,#,/ * * /"
我指的是这个资源 - http://www.w3resource.com/sql/sql-injection/sql-injection.php
<?php
$host="localhost";
$username="root";
$password="";
$db_name="hr";
$con=mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$uid = $_POST['uid'];
$pid = $_POST['passid'];
$sql = "select * from user_details where userid = '".$uid."' and password = '".$pid."'";
//$sql = "select * from user_details where userid = '".shubham."'";//shubham"' drop table shubh";//.$uid."' and password = '".$pid."'";
echo $sql;
$result = mysql_query($sql);
if(mysql_num_rows($result)>0)
{echo "<h4>"."-- Personal Information -- "."</h4>","</br>";
while ($row=mysql_fetch_row($result))
{echo "<p>"."User ID : ".$row[1]."</p>";
echo "<p>"."Password : ".$row[2]."</p>";
echo "<p>"."First Name : ".$row[3]." Last Name : ".$row[4]."</p>";
echo "<p>"."Gender : ".$row[5]." Date of Birth :".$row[6]."</p>";
echo "<p>"."Country : ".$row[7]." User rating : ".$row[8]."</p>";
echo "<p>"."Email ID : ".$row[9]."</p>";
echo "--------------------------------------------";
}
}
else
echo "Invalid user id or password";
?>
答案 0 :(得分:3)
userid="abcd" and pid="'; drop table shubh //"
但它没有删除表格。
mysql_query
只接受一个声明。
通过该函数注入SQL需要使用不同的方法(例如子查询)。
我在stackoverflow上看到很多答案,每个人都在使用这些评论&#34;
--
&#34;但根据PHP手册,评论是&#34;//
,#
,/* */
&#34;
SQL不是PHP。它有不同的注释语法。