宽字节注入(2)

昨晚折腾了一晚上,把大致的一些东西整理了下,为团队纳新选了几首音乐素材..然后团队的一个表弟来问我宽字节注入的事情了...然后就就才抽空写了一点作为上一篇mysql注入的补充。

本来昨天参加t00ls的线下沙龙,有几个新姿势要分享的,结果忙活了一晚上..不知道在干嘛。没写完,明天分享吧。如果来得及...

排除看不懂代码和传送门,阅读这篇文章需要:4分钟

这里$username 是可控的,有输入的地方就是有危险的。因为有输入的地方用户是可控的。一定要过滤,一定要过滤,一定要过滤!

所谓的登陆框注入,以及万能密码,就是这个原理。用注释符注释掉后面验证password的语句。

加完addslushes函数就是这样,登录失败

使用addslashes来防御(addslashes函数会把' " %00 \ 这些字符前面加上一个\来转义他们)

设置数据库字符为gbk导致宽字节注入

这样是失败的

因为post方法是不会对url编码进行还原的。但是由于我们接收参数的是用$_request方法。

所以,我们可以这样~~

用get请求提交~

这样url编码就会被解码,然后%df和%5c被还原成宽字节,運。

宽字节的问题我就不多说了,这边再提了一下是因为团队的一个表弟问的…

传送门:

面试中碰到的坑之宽字节(二)

要补充的是,錦”这个字,它的utf-8编码是0xe98ca6,它的gbk编码是0xe55c。当我们的錦被iconv从utf-8转换成gbk后,变成了%e5%5c,而后面的’被addslashes变成了%5c%27,这样组合起来就是%e5%5c%5c%27,两个%5c就是\\,正好把反斜杠转义了,导致’逃逸出单引号,产生注入。

关于绕过:

一:字符编码问题导致绕过

· 2.1、设置数据库字符为gbk导致宽字节注入

· 2.2、使用icon,mb_convert_encoding转换字符编码函数导致宽字节注入

二:编码解码导致的绕过

· 3.1、url解码导致绕过addslashes

· 3.2、base64解码导致绕过addslashes

· 3.3、json编码导致绕过addslashes

三:一些特殊情况导致的绕过

· 4.1、没有使用引号保护字符串,直接无视addslashes

· 4.2、使用了stripslashes

· 4.3、字符替换导致的绕过addslashes

不一一列出来了,后面安全和开发是一个样子的….

原文发布于微信公众号 - 晨星先生(MoXuanIT)

原文发表时间:2017-02-26

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏互联网杂技

如何去了解JavaScript引擎的工作原理

1. 什么是JavaScript解析引擎? 简单地说,JavaScript解析引擎就是能够“读懂”JavaScript代码,并准确地给出代码运行结果的一段程序。...

40370
来自专栏AI科技大本营的专栏

精选26个Python实用技巧,想秀技能先Get这份技术列表!

【导读】Python 虽然是脚本语言,但是因为其易学,迅速成为科学家的工具,从而积累了大量的工具库、架构,人工智能涉及大量的数据科学,用 Python 是很自然...

15450
来自专栏海说

深入理解计算机系统(3.1)---走进汇编的世界

  本系列拖了蛮久了,主要是因为LZ写的时候其实刚看到第二章,因此这一段时间快速看了下第三章,并花了点时间沉淀了一下,这才耽误了下来。

15260
来自专栏CDA数据分析师

精选26个Python实用技巧,想秀技能先Get这份技术列表!

【导读】Python 虽然是脚本语言,但是因为其易学,迅速成为科学家的工具,从而积累了大量的工具库、架构,人工智能涉及大量的数据科学,用 Python 是很自然...

12920
来自专栏程序猿DD

程序员你为什么这么累【续】:编码习惯-函数编写建议

之前系列文章里面完整的代码已经上github,地址在文章最后 傻瓜都能写出计算机可以读懂的代码,只有优秀的程序员才能写出人能读懂的代码! 在我看来,编写简单的函...

225100
来自专栏ATYUN订阅号

Jupyter Notebook最实用的5个魔术命令

Jupyter Notebook是一个基于Web的交互式工具,机器学习和数据科学社区都频繁使用它。它们用于快速测试,作为报告工具,甚至是在线课程中非常复杂的学习...

1K20
来自专栏BeJavaGod

BeJavaGod - 如何正确使用数据字典进行分类统一操作(一)

先说说什么是数据字典,这个玩意一般不太会解释,举个栗子吧~ 每个系统都会有用户表,性别:男(1)女(0) 另外我们做物流的会涉及到车型:卡车(1),轿车(2),...

36770
来自专栏机器学习算法与Python学习

精选26个Python实用技巧,想秀技能先Get这份技术列表!

Python 虽然是脚本语言,但是因为其易学,迅速成为科学家的工具,从而积累了大量的工具库、架构,人工智能涉及大量的数据科学,用 Python 是很自然的事。磨...

14520
来自专栏企鹅号快讯

实战:从Python分析17-18赛季NBA胜率超70%球队数据开始…

干货 观点 案例 资讯 我们 ? 撸主: Casey 岂安业务风险分析师 主要负责岂安科技RED.Q的数据分析和运营工作。 就在昨天,12月19日,科比再...

27870
来自专栏互联网杂技

以后有机会写框架用得着的

在这个js框架随处乱跑的时代,你是否考虑过写一个自己的框架?下面的内容也许会有点帮助。 一个框架应该包含哪些内容? 1. 语言扩展 大部分现有的框架都提供了这部...

28050

扫码关注云+社区

领取腾讯云代金券