专栏首页python3DVWA系列之3 medium级别SQL

DVWA系列之3 medium级别SQL

将“DVWA Security”设置为medium中等级别,首先点击右下角的“View Source”查看此时的网页源码,主要观察与low级别的区别。

可以发现,这里对用户输入的id参数进行了过滤,主要方法是使用了mysql_real_escape_string()函数,这个函数可以将$id变量中的单引号’、双引号”、斜杠\等字符进行转义,因而我们再输入之前的“’or 1=1 #”就会报错了,从错误提示中可以发现单引号’已经被转义成了\’,因而注入语句无法发挥作用。

需要说明的是,在PHP中还有一个与mysql_real_escape_string()功能类似的函数:addslashes(),这两个函数的功能都是对特殊字符进行转义,那么到底用哪个函数更好一些呢?百度了一下,发现大家也是各执一词。有人说mysql_real_escape_string()函数需要事先连接数据库,可能会报错,所以推荐使用addslashes();也有的人说addslashes()过滤不够严格,推荐使用mysql_real_escape_string()。在DVWA中很明显是推荐使用mysql_real_escape_string(),那么我们就相信DVWA好了。

下面我们分析一下这里该如何绕过过滤,继续进行注入呢?我们再仔细观察一下源码,可以发现参数id已经被改为了数字型,第三行语句中“user_id = $id”,而之前的low级别是“user_id = ‘$id’”,其实这就是DVWA故意留下的一个漏洞。

我们可以进一步进行确认,在文本框中输入3以及1+2,发现两者显示的结果都是一样的,因而可以断定参数是数字型,这里就应该采用数字型的注入方法。

数字型注入与文本型的最大区别就是不需要考虑引号闭合,下面我们来进行注入。

首先输入“1 and 1=1”,显示正常;输入“1 and 1=2”,显示不正常。判断存在注入点。

分别输入“1 order by 1”、“1 order by 2”,显示正常;输入“1 order by 3”,显示错误,判断存在2个字段。

输入“1 union select 1,2”判断出两个字段都可以代入参数进行查询。

再接下来的操作就与之前相同了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python flask 消息闪现

    消息闪现参考文档:http://www.pythondoc.com/flask/patterns/flashing.html

    py3study
  • spring3+mbatis3开发实例

    最近一直在深入了解struts2,spring,hibernate以及mybatis框架,通过查看这些框架的源码和官方文档,发现自己对于这些框架的原理,使用有了...

    py3study
  • docker封装mysql镜像

    py3study
  • 群消息这么复杂,怎么能做到不丢不重?

    【需求缘起】 之前的文章更多的聊了单对单的消息投递: 《微信为什么不丢消息?》 《http如何像tcp一样实时的收消息?》 群聊是多人社交的基本诉求,不管是Q...

    架构师之路
  • 1051 复数乘法 (15 分)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    韩旭051
  • Linux驱动开发常用调试工具---之内存读写工具devmem和devkmem【转】

    转自:https://blog.csdn.net/gatieme/article/details/50964903

    用户3033338
  • OCP-052考试题库汇总(10)-CUUG内部解答版

    Which two are true about Oracle's Optimizer statistics?

    用户5892232
  • Intellij IDEA 美化指南

    通过在插件市场搜索关键字 theme 你可以找到很多美化插件,挑选一款自己喜欢的就可以了。

    码农小胖哥
  • java学习之stringbuffer和string之间的转换

    吾爱乐享
  • 文献翻译Complex integrated analysis of lncRNAs-miRNAs-mRNAs in oral squamous cell carcinoma(2)材料和方法

    (HNSCC)从Cancer Genome Atlas下载(TCGA)数据库(https://gdc-portal.nci.nih.gov/)。根据口腔的解剖学...

    用户1359560

扫码关注云+社区

领取腾讯云代金券