当前位置:网站首页>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
边栏推荐
- duilib 入门基础十二 样式类
- STL - inverter
- [go ~ 0 to 1] the next day, June 25, switch statement, array declaration and traversal
- webrtc优势与模块拆分
- Basic twelve style classes for duilib
- 【力扣10天SQL入门】Day4 组合查询 & 指定选取
- Quelle est la largeur de bande du serveur de bavardage sonore pour des centaines de millions de personnes en même temps?
- Understanding of CUDA, cudnn and tensorrt
- Lilda low code data large screen, leveling the threshold of data application development
- A - deep sea exploration
猜你喜欢

爱分析发布《2022爱分析 · IT运维厂商全景报告》 安超云强势入选!

887. egg drop

抖音服务器带宽有多大,才能供上亿人同时刷?

Discussion on the improvement and application of the prepayment system in the management of electricity charge and price

MATLAB小技巧(20)矩阵分析--主成分回归

Lilda low code data large screen, leveling the threshold of data application development

Discussion on the improvement and application of the prepayment system in the management of electricity charge and price

抖音服務器帶寬有多大,才能供上億人同時刷?

【大案例】学成在线网站

利尔达低代码数据大屏,铲平数据应用开发门槛
随机推荐
Explain observer mode
webrtc优势与模块拆分
CloudCompare&PCL 点云SVD分解
状态机程序框架
What are the advantages of a differential probe over a conventional probe
网上炒股开户安不安全?
Dell r730 server startup error: [xxx] USB 1-1-port4: disabled by hub (EMI?), re-enabling...
Map. ToCharArray( ),Map. getOrDefault(). Map. charAt()
Basic twelve style classes for duilib
Idea related issues
利尔达低代码数据大屏,铲平数据应用开发门槛
Ffmpeg streaming fails to update header with correct duration
Understanding of CUDA, cudnn and tensorrt
PMP从报考到拿证基本操作,了解PMP必看篇
How to suppress SiC MOSFET crosstalk?
Build an integrated kubernetes in Fedora
Construire le premier réseau neuronal avec pytorch et optimiser
叠加阶梯图和线图及合并线图和针状图
整数划分
Kubernetes notes and the latest k3s installation introduction