当前位置:网站首页>SQL注入之文件读写
SQL注入之文件读写
2022-06-28 08:49:00 【永远是少年啊】
今天继续给大家介绍渗透测试相关知识,本文主要内容是SQL注入之文件读写。
免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!
一、SQL注入文件读写函数
我们之所以可以利用SQL注入漏洞来进行文件的读写,是因为MySQL数据库中存在与文件读写相关的函数。
load_file()函数可以进行文件的读取,into outfile和into dumpfile可以进行文件的写入,例如:
执行SQL命令:
select load_file("D:\\123.txt")
可以读取D:\123.txt文件中的内容。
而执行命令:
select "test" into outfile "D:\\234.txt"
可以向创建D:\234.txt文件(该命令执行的要求是该文件不存在),并写入test。
相关命令执行结果如下所示:
二、SQL注入文件读写之secure_file_priv参数
上述SQL语句的执行,必须依赖于数据库中secure_file_priv参数,该参数指定了数据库导入和导出的安全路径。
该参数可以有三种类型,如果该参数为一个目录,那么我们执行上述命令的前提是文件处于该参数指定的目录下;如果该参数为NULL,那么上述命令都无法执行;如果该参数为空,那么上述命令都可以无限制执行。
注意,该参数为NULL和空是两个完全不同的概念,该参数为空时如下所示:
该参数为NULL时,如下所示:
关于空值和NULL的区别,如果还存在疑惑,可以查阅:MySQL使用注意事项(一)
三、SQL注入文件路径获取
当我们利用SQL注入来读取文件内容时,需要知道目标文件的路径和文件名,那么我们如何获取文件路径和文件名呢,可以有以下方法:
1、根据网页报错显示。
有时,网站构建不严谨,我们就可以通过故意制造错误,引导网站显示处相关的路径。
2、网站遗留文件。
注入pipinfo之类的网站遗留文件会暴露网站的路径信息。
3、漏洞报错。
有些CMS或者其他中间件,由于其自身的漏洞,存在这爆路径的漏洞。
4、平台配置文件。
我们在运行网站服务的时候,都会有一个配置文件,如果我们能获取到该配置文件的信息,我们就可以获取到网站的目录。
5、爆破。
在上述方法都失效的情况下,只能通过暴力破解的方式,来猜解网站路径。
四、SQL注入文件读写之魔术引导开关
当我们使用SQL注入来进行文件读写时,还需要注意,在网站的PHP设置中是否使用了magic_quotes_gpc的魔术引导开关,该参数的设置会对单引号、双引号、反斜杠与空字符进行过滤。
这样,当我们使用MySQL进行文件读写,要输入目标站点路径时,就会受到限制。针对这一点,我们可以使用16进制编码的方式来进行绕过。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
边栏推荐
- [go ~ 0 to 1] the next day, June 25, switch statement, array declaration and traversal
- The Falling Leaves
- [introduction to SQL in 10 days] day5+6 consolidated table
- Robot Rapping Results Report
- 【Go ~ 0到1 】 第二天 6月25 Switch语句,数组的声明与遍历
- 【.NET6】gRPC服务端和客户端开发案例,以及minimal API服务、gRPC服务和传统webapi服务的访问效率大对决
- 神殿
- Dell r730 server startup error: [xxx] USB 1-1-port4: disabled by hub (EMI?), re-enabling...
- 爱分析发布《2022爱分析 · IT运维厂商全景报告》 安超云强势入选!
- DELL R730服务器开机报错:[XXX] usb 1-1-port4: disabled by hub (EMI?), re-enabling...
猜你喜欢

STL - inverter

Login common test case

电子元器件销售ERP管理系统哪个比较好?

罗氏线圈工作原理

Application of energy management system in iron and steel enterprises

Large current and frequency range that can be measured by Rogowski coil

Construire le premier réseau neuronal avec pytorch et optimiser

STL -- binder

Build the first neural network with pytoch and optimize it
![[.Net6] GRP server and client development cases, as well as the access efficiency duel between the minimum API service, GRP service and traditional webapi service](/img/19/296f124becb87461accf8b73b0a8bc.png)
[.Net6] GRP server and client development cases, as well as the access efficiency duel between the minimum API service, GRP service and traditional webapi service
随机推荐
Quickly understand JVM structure and working principle
中金财富开户安全吗?怎么收费?
【Go ~ 0到1 】 第二天 6月25 Switch语句,数组的声明与遍历
[untitled]
Discussion on the improvement and application of the prepayment system in the management of electricity charge and price
Build an integrated kubernetes in Fedora
整数划分
Privacy computing fat----- offline prediction
Not so Mobile
隐私计算FATE-----离线预测
40多岁的人如何配置年金险?哪款产品比较合适?
nuxt3入门
Integer partition
【力扣10天SQL入门】Day5+6 合并表
A - Bi-shoe and Phi-shoe
Loss损失函数
如何抑制SiC MOSFET Crosstalk(串擾)?
Robot Rapping Results Report
罗氏线圈工作原理
Zhejiang energy online monitoring and management system