云安全—Dashboard 攻击面

0x00 前言

众所周知,如果只是一味的REST接口或者命令行话的操作方式,就会变相的提高操作门款,并且不会有很好的呈现方式,所以就有了web ui的方式,也就是Dashboar面板,本篇主要讨论一下关于Dashboar面板的概述和攻击面。

0x01 dashboard

dashboard是kubernetes集群的Web UI,用户可以通过Dashboard来操作k8s的内容,就和kubectl的操作权限一样。说的直白一点就是,谁能操作dashboard谁就能控制K8S。

dashboar默认的端口是8001,在1.10.1版本之后,默认禁用了登录跳过的按钮

0x02 dashboard

实际上dashboard的攻击面非常简单,有两个,一个就是不能公网开放端口,还有一个就是不能开放未授权访问。

在arg参数配置:- --enable-skip-login

在这里插入图片描述

2.未授权

首先查看一下端口kubectl get svc -n kubernetes-dashboard,然后访问对应的https://id:port

在访问后,会有一个跳过,如下图所示:
在这里插入图片描述查看资源
在这里插入图片描述
操作
在这里插入图片描述

补充知识

docker 优势

Docker 的优势包括:

  1. 简化开发流程:Docker 提供了一个轻量级的容器化解决方案,使得应用程序的开发和部署过程更加简单、快捷和可靠。

  2. 更容易迁移和部署:Docker 容器可以在不同的操作系统和云平台上运行,使得应用程序的迁移和部署变得更加容易。

  3. 节省资源:Docker 容器共享内核和系统资源,使得系统资源的利用率更高。

  4. 更安全:Docker 容器提供了隔离和安全性,使得应用程序在容器内运行时更加安全。

  5. 更具可扩展性:Docker 容器可以通过扩展集群规模来提高应用程序的可用性和可伸缩性。

  6. 开源社区支持:Docker 是一个非常活跃的开源社区,提供了丰富的资源和支持,使得开发者可以更加便捷地使用它。

k8s的优势

Kubernetes(简称K8s)是一个流行的开源容器编排平台,它的优势包括:

  1. 自动化容器管理:Kubernetes通过自动化容器部署、伸缩、故障恢复等操作,简化了应用程序的部署和管理过程,减少了手动操作的出错率。

  2. 跨平台支持:Kubernetes支持多种容器运行时,如Docker和rkt,也支持多个云供应商,如AWS,Azure等,从而使应用程序的部署更加灵活和可移植。

  3. 可靠性和弹性:Kubernetes提供了多点故障恢复和自我修复机制,如果一个容器失败,Kubernetes会自动重启或创建替代的容器,从而确保应用程序的高可用性。

  4. 自定义扩展:Kubernetes提供了许多API和插件,应用程序可以根据需要进行自定义扩展,以满足特定的需求。

  5. 社区支持:Kubernetes具有广泛的社区支持,可以获得社区成员的建议和帮助,从而提高了应用程序的生产力和质量。

k8s 和docker

Kubernetes (k8s) 并没有放弃 Docker,而是放弃了 Docker 作为其默认的容器运行时(CRI)。这是因为在 Kubernetes 的早期版本中,Docker 是唯一可用的容器运行时,因此 Kubernetes 使用了 Docker 的 API 作为其 CRI。然而,随着时间的推移,其他容器运行时,如CRI-O、containerd 和 frakti 等,逐渐成为了 Kubernetes 生态系统的一部分,并且这些容器运行时与 Kubernetes 更紧密地集成。此外,Docker 提供的特性在 Kubernetes 中也不是必需的,并且 Kubernetes 用户需要的特性可以通过其他容器运行时实现。因此,Kubernetes 并没有放弃 Docker,而是通过支持多个容器运行时来提供更好的灵活性和选择性。

Dashboard 特点

Dashboard(仪表板)的特点包括:

  1. 数据可视化:Dashboard 可以将数据可视化,最常见的方式是图表和表格。

  2. 实时更新:Dashboard 显示的数据通常是实时更新的,可以及时反映业务或项目的最新状态。

  3. 简洁明了:Dashboard 设计应该尽可能简洁明了,避免信息过载和混乱,使用户能够快速理解数据。

  4. 交互性:Dashboard 应该具有一定的交互性,用户可以在不同的维度和视角上探索和分析数据。

  5. 个性化定制:Dashboard 应该具有一定的个性化定制能力,用户可以根据自己的需求定制自己的仪表板。

  6. 多终端支持:Dashboard 应该支持多种终端,例如桌面、手机、平板等,让用户可以随时随地查看数据。

K8S Dashboard 的安全性

