谢谢xiahouwen(活靶子.NET)可以我通过post方式传递这样参数(语句) Select * From Table1 Where id=1; Update Table1 Set name='aaa' ; --却出现这样的错误, 我把'换成\'也不行, 其实我是想利用这样漏洞执行语句, ASP的只要没有过滤非法字符就可以 可是PHP好像自动对参数过滤,把 ' 处理为 \' ,是这样吗?Warning: Unknown(): message: 第 1 行: '\' 附件有语法错误. (severity 15) in Unknown on line 0Warning: Unknown(): Query failed in Unknown on line 0
是写程序的人的问题!!!!!
而且php好像也不支持2条语句同时执行, 不是嵌套语句, 而是用; 断开, 多条语句好像不行请指教, 我还是自己装个php研究吧
为友情,为生活,为爱情。
祝愿你美梦成真祈愿板:
http://www.77studio.net/wish/
其实不是php的事情 是sqlserver支持同时多条sql语句的运行
测试代码如下
<?php$handler = mssql_connect('wumeibo','sa','sa');
mssql_select_db('test',$handler);
$strSql = "select * from test;update test set num=num+1";
$result = mssql_query($strSql,$handler);
while( $row = mssql_fetch_array( $result ) )
{
echo $row[id]." ".$row[num]."<br>";
//echo "{$row[id]} {$row[num]}<br>";}
mssql_free_result($result);
mssql_close($handler);
?>每次运行后表内num字段都加1了
所以在处理拼接出来的sql语句的时候应该对非法字符比如";"和"--"判断一下
Select * From Table1 Where id=1; Update Table1 Set name='aaa' ; --却出现这样的错误, 我把'换成\'也不行,
其实我是想利用这样漏洞执行语句, ASP的只要没有过滤非法字符就可以
可是PHP好像自动对参数过滤,把 ' 处理为 \' ,是这样吗?Warning: Unknown(): message: 第 1 行: '\' 附件有语法错误. (severity 15) in Unknown on line 0Warning: Unknown(): Query failed in Unknown on line 0