• 爱情文章
  • 亲情文章
  • 友情文章
  • 生活随笔
  • 校园文章
  • 经典文章
  • 人生哲理
  • 励志文章
  • 搞笑文章
  • 心情日记
  • 英语文章
  • 范文大全
  • 作文大全
  • 新闻阅读
  • 当前位置: 山茶花美文网 > 亲情文章 > 正文

    sql数据库查询语句大全 [中关村在线网站order,by语句的盲注思路及修复方案(图)]

    时间:2020-02-18来源:山茶花美文网 本文已影响 山茶花美文网手机站

    基于order by内容的盲注

    详细说明:

    对http://active.zol.com.cn/diy/bisai.php?mont_h=2009-05&id=12&type=15&order=zj_vote+desc 做安全检测。

    尝试数值型注入未果。

    不过,看到zj_vote+desc,想到这里也许能利用。

    用工具扫它没发现注入。因为mysql的union前不能带order by。

    但是order by里的内容是不是就没法注入了?

    我不死心啊。

    做了一些尝试,发现order by是可以盲注的。

    这种方式依赖数据库结果中必须存在一个已知存在不一样数值的列。

    不过,既然程序里order by那个字段了,那么那个字段理论上肯定有多种值的。比如本例中的zj_vote字段.

    漏洞证明:

    看排序。236和239数值相差3,我构造一个abs(zj_vote-237-(expr)) asc.

    (expr)为假时,(239-237-0)=2,(236-237-0)=1,236排前面,

    (expr)为真时,(239-237-1)=1,(236-237-1)=2,239排前面,

    你也许会说,你这个236和239相差是3,当然简单了。如果相差2呢?

    比如236和238怎么办?

    不卖关子了,直接告诉你吧,他不是相差2么,你可以用abs(zj_vote-236-(expr)*3)啊

    http://active.zol.com.cn/diy/bisai.php?mont_h=2009-05&id=12&type=15&order=abs(zj_vote-237-(length(user())>20))+asc

    中关村在线网站order by语句的盲注思路及修复方案(图)1

    http://active.zol.com.cn/diy/bisai.php?mont_h=2009-05&id=12&type=15&order=abs(zj_vote-237-(length(user())=20))+asc

    中关村在线网站order by语句的盲注思路及修复方案(图)2

    修复方案:

    做一个允许的排序方式组合的数组,排序方式传排序方式的数组下标就可以了。

    想直接传字段也可以,检查一下那个排序方式是否在数组里,不是就用默认排序方式。也就安全了。

    作者 小雨

    • sql数据库查询语句大全 [中关村在线网站order,by语句的盲注思路及修复方案(图)] 相关文章:
    • 爱情文章
    • 亲情文章
    • 友情文章
    • 随笔
    • 哲理
    • 励志
    • 范文大全