西西河

主题:【讨论】从凤凰网的一个BUG看网站安全 -- 华恩

共:💬17 新:
全看树展主题 · 分页首页 上页
/ 2
下页 末页
家园 【讨论】从凤凰网的一个BUG看网站安全

下面是凤凰网出现BUG后显示的一条SQL语句。

分析来看,应该是一条取留言评论的语句。

rb_spacecomments,rb_spacecomments_archive 为表名。

itemid可能是某个ID。'2753599' 表明itemid字段很可能是7位字符。如果是博文ID,则全站博文只有1000万个似乎不能满足需求。也可能表明是全站只允许1000万个主贴。其他则由评论的方式出现。

pid应该也是某种ID。曾经做过东芝的一个电力项目,其中也有PID字段一说,在其中表示轴受温度,时间瞬间受力等。这里这个PID似乎更像是表示种类的ID,很可能是主贴所发版的ID。类型应该为字符型,大小1或2。

audit中文意思为审核,检查。鉴于凤凰网有博客审核一说。0,2,3应该是表明经过了审核的3种类型。而1则很可能是表示审核不通过的类型。该字段估计为数字,大小1。

该语句应该是来抽取某个博文的评论条数。存于total中。

从两条语句只有表名不一样之外,且后面一表以archive结尾,似乎系统做了LOG备份。

DB query Error.

SELECT COUNT(*) as total FROM rb_spacecomments WHERE itemid='2753599' AND pid='0' AND audit IN (0,2,3)

No:

Error:

DB query Error.

SELECT COUNT(*) as total FROM rb_spacecomments_archive WHERE itemid='2753599' AND pid='0' AND audit IN (0,2,3)

No:

Error:

关键词(Tags): #说说老本行
家园 PID = Process ID

在控制理论里面,PID是比例积分微分控制的缩写

家园 出错直接显示详细的debug信息就已经足够初级了。

相当于提供了一部分文档给攻击者...

家园 7位字符的判断生硬了
家园 凤凰网如果遭到黑客攻击.估计不是很强壮啊.

心配啊.

家园 这个太高深了.

估计它还没到这程度.呵呵.

家园 pid大概是post id吧
家园 看了一眼,说不定能直接上最低级的手段

sql injection.

家园 应该不会的.取留言评论不太可能用到那个的.应该哦。
家园 我的第一反应也是这样。
家园 不是post。get那个,国外坛子不是把发帖叫post么
家园 哦,是我弄错了.

可能性不大.如果那样的话,不应该是0.

家园 自增长的id不限于7位

现在7位数说明历史上只有7位数的帖子发出来过

将来到了8位也照样能用呀

而且这种情况下archive代表的意思很多

家园 SQL注入攻击

常见的安全检测应该已经包括了这种缺陷的探测

所以一般就成功率较低

调试信息的输出是个低级错误

但大多数站点都有,通常带来的危害没有想象中大

家园 可能是parent_id

即父id,如果pid为0说明是顶级留言(即直接留言),如果不为0则为次级留言(即留言的留言——对别人留言再进行的留言,好比论坛的引用跟帖一样)。 如果大于1则为n级留言,不过这种方式很少使用,一般直接采用链式表方式来逐级搜索,而不用直接定义。

有兴趣的可以搜索 “二叉树 先序遍历”

全看树展主题 · 分页首页 上页
/ 2
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河