Fastjson 1.2.47 远程命令执行漏洞
1、靶机环境安装
1.1、虚机机linux环境参数
1、操作系统:CentOS Linux release 7.4.1708 (Core)
2、IP:192.168.127.132
 
1.1、docker与docker compose安装
1.2、下载https://github.com/vulhub/vulhub/tree/master/fastjson/1.2.47-rce到本地临时路径
https://github.com/vulhub/vulhub/tree/master/fastjson/1.2.47-rce
 
[root@localhost docker]# pwd
/usr/local/src/docker
[root@localhost docker]# ls
docker-compose.yml
[root@localhost docker]# cat docker-compose.yml 
version: '2'
services:
 web:
   image: vulhub/fastjson:1.2.45
   ports:
    - "8090:8090"
 
1.3、启动靶机服务
docker-compose up -d
 
 
[root@localhost docker]# docker images
REPOSITORY        TAG       IMAGE ID       CREATED       SIZE
vulhub/fastjson   1.2.45    9423bd2fcac7   4 years ago   326MB
[root@localhost docker]# docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED       STATUS       PORTS                                       NAMES
98803895b2de   vulhub/fastjson:1.2.45   "java -Dserver.addre…"   3 hours ago   Up 3 hours   0.0.0.0:8090->8090/tcp, :::8090->8090/tcp   docker-web-1
 
 
1、浏览器访问http://ip:8090
2、返回如下响应,说明服务启动正常
{
    "age": 25,
    "name": "Bob"
}
 
2、dnslog环境配置
2.1、在windows宿主机运行dnslog-window
2.2、解压附件的dnslog-windows.zip,查看config.yaml配置文件
HTTP:
  port: 8000
  #{"token":"用户对应子域名"}
  user: { "admin": "dnslog" }
  consoleDisable: false
Dns:
  domain: demo.com
 
-  
port是dnslog运行后的web监听端口
 -  
admin是访问时需要录入的token
 
 
    
 
-  
dnslog:二级域名
 -  
domain:主域名
 
2.3、访问界面http://localhost:8000/
 
    
 
2.4、验证
-  
本机是window10系统
 -  
配置dns解析服务器为本机
 


ping 666.dnslog.demo.com
 
 

3、漏洞检测验证(dnslog方式)
3.1、配置靶机dns解析服务器,指向运行dnslog的宿主机192.168.127.1
-  
进入靶机容器后,发现没有安装vi等编辑工具,只好用echo进行文件修改
 -  
修改/etc/resolv.conf(linux环境中域名解析配置)
 
echo 'nameserver 192.168.127.1'  > resolv.conf
 
 
ping 666.dnslog.demo.com
 
3.2、用postman或curl访问靶机

3.3、同样,在dnslog查看到记录说明靶机漏洞存在,利用成功
3.4、其它展开利用的方式常见rmi,ldap利用,具体可自行研究展开;
4、源码漏洞原因分析
4.1、跟踪验证过程具体参考如下文章
https://www.anquanke.com/post/id/181874
 
4.2、intelij idea环境调试fastjson环境配置



5、附件下载
Fastjson-less1-2-47远程命令执行.rar (访问密码: 1150)


















