---
# System prepended metadata

title: "NCtfU - 3/11 (PWN \U0001F383) (A204)"
tags: [nctfu2021]

---

# NCtfU - 3/11 (PWN 🎃) (A204)
###### tags: `nctfu2021` 
[toc]
## 錄影連結

[Youtube](https://youtu.be/QzTkkI3s6WI)

## 會參加
* Onebone
* ppodds
* yen (要開會 不然好想聽🎃大神講解QQQ)
* racterub (remote)
* r888800009 (remote)
* JyunD
* maple3142 (快九點才能過去)
* lebr0nli
* Artis24106
* Ping (remote)
* 石頭
* idisused
* gordon
* charlie890414 (remote)

## 講者筆記


## 共筆

- 介紹 Container
    - Difference with VM
- Docker Core Tech
    - Namespace 
    - UnionFS
    - Cgroup
版本差異
### docker 1.2
- Client: 並非 Docker 核心而是 command line，用來與 docker server 進行互動
    - 三種發送方式
        - Unix Domain Socket (IPC)
        - fd (File Descriptor)
        - tcp
- Daemon: server + engine
    - Router 用來傳送給對應的 Handler 處理 Requests
    - engine 用於管理 jobs
- Registry:
    - 用於上下載 Images
    - DockerHub
- Image:
    - 壓縮過的 File System
    - Layer: 在 base image 上面會根據使用者的不同情況執行，每一行 dockerfile 的指令都是 Layer。
        - ![](https://i.imgur.com/xPlZp0X.png)
        - 過去的 kernel 因為 syscall 的限制因此只能 127 層 layers ，抱持兼容性因此也是 127 層
        - Union mount 用來把各個 layer 與 image 給 union 起來。
        - read-write layer: 為了紀錄檔案的變化，而不用修改到 read only
        - 紫色的部分是 read only
        - 越高層 priority 越高
        - 檢視 layout: 可以使用工具 [dive](https://github.com/wagoodman/dive) 或使用原生的 `docker history --no-trunc <image>`
- Driver
    - Graph Driver: manage image
        - AUFS (Advanced Multi-Layered Unification Filesystem): 
        - OverlayFS: overlay2 的機制與 AUFS 類似都是透過 union mount，效能比 AUFS 快一點
            - upper dominant 顯性 vs lower recessive 隱性
            - overlay 中的 union mount 是一層層的 hard link，吃掉 i-node 的資源
            - overlay2 全部做 union
    - Exec Driver
    - Network Driver: manage network of containers
    - libcontainer 作為 kernel 與 driver 的橋樑，方便進行平台的移植，而在 docker 1.11 之後被拆放到其他結構之下
    - container: 最終目標，隔離的環境
- Isolated Environment
    - mnt
    - uts
    - ipc
    - user
    - pid
    - net
    - cgroup
        - Resiyrce limiting
        - Prioritization
        - Accounting
        - Control
        - **可能 infomation leak**
### 1.11 之後

Microservice 




### 題目 JustCTF 2020 Docker
[WriteUp](https://blog.brycec.me/posts/justctf2020_writeups/#d0cker)
可以從container 進行 infomation leak
1. /proc/cpuinfo
2. /proc /sys 比較敏感

 







