ref: https://sysdig.com/blog/dockerfile-best-practices/
如果你常用到容器化、微服務架構,這些輕量化的架構當碰到問題時,背後的資安事件調查、報告、修復卻是影響甚鉅。然而,這些影響都可以透過「把安全意識擺在開發階段 (shifting left security)」來降低風險,而這篇文章就會講述 Dockerfile 的最佳實作手段有哪一些。
首先,我們會從幾個大面向來說明各種控制安全風險的細節,像是權限控管、降低攻擊層面、預防機敏資料洩漏,以及在發布 container image 時的注意事項。而你需要特別注意的是,其實 Dockerfile 也只是算是開發階段的一部份,所以這邊能提醒到的內容都屬於部署前(特別是開發階段)的準備。以下共提及 20 個你可以注意的重點,但因為篇幅較長,筆者將選出較重要的幾個來談談。
讓我們從「權限控管」說起:
Rootless container
根據報告結果顯示,有超過 58% 的 image 都是用 root 作為執行服務的使用者,所以在此也會建議透過 USER 參數來設定容器的預設使用者,同時,也可以利用執行環境/架構的設定來避免容器的預設使用者是 root。
Make executables owned by root and not writable
服務的 binary file 應該避免被任何人修改,容器的預設使用者只需要執行服務的權限,而不是擁有權。
至於「減少攻擊面」的部分:
Multistage builds小
在 image 的建立,可以透過 multistage build 來建立很多層 container,例如在第一層安裝編譯所需的套件,而第二層則只需安裝 runtime 所需的套件(如 openssl 等),再複製第一層所編譯出來的執行檔就可以了。其餘的因開發/編譯所安裝的套件皆不需要放在最後的 image,這樣同時也可以把 image 的大小縮小。
Distroless & Truested image
採用最小/最輕量化的 base image 來作為你打造 image 的基礎,同時使用可信任來源的 image,避免不小心在未知的情況引入好幾個潛在的安全威脅。(在原文中,sysdig 也使用了自身開發的工具來檢測 image 是否有安全問題,如果有需要也能參考看看)
而再來關於「機敏資訊」的部分:
Copy
當你在從你的開發環境複製檔案到 image 當中時,需要非常小心,因為你很可能一不小心就把你的密碼、開發環境的 token、API key 等資訊複製進去了。而且不要以為把 container 裡面的檔案刪掉就沒事了,別忘了 container image 是一層一層堆疊起來的,就算刪掉了,還是能在前面的 layer 裡面找到。
但如果還是有需要用到這些機敏資料,也可以考慮使用環境變數(docker run -e 引入),或是 Docker secret、Kubernetes secret 也能夠幫你引入這些參數。如果是設定檔的話,則可以用 mount 的方式來掛載到你的 container 裡面。
總而言之,你的 image 裡面不該有任何機敏資料、設定檔,開發服務時讓服務在 runtime 的時候可以接受來自環境變數的參數才是相對安全的。
其他的部分:
其實文章當中還有提到很多製作 image 的注意事項,像是在 deployment 階段,可能你部署的 latest 與實際的 latest 因時間差而不同。又或是在 image 裡面加上 health check,也才能做到狀況監測。
在容器化服務的時代,開發者不僅需要具備撰寫開發程式的能力,也要對於虛擬化環境有足夠的理解,否則,在對架構不熟的情況就將服務部署上去,或把 image 推送到公開的 registry,都可能造成重要的資料外洩與潛在的資安危機。
「binary image」的推薦目錄:
- 關於binary image 在 矽谷牛的耕田筆記 Facebook 的精選貼文
- 關於binary image 在 Sydney Sie Facebook 的最讚貼文
- 關於binary image 在 Gucci Facebook 的最佳貼文
- 關於binary image 在 What is a pixel? What is a binary image? what is a black and ... 的評價
- 關於binary image 在 Getting pixel indices between two points on a binary image 的評價
- 關於binary image 在 Azure/sonic-buildimage: Scripts which perform an installable ... 的評價
- 關於binary image 在 How do you make a binary image in Photoshop? - Graphic ... 的評價
binary image 在 Sydney Sie Facebook 的最讚貼文
|Ze and Zir|
今年受邀參與韓國 Asia Culture Center 的展覽《Solidarity as Spore》,主題為各種形式的愛(Love: in all its forms and inclusivity) 。2019年,台灣成為亞洲第一個同性婚姻合法化的國家,同一年,Ze 與 Zir 在 2019 年正式收錄於牛津英語辭典,將特指單一性別的 He or she 取代成中性的代名詞。作品也類比成華文的「也」,取下「他」或者「她」的性別部首符號,作為這次創作的核心理念。
-
二元社會性別是所有性別問題的根源,當人們選擇成為伴侶、選擇衣著、選擇以一種特定形象生活時,捨棄掉性別的標籤就可以超脫目前所有的問題,我們不需要透過刻板印象來建立自我價值,自己可以隨意建立個人識別象徵而不需要參考模範,滿足任何有限的想像空間。
-
作品呈現三幅動態視覺系列稿,同時在垂直並排的三面螢幕重複播放,它們各自擁有不同的主題。打破性別刻板印象,沒有男孩應該要做什麼,女孩應該要做什麼,呈現更自由的性別氣質與性向。女人不用一定要穿高跟鞋,男人也可以喜歡化妝。
-
最後,一個彩色的玻璃球穿梭在各個畫面中,打破界線劃破三個螢幕的彩色玻璃球,劃破時間與空間。
|Sydney Sie / Zen Yun Zon,
|Ze and Zir, 2020. Three-channel
|video, color, silent, 2 min.
|Commissioned by Asia Culture
|Center; courtesy of the artist.
|Special Thanks: 親愛的 Aaron Nieh (✾♛‿♛) 聶永真 Aaron Nieh / Elise Chen
————————————————
If there were no genders, it should not cause any troubles to say “ze has loved cars since childhood”, “ze dreams to become a ballet dancer”, or “ze loves zir deeply and wants to spend zir life with zir”.
Gender binary is the source of all gender troubles. If people could choose to become partners, how to dress and how to present themselves in life without gender labels, then we no longer need to establish self-value by conforming to gender stereotypes. An individual could build a personal image freely without referring to gender roles and instead according to their unlimited imagination.
Taiwan became the first country in Asia to legalize same-sex marriage in 2019. In the same year, the Oxford English Dictionary update included gender-neutral third-person pronouns Ze and Zir. With a similar spirit, we experiment with removing the radicals of Chinese characters “他(he)”/“她(she)”, reinventing the character “也” as the potential gender-neutral pronoun and using it as the core concept of this creative project.
The work consists of three moving posters, which will be displayed in loop on three aligned, vertical screens, each with a different theme. We incorporate elements of gender stereotypes in these images while seeking to break the traditional gender framework through a visual dynamic, as well as to discover more freedom in gender expression. There is no “should”; women don’t need to wear heels and men can enjoy putting on makeup.
Lastly, a colorful glass ball travels through the images on the screens, metaphorically crossing the boundaries of time and space.
————————————————
● Solidarity as Spore
● Dates: May 14–October 25, 2020 (opening May 13)
● Venue: Asia Culture Center (https://new.acc.go.kr), Gwangju, South Korea
● Organized by: Asia Culture Institute (http://aci-k.kr) and Asia Culture Canter
● Artistic director: Kim Sung Won
● Contributing curators: Bojana Piškur, Vali Mahlouji, Museo de la Solidaridad
Salvador Allende, Sulki and Min, Goto Tetsuya, Kim Seong Hee, and Seo Dongjin
● Overarching theme: history of Non-Aligned Movement and its relevance to the
contemporary artistic practice in Asia
Section Participants
● Bae Minkee (Seoul, South Korea)
● Gideon Jamie (Singapore)
● So Hashizume (Tokyo, Japan)
● Saki Ho (Hong Kong, China)
● Hong Eunjoo (Seoul, South Korea)
● Sueh Li (Kuala Lumpur, Malaysia)
● Scarlett Xin Meng (Shanghai, China)
● Rikako Nagashima (Tokyo, Japan)
● Nguyen Giang (Ho Chi Minh City, Vietnam)
● Januar Rianto (Jakarta, Indonesia)
● Shin In-ah (Seoul, South Korea)
● Sydney Sie and Zen Yun Zon (Taipei, Taiwan)
● Yui Takada (Tokyo, Japan)
binary image 在 Gucci Facebook 的最佳貼文
In a self-portrait for Gucci The Ritual, Hannah Vincent holds the new Gucci Jackie 1961 bag featuring a long removable strap. Designed by Alessandro Michele Jackie 1961 flies above traditional accessory classifications with its non-binary attitude, versatile size and flexible styling possibilities. The style featured in this image is now available on.gucci.com/GucciJackie1961_ together with a selection of leather styles available for pre-order.
binary image 在 Azure/sonic-buildimage: Scripts which perform an installable ... 的推薦與評價
Scripts which perform an installable binary image build for SONiC - GitHub - Azure/sonic-buildimage: Scripts which perform an installable binary image build ... ... <看更多>
binary image 在 What is a pixel? What is a binary image? what is a black and ... 的推薦與評價
... <看更多>