博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Sqli-labs less 36
阅读量:7108 次
发布时间:2019-06-28

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

Less-36

我们直接看到36关的源代码

上面的check_quotes()函数是利用了mysql_real_escape_string()函数进行的过滤。

mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。

下列字符受影响:

  • \x00
  • \n
  • \r
  • \
  • '
  • "
  • \x1a

如果成功,则该函数返回被转义的字符串。如果失败,则返回 false。

但是因mysql我们并没有设置成gbk,所以mysql_real_escape_string()依旧能够被突破。方法和上述是一样的。

Payload:

这个我们利用的 ' 的utf-16进行突破的,我们也可以利用%df进行。

Payload:

 

Notice:

在使用mysql_real_escape_string()时,如何能够安全的防护这种问题,需要将mysql设置为gbk即可。

设置代码:

Mysql_set_charset('gbk','$conn')

转载于:https://www.cnblogs.com/lcamry/p/5762920.html

你可能感兴趣的文章
MySQL 5.7中的更多改进,包括计算列
查看>>
敲山震虎?继MongoDB之后,AWS又对Elasticsearch下手了
查看>>
Facebook计划整合WhatsApp、Instagram和Messenger的基础设施
查看>>
为所有PHP-FPM容器构建单独的NGinx Dock镜像
查看>>
微软开源PDB
查看>>
CLion 2016.1新增Python、Swift支持,并改进了C++支持
查看>>
Visual Studio 2015 for Linux更好地支持Linux下的开发
查看>>
InfoQ趋势报告:DevOps 和云计算
查看>>
promise介绍--基础篇
查看>>
在MySQL和PostgreSQL之外,为什么阿里要研发HybridDB数据库?
查看>>
解读:Java 11中的模块感知服务加载器
查看>>
Java8(3):Java8 中 Map 接口的新方法
查看>>
QCon旧金山演讲总结:阿里无线技术架构演进
查看>>
GitHub Octoverse 2018调查要点
查看>>
高效使用微软Azure服务总线的消息功能
查看>>
译文-G1收集器
查看>>
敏捷项目管理,POLYV来支招
查看>>
TensorFlow技术发展与落地实践
查看>>
Grafana 6.0正式发布!新增查询工作流,全新独立Gauge面板
查看>>
使用SpringBoot开启微服务之旅
查看>>