发布时间:2023-05-30 17:00
原理:
GBK 占用两字节
ASCII占用一字节
PHP中编码为GBK,函数执行添加的是ASCII编码(添加的符号为“\”),MYSQL默认字符集是GBK等宽字节字符集。
大家都知道%df’ 被PHP转义(开启GPC、用addslashes函数,或者icov等),
单引号被加上反斜杠\,变成了 %df\’,其中\的十六进制是 %5C ,
那么现在 %df\’ =%df%5c%27,
如果程序的默认字符集是GBK等宽字节字符集,
则MySQL用GBK的编码时,会认为 %df%5c 是一个宽字符,也就是縗,也就是说:%df\’ = %df%5c%27=縗’,有了单引号就成功逃逸了。
练手:http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1
一进去就看到
加个‘
addslasher函数实锤了,
那么要从中逃逸出去。
考虑到宽字节注入。
输入%df’
ojbk,绝b宽字节,
那么现在就开始用常规套路了。
爆破各种table ,column.
用order by 猜测字段:
http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1%df'
order by 2%23
2和三之间,
如果大一点的话可以用二分法去找,这样比较快。
用union找出库名:
http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1%df'
union select 1,database()%23
再找表名,再根据表名找column
再找出可疑的·
其中有一个要注意的,
就是在查询ctf表中时,
=ctf
是不行的,这时候可以用十六进制转码。
0x 转码后内容!(小技巧)
找到pw后解密就OK
在macOS上安装使用基于 ESP32C3 的 Arduino“
第十二届 2021年1月 蓝桥杯青少年组省赛C++组 第1题--第3题(scratch实现)
AR独角兽的死亡教训:融资3亿美元后,成投资人提线木偶,营销大于产品技术...
微信小程序云开发用户身份登录_微信小程序+云开发实现欢迎登录注册
SpringCloud使用集中配置组件Config规避信息泄露
jQuery选择器(二)(基本过滤器,内容过滤器,可见过滤器)
基于SSM+SpringBoot+Vue的高校竞赛赛事管理系统
若依 vue前端 动态设置路由path不同参数 在页面容器里打开新页面(新路由),面包屑和标签页标题根据参数动态改变,面包屑多级标题,侧边栏对应菜单亮起
Caputo 分数阶导数快速的 H2N2 插值逼近(附Matlab代码)
chrome浏览器91版本SameSite by default cookies被移除后的解决方案,Chrome中跨域POST请求无法携带Cookie的解决方案