日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Docker敏感信息防泄露實(shí)踐

云時(shí)代流行的今天,云和容器成了日常工作的一部分。這樣就涉及一個(gè)安全問(wèn)題,在容器使用過(guò)程中常常要構(gòu)建鏡像,在構(gòu)建進(jìn)行并push到公共存儲(chǔ)(私有項(xiàng)目不要存儲(chǔ)大公共注冊(cè)表),其中可能會(huì)涉及有些敏感信息和機(jī)密數(shù)據(jù)泄露。比如IP地址,密碼,私鑰等信息。本文我們就來(lái)說(shuō)說(shuō)在實(shí)踐中如何避免敏感信息的泄露。

公司主營(yíng)業(yè)務(wù):成都做網(wǎng)站、網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。成都創(chuàng)新互聯(lián)公司推出老城免費(fèi)做網(wǎng)站回饋大家。

概述

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

Codecov供應(yīng)鏈攻擊:

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

受到該事件影響,HashiCorp用于發(fā)布簽名和驗(yàn)證的GPG密鑰被泄露,目前已經(jīng)采用輪換機(jī)制定期更換私鑰。

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

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

COPY方法

DockerFile語(yǔ)法中常見(jiàn)的一個(gè)COPY方法:

 
 
 
  1. FROM debian:buster
  2. COPY . /app

默認(rèn)情況下,該語(yǔ)句會(huì)將當(dāng)前目錄中所有內(nèi)容的復(fù)制到鏡像中。這些內(nèi)容中可能會(huì)包含敏感信息的文件:例如站點(diǎn).env。

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

  • 限制復(fù)制內(nèi)容:只復(fù)制必須的特定文件或目錄。 例如,
  •   
      
      
    1. COPY setup.py myapp/app。
  • .dockerignore:使用.dockerignore確保敏感文件不被復(fù)制到鏡像中去,一個(gè)典型的配置:
  •   
      
      
    1. NOTICE
    2. README.md
    3. LICENSE
    4. AUTHORS.md
    5. CONTRIBUTING.md
    6. .vscode/
    7. vendor/
    8. env/
    9. ENV/
    10. build/
    11. dist/
    12. target/
    13. downloads/
    14. eggs/
    15. .eggs/
    16. lib/
    17. lib64/
    18. parts/
    19. sdist/
    20. var/
    21. Dockerfile
    22. .git
    23. .editorconfig
    24. *.egg-info/
    25. .installed.cfg
    26. *.egg
    27. *.manifest
    28. *.spec
    29. .gcloudignore
    30. .gitignore
    31. .tox/
    32. .dockerignore
    33. .coverage
    34. .coverage.*
    35. .cache
    36. htmlcov/
    37. nosetests.xml
    38. coverage.xml
    39. *,cover
    40. .hypothesis/
    41. ssh/
    42. id_rsa
    43. .git-credentials
    44. config.*
  • 避免手動(dòng)生成鏡像:與CICD自動(dòng)生成系統(tǒng)相比,開(kāi)發(fā)環(huán)境更容易涉及敏感文件,因此在開(kāi)發(fā)環(huán)境手動(dòng)生成公共鏡像更容易導(dǎo)致泄露。
  • 使用CI環(huán)境變量:如果CI或構(gòu)建環(huán)境需要使機(jī)密信息,需要將其配置在環(huán)境變量中,而不要通過(guò)文件訪問(wèn)。

鏡像編譯

有時(shí)需要在構(gòu)建Docker鏡像時(shí)使用機(jī)密,例如訪問(wèn)私有軟件包存儲(chǔ)庫(kù)的密碼。

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

直接在URL包含了用戶名和密碼會(huì)直接導(dǎo)致其泄露??梢允褂铆h(huán)境變量形式來(lái)應(yīng)用:

 
 
 
  1. export MYSECRET=secretpassword
  2. export DOCKER_BUILDKIT=1
  3. docker build --secret --secret id=mysecret,env=MYSECRET .

運(yùn)行時(shí)

有些密碼是需要在容器運(yùn)行時(shí)候需要訪問(wèn)的,比如訪問(wèn)數(shù)據(jù)庫(kù)的憑據(jù)。同樣的運(yùn)行時(shí)機(jī)密也不能直接存儲(chǔ)在鏡像中。

除了鏡像內(nèi)容導(dǎo)致意外泄露,這種存儲(chǔ)在鏡像中的配置也綁定了環(huán)境,不便于鏡像靈活運(yùn)行。在運(yùn)行容器時(shí)可以通過(guò)多種方法將機(jī)密傳遞給容器:

  • 使用環(huán)境變量。
  • 與綁定機(jī)密文件的卷。
  • 編排系統(tǒng)(如K8S)的密碼管理機(jī)制。
  • 在公有云環(huán)境中,可以使用云環(huán)境變量和授權(quán)。比如AWS 的IAM角色管理。
  • 外部密鑰庫(kù)。

通過(guò)以上這些機(jī)制,可以避免運(yùn)行時(shí)敏感信息存儲(chǔ)在鏡像本身中。

安全掃描

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

也有對(duì)鏡像掃描的工具,比如pentester可以掃描Docker Hub鏡像,發(fā)現(xiàn)問(wèn)題。

總結(jié)

本文我們討論了容器敏感信息防泄露的一些安全方法,包括基本語(yǔ)法,鏡像編譯,運(yùn)行時(shí)以及安全掃描等方法。綜合使用這些方法和策略,可以有效地防止容器使用時(shí)候的敏感信息泄露,從而提高安全。


本文題目:Docker敏感信息防泄露實(shí)踐
標(biāo)題來(lái)源:http://www.5511xx.com/article/dpopejp.html