久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Kubernetes中CVE

171次閱讀
沒有評論

共計 1870 個字符,預計需要花費 5 分鐘才能閱讀完成。

這篇文章將為大家詳細講解有關 Kubernetes 中 CVE-2019-11244 漏洞怎么修復,丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

背景知識

為了能更好的理解這個漏洞,需要一些關于 Linux 文件權限的基礎知識。

也許你經常使用 chmod 命令來為某個文件設置權限,比如給某個文件設置權限:chmod 755 xxx。這里 755 為十進制數字分別代表文件 Owner 權限、文件 Owner 同組用戶權限和其他用戶權限,如下圖所示:

Kubernetes 中 CVE-2019-11244 漏洞怎么修復

在 Linux 下,使用 ls 命令可以看到文件的權限,如下圖所示:

Kubernetes 中 CVE-2019-11244 漏洞怎么修復

針對一個文件設置權限無非就是限制文件的讀、寫和可執行權限,那么如何理解一個目錄的讀、寫和可執行權限呢?跟據我小范圍調查,大多數人不能很好的回答這個問題:一個用戶對某個目錄擁有讀或寫權限分別意味著什么?

漏洞描述

CVE-2019-11244 漏洞原文描述如下:

In Kubernetes v1.8.x-v1.14.x, schema info is cached by kubectl in the location specified by –cache-dir (defaulting to $HOME/.kube/http-cache), written with world-writeable permissions (rw-rw-rw-). If –cache-dir is specified and pointed at a different location accessible to other users/groups, the written files may be modified by other users/groups and disrupt the kubectl invocation.

簡單的理解就是 kubectl 創建的緩存文件權限為 rw-rw-rw-,也即 666,這些緩存文件有被其他用戶修改的風險。

這里其他用戶是包含兩類:

同 group 下的其他用戶(后面稱 group 用戶);

不同 group 的其他用戶(后面稱 other 用戶);

那么修復這個漏洞,就要收縮這些文件權限,只要做到這些文件不能被這兩類用戶修改即可(可以擁有讀權限)。

社區修復方案

kubectl 會創建一個專門的目錄來存放緩存文件,所以這里既要控制目錄權限還要控制文件的權限。

在社區的修復方案中,緩存目錄權限由 755 變成了 750,即 other 用戶將不能進入這個目錄,Group 用戶仍擁有 r - x 權限,即可以讀取目錄下的文件列表、可以進入該目錄。

針對緩存文件的修改,權限由 755 變成了 660,這里有三個變化:

Owner 用戶不再擁有可執行權限(緩存文件擁有可執行文件權限本身也沒有意義);

Group 用戶擁有 rw- 權限,即 Group 用戶仍然可以修改緩存文件;

Other 用戶不授予任何權限(即便有權限也無效,因為上層目錄已不能訪問);

看到這里,問題就清楚了,緩存文件仍然可以被 Group 用戶修改,實際上漏洞并沒有完全修復。我們可以實際操作演示一下,這里如無特別說明表示使用 root 用戶操作:

創建一個目錄,并設置權限為 755: # mkdir -m 0750 myPath0750

在目錄中創建一個文件,并設置權限為 660:# touch myPath0750/myFile0660; chmod 0660 myPath0750/myFile0660

創建一個 root 組用戶,并設置密碼:# useradd -G root -d /home/horen -m horen; passwd horen

切換到新用戶,嘗試修改文件內容:# echo Hello myPath0750/myFile0660;

可以發現文件是可以被修改的。

加固方案

也許社區的修復方案并不能滿足你的安全要求,你仍然需要基于社區方案做一些安全加固,就是把緩存文件的權限進一步收縮,由 660 變為 640,即 Group 用戶最多只能查看緩存文件內容。

另外,由于目錄權限為 750,Group 用戶對該目錄沒有寫權限,所以不能修改目錄名,不能在該目錄下創建文件,達到目錄專用的目的。

這里也順便總結一下目錄的可讀、可寫和可執行三個權限的含義。其實目錄本身也是文件,其內容是其子層目錄結構,比如目錄中的文件列表,文件屬性等。

可讀:表示你可以列出目錄中有什么文件;

可寫:表示你可以在目錄中創建、刪除文件;

可執行:表示你可以進入該目錄;

關于“Kubernetes 中 CVE-2019-11244 漏洞怎么修復”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-25發表,共計1870字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 桓台县| 西安市| 长泰县| 西丰县| 西和县| 偃师市| 利辛县| 宁陵县| 安义县| 普兰店市| 奈曼旗| 科尔| 佛教| 北海市| 溧水县| 轮台县| 大竹县| 娄底市| 上饶市| 平山县| 中山市| 伊宁县| 长阳| 黄石市| 临泽县| 信丰县| 墨竹工卡县| 屏边| 仙居县| 揭东县| 祁阳县| 堆龙德庆县| 吉木乃县| 扬州市| 万州区| 新津县| 平度市| 红安县| 西青区| 澄城县| 南城县|