博客
关于我
sqli-labs————Less-26(绕空格、/*、#等)
阅读量:170 次
发布时间:2019-02-28

本文共 577 字,大约阅读时间需要 1 分钟。

在尝试解决Less-26这个SQL注入问题时,我们需要理解当前的过滤机制,并找到有效的绕过方法。以下是优化后的详细步骤和思考过程:

  • 分析过滤机制

    • 过滤函数使用preg_replace去除了一些常见的SQL注入字符,如or、and、/、*、#、--、空格等。
    • 由于空格被过滤,传统的利用空格绕过注入的方法不再有效。
  • 寻找替代空格的方法

    • 考虑使用不同的制表符或换行符来代替空格,如TAB、换行符、垂直制表符等。
    • 在注入点处插入这些字符,确保它们不会被过滤,并且能够正确执行SQL语句。
  • 构造有效的字符串闭合

    • 由于只能使用一个单引号闭合字符串,需要仔细构造字符串,确保闭合和开合正确。
    • 使用双引号闭合前面的字符串,然后在其中嵌入注入点。
  • 构造注入payload

    • 例如,使用双引号闭合字符串,然后插入注入点:''+注入点+''。
    • 确保注入点有效,能够绕过过滤机制并执行必要的SQL操作。
  • 验证注入payload

    • 在不同的环境下测试,确保替代空格的字符在各环境中有效。
    • 检查注入后的SQL语句是否正确执行,是否能够获取到预期的数据。
  • 确保注入成功

    • 确认注入后的WHERE条件被正确解析,能够筛选出正确的记录。
    • 验证是否能够获取到用户的id字段值及其他相关信息。
  • 通过以上步骤,可以有效地绕过过滤机制,成功进行SQL注入,从而解决Less-26这个问题。

    转载地址:http://zprc.baihongyu.com/

    你可能感兴趣的文章
    Oracle面试题:Oracle中truncate和delete的区别
    查看>>
    ThreadLocal线程内部存储类
    查看>>
    thinkphp 常用SQL执行语句总结
    查看>>
    Oracle:ORA-00911: 无效字符
    查看>>
    Text-to-Image with Diffusion models的巅峰之作:深入解读 DALL·E 2
    查看>>
    Tensorflow.python.framework.errors_impl.ResourceExhaustedError:无法分配内存[操作:AddV2]
    查看>>
    TCP基本入门-简单认识一下什么是TCP
    查看>>
    tableviewcell 中使用autolayout自适应高度
    查看>>
    Symbolic Aggregate approXimation(SAX,符号聚合近似)介绍-ChatGPT4o作答
    查看>>
    Orcale表被锁
    查看>>
    svn访问报错500
    查看>>
    sum(a.YYSR) over (partition by a.hy_dm) 不需要像group by那样需要分组函数。方便。
    查看>>
    ORCHARD 是什么?
    查看>>
    Struts2中使用Session的两种方法
    查看>>
    STM32工作笔记0032---编写跑马灯实验---寄存器版本
    查看>>
    order by rand()
    查看>>
    SSM(Spring+SpringMvc+Mybatis)整合开发笔记
    查看>>
    Orderer节点启动报错解决方案:Not bootstrapping because of 3 existing channels
    查看>>
    org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement profile
    查看>>
    sql查询中 查询字段数据类型 int 与 String 出现问题
    查看>>