中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker中怎么防止信息泄露

發布時間:2022-02-16 15:14:40 來源:億速云 閱讀:151 作者:iii 欄目:開發技術

今天小編給大家分享一下Docker中怎么防止信息泄露的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

Docker中怎么防止信息泄露

概述

容器和Docker讓我們的日常更加便捷,但是同時也會很容易將一些信息不小心泄露給公眾造成安全問題。密碼,云憑證和SSH私鑰,如果配置不當,一不小心就會泄露。除非建立一套安全事件策略,綜合防護,一些案例:

Codecov供應鏈攻擊:

2021年4月1日,由于Codecov一個Docker文件配置失誤,攻擊者可以竊取憑據并修改客戶使用的Bash Uploader腳本。通過惡意代碼修改Bash Uploaders,并將環境變量和從一些客戶的CI/CD環境中收集的密鑰泄露給了一個受攻擊者控制的服務器

Docker中怎么防止信息泄露

受到該事件影響,HashiCorp用于發布簽名和驗證的GPG密鑰被泄露,目前已經采用輪換機制定期更換私鑰。

其他由于Docker Hub公共鏡像導致的泄露還包括(不限于):

AWS賬戶和憑據,SSH私鑰,Azure密鑰,.npmrc令牌,Docker Hub賬戶,PyPI存儲庫密鑰,SMTP服務器認證信息,eCAPTCHA密碼,Twitter API密鑰,Jira密鑰,Slack密鑰以及其他一些密鑰等。

COPY方法

DockerFile語法中常見的一個COPY方法:

FROM debian:buster
COPY . /app

默認情況下,該語句會將當前目錄中所有內容的復制到鏡像中。這些內容中可能會包含敏感信息的文件:例如站點.env。

一旦敏感信息,被放到Docker鏡像中,則任何可以訪問該鏡像的用戶都可以看到這些信息。為了防止由于COPY導致的敏感信息泄露:

限制復制內容:只復制必須的特定文件或目錄。 例如:

COPY setup.py myapp/app

.dockerignore:使用.dockerignore確保敏感文件不被復制到鏡像中去,一個典型的配置:

NOTICE
README.md
LICENSE
AUTHORS.md
CONTRIBUTING.md
.vscode/
vendor/
env/
ENV/
build/
dist/
target/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
Dockerfile
.git
.editorconfig
*.egg-info/
.installed.cfg
*.egg
*.manifest
*.spec
.gcloudignore
.gitignore
.tox/
.dockerignore
.coverage
.coverage.*
.cache
htmlcov/
nosetests.xml
coverage.xml
*,cover
.hypothesis/
ssh/
id_rsa
.git-credentials
config.*

避免手動生成鏡像:與CICD自動生成系統相比,開發環境更容易涉及敏感文件,因此在開發環境手動生成公共鏡像更容易導致泄露。

使用CI環境變量:如果CI或構建環境需要使機密信息,需要將其配置在環境變量中,而不要通過文件訪問。

鏡像編譯

有時需要在構建Docker鏡像時使用機密,例如訪問私有軟件包存儲庫的密碼。

FROM python:3.9
RUN pip install \
--extra-index-url User:pass@priveapk.example \
package privatepackage

直接在URL包含了用戶名和密碼會直接導致其泄露。可以使用環境變量形式來應用:

export MYSECRET=secretpasswordexport DOCKER_BUILDKIT=1
docker build --secret --secret id=mysecret,env=MYSECRET .

運行時

有些密碼是需要在容器運行時候需要訪問的,比如訪問數據庫的憑據。同樣的運行時機密也不能直接存儲在鏡像中。

除了鏡像內容導致意外泄露,這種存儲在鏡像中的配置也綁定了環境,不便于鏡像靈活運行。在運行容器時可以通過多種方法將機密傳遞給容器:

使用環境變量。

與綁定機密文件的卷。

編排系統(如K8S)的密碼管理機制。

在公有云環境中,可以使用云環境變量和授權。比如AWS 的IAM角色管理。

外部密鑰庫。

通過以上這些機制,可以避免運行時敏感信息存儲在鏡像本身中。

安全掃描

除了上面一些管理方面策略外,還有一個主動方法就是自動地進行安全掃描。市面上有很多密碼掃描工具,可以掃描目錄或者Git倉庫,如果包含敏感信息則會直接告警。比如detect-secrets,trufflehog

Docker中怎么防止信息泄露

也有對鏡像掃描的工具,比如pentester可以掃描Docker Hub鏡像,發現問題。

Docker中怎么防止信息泄露

以上就是“Docker中怎么防止信息泄露”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

石景山区| 南丹县| 东辽县| 灵丘县| 台南市| 梧州市| 平顺县| 通山县| 都安| 稷山县| 寿宁县| 巴青县| 新晃| 邢台市| 深泽县| 新河县| 红桥区| 平凉市| 吴堡县| 大渡口区| 安国市| 台东市| 宝鸡市| 文山县| 开封县| 濮阳县| 惠来县| 葫芦岛市| 海淀区| 茂名市| 时尚| 黄平县| 宁安市| 揭西县| 日喀则市| 武夷山市| 田东县| 淳化县| 客服| 伊吾县| 长子县|