DC系列靶机(一)
DC系列靶機(一)
- DC系列靶機(一)
- 1. 實驗環境
- 2. 實驗過程
- 2.1 主機發現
- 2.2 端口掃描
- 2.3 開始滲透測試
- 2.3.1 嘗試利用80端口
- 2.3.2 嘗試搜索框架漏洞
- 2.3.3 getshell后再次收集信息
- 2.3.4 登錄數據庫并進行查詢
- 2.3.5 返回web頁面嘗試登錄
- 2.3.6 查找特殊權限用戶
 
- 2.4 提權
- 2.4.1 SUID提權
- 2.4.2 具體操作
 
 
- 3. 實驗總結
 
DC系列靶機(一)
1. 實驗環境
Kali Linux:192.168.253.129
 DC-1靶機:未知
 本地主機:win10
 
2. 實驗過程
2.1 主機發現
netdiscover -i eth0 -r 192.168.253.0/24其中: -i 指定網卡 ; -r 指定網段。
 
其中:-l 指從網絡接口配置生成地址
 
2.2 端口掃描
masscan --rate==10000 -p 0-65535 192.168.253.133 nmap -sV -O -T4 -p 22,111,80,42850 192.168.253.133 nmap -sV -O -T4 -A -p 22,111,80,42850 192.168.253.133- 其中:-T4指定掃描過程中使用的時序(分為0-5等級);
- -sV掃描版本的信息和開啟的服務;
- 也可以選擇帶-A參數,詳細掃描開放端口的具體服務;
- Masscan掃描速度快,為了防止漏掃,可以多掃描幾次;
- 與masscan相比,namp更詳細,但是速度較慢(可以通過masscan快速掃描,再使用nmap掃描具體開放的端口)
2.3 開始滲透測試
2.3.1 嘗試利用80端口
訪問web頁面
 
 Wappalyzer 是一款強大的網站技術棧嗅探工具。利用Wappalyzer 可以快速識別一個網站用到的前后端技術框架、運行容器、腳本庫等。
 
 kali中的Dirb工具是用于web網站目錄爆破
 
 在web滲透的過程中robots.txt是一個很重要的目錄,可以幫助我們查看網站的敏感路徑、敏感文件等,從中可以搜集到用于滲透的信息。
 
 嘗試訪問以上這些網絡旁站和文件
 訪問結果:第一種是版本信息、第二種是404頁面、第三種是需要進行身份驗證才能訪問。
2.3.2 嘗試搜索框架漏洞
根據Wappalyzer掃描結果可以發現該服務器是由drupal框架搭建的,因此可以嘗試搜索該框架的漏洞。
 Metasploit是一個免費的、可下載的框架,通過它可以很容易地獲取、開發并對計算機軟件漏洞實施攻擊。
 它本身附帶數百個已知軟件漏洞的專業級漏洞攻擊工具。
 
 利用搜索到的漏洞進行攻擊
 
 
 嘗試getshell:
 
 利用python提升成一個吻交互式的shell:
 成功getshell !!!
2.3.3 getshell后再次收集信息
 這里成功發現flag1.txt !!!
 嘗試打開該文件
 
 打開該文件以后發現一句提示:每一個好的CMS框架都會有一個配置文件
 搜索一下drupal框架的配置文件在哪里?
 通過百度搜索到drupal框架的配置文件為settings.php
 此時嘗試搜索settings.php文件的目錄
 嘗試打開settings.php文件
 
 這里成功發現flag2 !!!
 并且得到提示:暴力破解和字典攻擊并不是獲得訪問權限的唯一方法(您將需要訪問權限)。你能用這些證書做什么?
 除此之外,還發現了一個數據庫,以及登錄數據的一對用戶名和密碼:dbuser/R0ck3t
 
2.3.4 登錄數據庫并進行查詢
 查看數據庫中的信息:
 
 show tables; 后發現一個數據表:users
 然后查看該數據表:發現三個中的信息uid、name、pass
 
 利用聯合查詢查看
 
 這里發現了兩對用戶名和密碼,由于密碼進行了加密,所以我們可以嘗試更換密碼
 這就需要我們了解drupal框架所采用的加密方式
 經過百度查詢后:Drupal的安裝目錄中的scripts目錄下,有一些Drupal開發者準備好的PHP腳本,可以執行一些高級操作。其中有一個腳本名為:password-hash.sh,它的功能是傳入一個密碼(字符串),即返回加密后的密碼字符串。
 
 利用password-hash.sh得到123的加密結果,嘗試將數據庫中兩個用戶的密碼進行修改
 
2.3.5 返回web頁面嘗試登錄
利用admin/123成功登錄,并尋找有用的信息
 
 
 
 這里成功找到flag3 !!!
 并得到一句提示:特殊的權限可以幫助你發現隱藏的內容。
2.3.6 查找特殊權限用戶
/etc/passwd文件中存儲了系統中所有用戶的基本信息,并且所有用戶都可以對此文件執行讀操作。
 
 發現一個特殊的用戶flag4,并且其該用戶信息儲存在/home/flag4中
 嘗試訪問/home/flag4
 
 這里成功找到flag4 !!!
 并且得到一句提示:需要我們找到root目錄下的flag
 因此這里需要進行提權!
2.4 提權
2.4.1 SUID提權
什么是SUID?
 SUID:Set User ID 是一種權限類型,允許用戶使用指定用戶的權限執行文件。那些有suid權限的文件以最高的權限運行。假設我們以非root用戶訪問目標系統,并且我們發現二進制文件啟用了suid位,那么這些文件、程序、命令可以以root權限運行,SUID的目的就是:讓沒有相應權限的用戶運行這個程序時,可以訪問沒有權限訪問的資料。
 SUID提權的利用
其中: -perm:按照文件權限來查找
 已知的可以用來提權的Linux可執行性文件列表如下:
 nmap、vim、find、bash、more、less、nano、cp
2.4.2 具體操作
搜索可執行文件,發現可以用來提權的可執行文件find
 
 然后創建一個新的文件,利用find命令進行提權
 
 這里成功提權,訪問root目錄下的文件
 
 這里成功得到最終flag !!!
3. 實驗總結
對Suid提權有了更深的理解:SUID是Linux的一種權限機制,具有這種權限的文件會在其執行時,使調用者暫時獲得該文件擁有者的權限。如果擁有SUID權限,那么就可以利用系統中的二進制文件和工具來進行root提權。
總結
 
                            
                        - 上一篇: 写给初级程序员的十点提升建议
- 下一篇: html的编程语言 背景色,易语言编程
