SQL注入的一些疑问
答案:4 悬赏:70 手机版
解决时间 2021-05-04 17:41
- 提问者网友:浩歌待明月
- 2021-05-03 22:30
1、拿网站www.test.com举例
为什么不能直接在地址栏输入www.test.com? (select count(*) from sysobjects)>0
而要输入
http://www.test.com/list.asp?id=49 and (select count(*) from sysobjects)>0
2、为什么我
① http://www.test.com/list.asp?id=49
② http://www.test.com/list.asp?id=49 and 1=1
③ http://www.test.com/list.asp?id=49 and 1=2
3种情况返回的页面时一样的= =!???
希望知道的童鞋告诉下,谢谢~~
最佳答案
- 五星知识达人网友:怀裏藏嬌
- 2021-05-03 23:41
http://www.test.com/list.asp?id=49 and (select count(*) from sysobjects)>0
网站背后其实是一层一层的目录 如果你直接打SQL语句的话他会当做地址来处理 所以需要逻辑运算符
返回值情况一样是因为别人做过异常处理了 就像你知道鸡蛋可以砸人(=1) 但是人家明确规定了 鸡蛋不能砸人 (text!=1)
这时候鸡蛋砸人就行不通了额
全部回答
- 1楼网友:老鼠爱大米
- 2021-05-04 03:57
1.SQL猪肉的产生是因为参数接受没有过滤,将提交的恶意字符代入了sql语句导致的非法查询
所以必须有个参数的接受过程,就如你距离的list.asp?id= ,这里的id就是一个参数,必须有值。
2.可能过滤了and这个关键字,或是页面不存在注入。
- 2楼网友:爱难随人意
- 2021-05-04 02:24
不是我说你当啥黑客嘛!为了这个世界的安全我要正义的说一句,感你娃读书你要去产牛儿
- 3楼网友:迟山
- 2021-05-04 00:45
地址栏不识别SQL语句的
而且地址栏的连接符号好像是&
貌似一般的所说的不是你理解的那样吧
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