vulhub - CH4INRULZ_v1.0.1 writeup

主機來源:www.vulnhub.com

下載鏈接:https://www.vulnhub.com/entry/ch4inrulz-101,247/


準備工作:

下載.ova文件,直接雙擊即可安裝成功

設置連接方式爲NAT,攻擊機器使用kali,也設置爲NAT。

發現IP

剛安裝的虛擬機並不知道IP地址,使用netdiscover發現IP。

簡介下netdiscover的用法:

-i 指定網卡

-r 指定地址範圍

root@kali:~# netdiscover -i eth0 -r 10.0.3.0/24

 Currently scanning: Finished!   |   Screen View: Unique Hosts                                              
                                                                                                            
 4 Captured ARP Req/Rep packets, from 4 hosts.   Total size: 240                                            
 _____________________________________________________________________________
   IP            At MAC Address     Count     Len  MAC Vendor / Hostname      
 -----------------------------------------------------------------------------
 10.0.3.1        00:50:56:c0:00:08      1      60  VMware, Inc.                                             
 10.0.3.2        00:50:56:ff:6c:8b      1      60  VMware, Inc.                                             
 10.0.3.130      00:0c:29:a7:4f:85      1      60  VMware, Inc.                                             
 10.0.3.254      00:50:56:e2:86:33      1      60  VMware, Inc.                                             

發現IP爲10.0.3.130。

端口發現

使用nmap進行端口掃描

root@kali:~# nmap -A -p- 10.0.3.130
Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-29 15:03 CST
Nmap scan report for 10.0.3.130
Host is up (0.00062s latency).
Not shown: 65531 closed ports
PORT     STATE SERVICE VERSION
21/tcp   open  ftp     vsftpd 2.3.5
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
| ftp-syst: 
|   STAT: 
| FTP server status:
|      Connected to 10.0.3.198
|      Logged in as ftp
|      TYPE: ASCII
|      No session bandwidth limit
|      Session timeout in seconds is 300
|      Control connection is plain text
|      Data connections will be plain text
|      At session startup, client count was 4
|      vsFTPd 2.3.5 - secure, fast, stable
|_End of status
22/tcp   open  ssh     OpenSSH 5.9p1 Debian 5ubuntu1.10 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   1024 d4:f8:c1:55:92:75:93:f7:7b:65:dd:2b:94:e8:bb:47 (DSA)
|   2048 3d:24:ea:4f:a2:2a:ca:63:b7:f4:27:0f:d9:17:03:22 (RSA)
|_  256 e2:54:a7:c7:ef:aa:8c:15:61:20:bd:aa:72:c0:17:88 (ECDSA)
80/tcp   open  http    Apache httpd 2.2.22 ((Ubuntu))
|_http-server-header: Apache/2.2.22 (Ubuntu)
|_http-title: FRANK's Website | Under development
8011/tcp open  http    Apache httpd 2.2.22 ((Ubuntu))
|_http-server-header: Apache/2.2.22 (Ubuntu)
|_http-title: Site doesn't have a title (text/html).
MAC Address: 00:0C:29:A7:4F:85 (VMware)
Device type: general purpose
Running: Linux 2.6.X
OS CPE: cpe:/o:linux:linux_kernel:2.6
OS details: Linux 2.6.19 - 2.6.36
Network Distance: 1 hop
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel

TRACEROUTE
HOP RTT     ADDRESS
1   0.62 ms 10.0.3.130

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 45.40 seconds

探測發現21、22、80、8011端口開啓,逐一排查。

 端口21:

發現21端口可以匿名登錄。我們登錄進行查看。

沒有什麼有價值的信息。

端口8011:

8011是http服務,我們對端口8011使用dirb進行目錄爆破。

對掃描結果進行訪問測試。

發現api下有提示

挨個訪問,知道files_api.php,纔出現提示。

我們加上file參數,進行測試。

這裏有攔截,說明這裏應該是可以利用的。

我們採用post方式提交參數。

找目錄

端口80:

http服務,同樣我們先進行目錄爆破。

發現很多目錄,重點發現需要密碼驗證的目錄。

補充一下,狀態碼401:請求要求身份驗證。 對於需要登錄的網頁,服務器可能返回此響應。

訪問此目錄

提到了uploader目錄,我們訪問此目錄。

找密碼

需要登錄,我們去尋找密碼。

使用nikto對網站進行掃描。

提示有兩個文件:index.html和index.html.bak

下載此bak文件。

讀文件:

可以看到用戶名密碼:frank:$apr1$1oIGDEDK$/aVFPluYt56UvslZMBDoC0

或者執行命令:

對上面的賬號進行暴力猜解,使用john the rapper。

使用john爆破密碼,John是爆破文件,先將密碼寫入文件,在進行破解。

我們現在有了用戶名密碼:frank:frank!!!

使用密碼登錄development目錄。

找上傳點

找到關鍵詞uploader,嘗試作爲路徑訪問。

 看到這裏是可以上傳文件的。我們嘗試上傳。

發現只可以上傳圖片格式的文件。

我們上傳一個圖片馬,使用一個kali官方的反彈shell:

shell:/usr/share/webshells/php/php-reverse-shell.php

修改文件頭爲GIF98。

修改文件內容,此處設置自己的ip地址和端口。

修改文件後綴爲gif。

開始上傳。

上傳成功。

找上傳路徑

但我們沒有上傳地址。

根據經驗,一般網站都在/var/www/html目錄下。

根據測試發現80端口的網站在/var/www/目錄下。

我們有個可以讀文件的地方,試一下。

避免php內容被解析,通過php編碼流可以實現base64編碼,編碼後解析器就無法識別了。

 curl -d "file=php://filter/convert.base64-encode/resource=/var/www/development/uploader/upload.php" "http://10.0.3.130:8011/api/files_api.php"

 我們把這串字符放到burpsuite中進行解碼。(在哪解都行,開心就好)

我們看到了上傳目錄:FRANKuploads/

http://10.0.3.130/development/uploader/FRANKuploads/

反彈getshell

使用msf或者nc設置監聽4444端口。

新窗口訪問:

喜得shell

提權

查看內核版本

 搜索漏洞

不能用,我們找高一點版本的

 經測試/usr/share/exploitdb/exploits/linux/local/15285.c可用

copy到當前目錄上來

避免發生意外,在自己的機器上進行編譯

在kali上設置簡單的HTTP服務器

在靶機上下載此文件:

沒有權限,換個目錄再執行

成功

修改權限並執行此文件

成功

收官。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章