关联漏洞
标题:
Drupal 安全漏洞
(CVE-2024-45440)
描述:Drupal是Drupal社区的一套使用PHP语言开发的开源内容管理系统。 Drupal 11.x-dev版本存在安全漏洞,该漏洞源于core/authorize.php文件中的全路径泄露问题,导致全路径信息被披露。
描述
Drupal CVE-2024-45440
介绍
# CVE-2024-45440
Drupal CVE-2024-45440
core/authorize.php in Drupal 11.x-dev allows Full Path Disclosure (even when error logging is None) if the value of hash_salt is file_get_contents of a file that does not exist.
# 使用
```
python CVE-2024-45440.py
```

# 靶场部署
settings.php将通过挂载的方式替换掉容器中的settings.php
替换settings.php后无法进行安装,但直接访问`http://127.0.0.1:8080/core/authorize.php`也能暴露出配置文件的完整路径
正常安装过程如下:
先将docker-ccompose.yml第15行的`- ./settings.php:/opt/drupal/web/sites/default/settings.php`注释掉,才能正常进行安装
启动docker容器
```
docker-compose up -d
```
选择语言

选择安装方式

设置数据库

其他选项默认
设置网站

其他选项默认,进行安装
接下来模拟开发人员更改/sites/default/settings.php 文件中第 268 行的 hash_salt 变量,我们关闭docker容器
```
docker-compose down
```
然后取消docker-ccompose.yml第15行的`- ./settings.php:/opt/drupal/web/sites/default/settings.php`注释,再次启动容器
```
docker-compose up -d
```
靶场设置完成
# 复现
访问`http://127.0.0.1:8080/core/authorize.php`

暴露出配置文件的完整路径
或者使用脚本
```
python CVE-2024-45440.py
```

文件快照
[4.0K] /data/pocs/77a90e3ac788083b3841314f00a4d064670c8d55
├── [2.9K] CVE-2024-45440.py
├── [ 572] docker-compose.yml
├── [2.0K] README.md
└── [ 35K] settings.php
0 directories, 4 files
备注
1. 建议优先通过来源进行访问。
2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。