欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

python - 代码是通过uc浏览器,对php网站的sql注入吗?

程序员文章站 2024-01-03 21:56:04
...
代码请看:http://sebug.net/vuldb/ssvid-87115?from=timeline&isappinstalled=0

还有get_authcode算法不知怎么搞到的,求解答?

回复内容:

代码请看:http://sebug.net/vuldb/ssvid-87115?from=timeline&isappinstalled=0

还有get_authcode算法不知怎么搞到的,求解答?

首先要解释一下什么是注入(inject),因为动态网站多少会涉及到数据库操作,如果我有一个页面atricle.php 它需要获取一个参数id -> article.php?cat=recent
网站后台逻辑就是截取这个GET上来的cat,然后把这个id带入sql查询。

$cat = $_GET['cat']
$sql = "select * from article where 'cat' = '$cat'"

我们查询语句可能是这样的
select * from article where 'cat' = 'recent'
正常用户访问的情况下是没有问题,那么要是别人对id这个参数动手脚,同时网站又没有做相关的限制(magic_quotes_gpc = off )
我们可以构造URL : article.php?cat=recent' union select * from user where 'username' = 'test
这个时候 网站GET到的cat就会变成recent' union select * from user'
sql语句就会变成

select * from article where 'cat' = 'recent' union select * from user where 'username' = 'test' 

这样就会导致user表泄露

大概理解了原理之后Sebug说faq.php有注入漏洞,那么就是faq.php在处理接收数据的时候没有做处理。(防范SQL注入的方法有很多,常见的是特殊字符转义,即是把一些SQL关键字转义为空或者其他的)
然后文章说的UC_KEY不是指UC浏览器,而是UCenter旗下的软件(http://www.comsenz.com/products/ucenter/)。
恩,大概就是这样了,希望对题主有帮助。

相关标签: 安全 python php

上一篇:

下一篇: