<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    cicd-goat:一個包含漏洞的CICD安全學習靶場環境

    一顆小胡椒2022-11-24 09:33:33

    關于cicd-goat

    cicd-goat是一個故意包含大量漏洞的CI/CD安全學習靶場環境,廣大研究人員可以使用cicd-goat來學習關于CI/CD安全的相關內容,并通過各種挑戰并拿到Flag來更好地掌握針對CI/CD管道的安全滲透技術。

    cicd-goat項目允許允許工程師和安全從業人員通過一組包含是十個項目的挑戰來學習和實踐CI/CD安全,這些挑戰是在真實、全面的CI/CD環境中實施的。這些場景具有不同的難度級別,每個場景側重于一個主要攻擊向量。這些挑戰包括10大CI/CD安全風險,包括流量控制機制不足、PPE(管道執行投毒)、依賴鏈濫用、PBAC(基于管道的訪問控制)等。

    該項目的環境基于Docker容器實現,并且可以在本地運行,這些容器包括:

    1、Gitea
    2、Jenkins
    3、Jenkins agent
    4、LocalStack
    5、Prod
    6、CTFd
    7、GitLab
    8、GitLab runner
    9、Docker in Docker

    這些映像能夠創建功能齊全的管道,并實現互連。

    工具下載&運行

    Linux&macOS

    curl -o cicd-goat/docker-compose.yaml --create-dirs https://raw.githubusercontent.com/cider-security-research/cicd-goat/main/docker-compose.yaml
    cd cicd-goat && docker-compose up -d
    

    注意:GitLab當前不支持配備有蘋果芯片的macOS設備。

    Windows(PowerShell)

    mkdir cicd-goat; cd cicd-goat
    curl -o docker-compose.yaml https://raw.githubusercontent.com/cider-security-research/cicd-goat/main/docker-compose.yaml
    get-content docker-compose.yaml | %{$_ -replace "bridge","nat"}
    docker-compose up -d

    工具使用

    首先,在開啟容器之后,可能需要等待五分鐘左右的時間來讓容器完成配置。

    接下來,登錄http://localhost:8000來查看所有的挑戰:

    用戶名:alice
    密碼:alice

    開始滲透

    Jenkins:http://localhost:8080
    用戶名:alice
    密碼:alice
    Gitea http://localhost:3000
    用戶名:thealice
    密碼:thealice
    GitLab http://localhost:4000
    用戶名:alice
    密碼:alice1234

    最后,將你拿到的Flag提交進去,查看是否成功即可。

    自定義開發

    首先,使用下列命令將該項目源碼克隆至本地:

    git clone https://github.com/cider-security-research/cicd-goat.git
    

    然后重命名.git文件夾:

    ./rename.py git
    

    然后安裝測試需要用到的依賴組件:

    pip3 install pipenv==2022.8.30
    pipenv install --deploy
    

    運行開發環境并測試新增的挑戰項目:

    rm -rf tmp tmp-ctfd/
    cp -R ctfd/data/ tmp-ctfd/
    docker-compose -f docker-compose-dev.yaml up -d
    

    關閉環境,將挑戰重構:

    docker-compose -f docker-compose-dev.yaml down
    ./apply.sh # save CTFd changes
    docker-compose -f docker-compose-dev.yaml up -d --build
    

    運行測試:

    pytest tests/
    

    重命名.git文件夾并允許push:

    ./rename.py notgit
    

    最后,commit并push即可。

    許可證協議

    本項目的開發與發布遵循Apache-2.0開源許可證協議。

    項目地址

    cicd-goat:【GitHub傳送門

    參考資料

    https://www.cidersecurity.io/?utm_source=github&utm_medium=github_page&utm_campaign=ci%2fcd%20goat%20_060422
    https://www.cidersecurity.io/top-10-cicd-security-risks/?utm_source=github&utm_medium=github_page&utm_campaign=ci%2fcd%20goat_060422
    docker-compose
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    "我的心田本空無一物,你來之后萬物生長,你走之后,一片荒蕪"?--《隱入塵煙》一、前言最近有個朋友準備搭建一個CTF比賽靶場在學校搞一個CTF比賽,讓我幫他參考參考。說實話,自己也沒有整過,自己就先實驗唄,搜集了大量的資料最終是搞成了,就差朋友買個服務器,和域名掛上了,這期間經歷過了大量的報錯,因此,想記錄下來,為兄弟們指一條明道,避免出錯。
    一、Docker逃逸 1、docker daemon api未授權訪問 漏洞原理:在使用docker swarm的時候,節點上會開放一個TCP端口2375,綁定在0.0.0.0上,如果我們使用HTTP的方式訪問會返回404 利用思路:通過掛在宿主機的目錄,寫定時任務獲取SHELL,從而逃逸。
    在完成了這項針對 Linux 中多個受控制用戶空間的基礎性工作后,Linux 容器開始逐漸成形并最終發展成了現在的模樣。開源 Docker 社區致力于改進這類技術,并免費提供給所有用戶,使之獲益。除了運行容器之外,Docker 技術還具備其他多項功能,包括簡化用于構建容器、傳輸鏡像以及控制鏡像版本的流程。與此相反,Docker 技術鼓勵應用程序各自獨立運行其進程,并提供相應工具以實現這一功能。
    獨立的Docker Swarm1.2.3以上版本。舊版本的Portainer支持獨立Docker Swarm,而Portainer 1.17.0和更新版本不支持它。但是,對于一般需求,Portainer可能并不適合。此外,DockStation在Docker Hub上十分的受歡迎。未來,會重構成 Spring Cloud Alibaba 。
    本文介紹了 12 個優化 Docker 鏡像安全性的技巧。每個技巧都解釋了底層的攻擊載體,以及一個或多個緩解方法。這些技巧包括了避免泄露構建密鑰、以非 root 用戶身份運行,或如何確保使用最新的依賴和更新等。
    本文介紹了 12 個優化 Docker 鏡像安全性的技巧。每個技巧都解釋了底層的攻擊載體,以及一個或多個緩解方法。這些技巧包括了避免泄露構建密鑰、以非 root 用戶身份運行,或如何確保使用最新的依賴和更新等。
    你是否還在大量控制臺窗口中監控容器,還是對使用終端命令充滿熱情?而使用Docker的圖形用戶界面(GUI)工具,則可以更簡單的對容器進行管理,并提高效率。而且它們都是免費的。
    1Docker 遷移存儲目錄默認情況系統會將 Docker 容器存放在 /var/lib/docker 目錄下[問題起因]?今天通過監控系統,發現公司其中一臺服務器的磁盤快慢,隨即上去看了下,發現?由上述原因,我們都知道,在?中存儲的都是相關于容器的存儲,所以也不能隨便的將其刪除掉。設備進行擴容來達到相同的目的。的詳細參數,請點擊查看?但是需要注意的一點就是,盡量不要用軟鏈, 因為一些?容器編排系統不支持這樣做,比如我們所熟知的?發現容器啟動不了了
    主要介紹了容器技術的發展、以Docker為代表的容器技術生態以及容器技術的應用場景。
    一顆小胡椒
    暫無描述
      亚洲 欧美 自拍 唯美 另类