Kubernetes Dashboard 是一个集中式的管理界面,可以让用户轻松管理 Kubernetes 集群。在默认情况下,Kubernetes Dashboard 运行的是非安全的服务,没有任何身份验证机制,这可能会导致安全风险。为了增加 Kubernetes Dashboard 的安全性,可以采取以下的安全措施:

  1. 创建和使用证书:使用 HTTPS 协议来保护 Dashboard 的通信流量,并使用证书来加密和验证通信流量。

  2. 启用身份验证:开启基于 Token 的身份认证,只有经过身份认证的用户才能访问 Kubernetes Dashboard。

  3. 启用授权:启用 RBAC(基于角色的访问控制),以确保只有经过授权的用户才能访问不同的 Dashboard 功能和资源。

  4. 限制访问:将 Kubernetes Dashboard 与 Kubernetes API Server 分开部署,可以限制从外部访问 Kubernetes API Server 的风险,并加强访问控制。

  5. 更新 Kubernetes Dashboard 版本:及时升级到最新版本的 Kubernetes Dashboard,以避免可能存在的漏洞和安全漏洞。

以上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/163996.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

虹科示波器 | 汽车免拆检测 | 2017款长安福特翼虎车发动机故障灯异常点亮

一、故障现象 一辆2017款长安福特翼虎车,搭载CAF488WQ9发动机,累计行驶里程约为8.9万km。该车因发动机故障灯异常点亮在其他维修厂检修,维修人员用故障检测仪检测,提示气缸3失火,调换火花塞、点火线圈及喷油器&#xf…

图论——并查集

参考内容: 图论——并查集(详细版) 并查集(Disjoint-set)是一种精巧的树形数据结构,它主要用于处理一些不相交集合的合并及查询问题。一些常见用途,比如求联通子图、求最小生成树的 Kruskal 算法和求最近公共祖先&…

如何实现生产质量精细化管理?

导 读 ( 文/ 1528 ) 在现代制造业中,实现生产质量的精细化管理对企业的竞争力至关重要。本文将介绍三个关键步骤,包括建立全面质量管理体系、采用数据驱动的质量监控和实时反馈机制,以及持续改进和员工培训,帮助企业实现生产质量的…

文献阅读 - JADE:具有可选外部存档的自适应差分进化

文章目录 标题摘要关键字结论研究背景I. INTRODUCTION 常用基础理论知识II. BASIC OPERATIONS OF DEIII. ADAPTIVE DE ALGORITHMSA. DESAPB. FADEC. SaDED. jDE 研究内容、成果IV. JADEA. DE/Current-to-pbestB. Parameter AdaptationC. Explanations of the Parameter Adaptat…

高性能三防工业平板电脑 防摔防爆电容屏工控平板

HT1000是一款高性能工业三防平板,10.1英寸超清大屏,厚度仅14.9mm,超薄机身,可轻松插入袋中,方便携带,搭载8核2.0GHz高性能CPU,行业领先的Android 11.0,设备性能大幅提升,…

VScode连接Xshell 并解决【过程试图写入的管道不存在】报错

一.下载vscode 国内镜像: https://vscode.cdn.azure.cn/stable/6c3e3dba23e8fadc360aed75ce363ba185c49794/VSCodeUserSetup-x64-1.81.1.exe二.打开vscode在扩展搜索SSH并安装 三.添加主机 按F1选择添加新的ssh主机 按格式输入后在左边会出现电视的图标 之后输入…

不同对话分支的生成展示

第一个分支 第二个分支 生成过程 苏州有几个区 curl -H content-type: application/json -H Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTk1OTM5MzYsInVzZXJfaWQiOiI2In0.MkYG3nBcR-ROHvARpEfnWiw-Jsplap73qEeDn-L7v8I -d {"model"…

Vue的数据来源详解

目录 前言 在页面中动态展示数据 哪个配置项可以给模板语句提供数据 如何将data中的数据插入到模板语句中 如果data中的key:value对,value为对象时,如何取出其中的数据插入到模板语句中 如果data中的key:value对,value为数组时&#xff…

centos 7部署Mysql8.0主从

Mysql官网中关于部署主从的网址 环境准备: 搭建虚拟机和安装Mysql之前的文章中已经涉及,在此不再赘述。 主从IPMysql账号密码主192.168.213.4root/Root1234!从192.168.213.5root/Root1234! 1、主数据库设置 配置my.cnf 一般存放于/etc/。 主从配…

LangChain之关于RetrievalQA input_variables 的定义与使用

最近在使用LangChain来做一个LLMs和KBs结合的小Demo玩玩,也就是RAG(Retrieval Augmented Generation)。 这部分的内容其实在LangChain的官网已经给出了流程图。 我这里就直接偷懒了,准备对Webui的项目进行复刻练习,那么…

web3 dapp React项目引入 antd 对 balance 用户token信息组件进行样式改造

好 上文 web3 React dapp中编写balance组件从redux取出并展示用户资产 我们简单处理了用户资产的展示 那么 我们继续 先启动 ganache 环境 终端输入 ganache -d然后 打开我们的项目 将合约发布到区块链上 truffle migrate --reset然后 我们启动项目 确认一切正常 还原到上文…

MCU常见通信总线串讲(一)—— UART和USART

🙌秋名山码民的主页 😂oi退役选手,Java、大数据、单片机、IoT均有所涉猎,热爱技术,技术无罪 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 获取源码,添加WX 目录 前言一…