76

Container Security

  • Upload
    amouat

  • View
    286

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Container Security
Page 3: Container Security
Page 7: Container Security
Page 8: Container Security
Page 9: Container Security
Page 10: Container Security
Page 11: Container Security
Page 12: Container Security
Page 13: Container Security
Page 14: Container Security
Page 15: Container Security
Page 16: Container Security
Page 17: Container Security
Page 18: Container Security
Page 19: Container Security
Page 20: Container Security
Page 21: Container Security
Page 22: Container Security
Page 23: Container Security
Page 24: Container Security
Page 25: Container Security
Page 26: Container Security
Page 27: Container Security
Page 28: Container Security
Page 29: Container Security
Page 30: Container Security
Page 31: Container Security
Page 32: Container Security

RUNgroupadd-ruser&&useradd-r-guseruserUSERuser

Page 33: Container Security
Page 34: Container Security

FROMdebianRUNapt-getupdate&&apt-getinstall-ycurlRUNcurlhttp://sourcecode.com/file.tgz-o/file.tgzRUNtarxzf/file.tgz&&makeRUNrm/file.tgz

Page 35: Container Security

FROMdebianRUNapt-getupdate&&apt-getinstall-ycurlRUNcurlhttp://sourcecode.com/file.tgz-o/file.tgz&&tarxzf/file.tgz&&make&&rm/file.tgz

Page 36: Container Security

#CopygithubsshkeyCOPYgithub_rsa/root/.ssh/id_rsa...#RemovesshkeyRUNrm/root/.ssh/id_rsa

Page 37: Container Security

$dockerrun--read-onlydebiantouchxtouch:cannottouch'x':Read-onlyfilesystem

Page 38: Container Security

$dockerrun-v$(pwd)/secrets:/secrets:ro\debiantouch/secrets/xtouch:cannottouch'/secrets/x':Read-onlyfilesystem

Page 39: Container Security

$dockerrun--cap-dropSETUID--cap-dropSETGIDmyimage$dockerrun--cap-dropALL--cap-add...

Page 40: Container Security

$dockerrun-dmyimage$dockerrun-d-c512myimage$dockerrun-d-c512myimage

Page 41: Container Security

$dockerrun-m512mmyimage

Page 42: Container Security
Page 43: Container Security

$dockerrundebian\find/-perm+6000-typef-execls-ld{}\;2>/dev/null-rwsr-xr-x1rootroot10248Apr1500:02/usr/lib/pt_chown-rwxr-sr-x1rootshadow62272Nov202014/usr/bin/chage-rwsr-xr-x1rootroot75376Nov202014/usr/bin/gpasswd-rwsr-xr-x1rootroot53616Nov202014/usr/bin/chfn...

Page 44: Container Security

FROMdebian:wheezyRUNfind/-perm+6000-typef-execchmoda-s{}\;\||true

Page 45: Container Security

$dockerbuild-tdefanged-debian....Successfullybuilt526744cf1bc1$dockerrun--rmdefanged-debian\find/-perm+6000-typef-execls-ld{}\;\2>/dev/null|wc-l0$

Page 46: Container Security
Page 47: Container Security
Page 48: Container Security
Page 50: Container Security

$dockerdaemon--icc=false

Page 51: Container Security
Page 52: Container Security
Page 53: Container Security
Page 54: Container Security
Page 55: Container Security

$sestatus|grepmodeCurrentmode:enforcing$mkdirdata$echo"hello">data/file$dockerrun-v$(pwd)/data:/datadebiancat/data/filecat:/data/file:Permissiondenied

Page 56: Container Security

$ls--scontextdataunconfined_u:object_r:user_home_t:s0file$chcon-Rtsvirt_sandbox_file_tdata$dockerrun-v$(pwd)/data:/datadebiancat/data/filehello

Page 57: Container Security
Page 58: Container Security
Page 59: Container Security
Page 60: Container Security
Page 61: Container Security
Page 62: Container Security
Page 63: Container Security
Page 64: Container Security
Page 65: Container Security
Page 66: Container Security

$dockerrun-eAPI_TOKEN=MY_SECRETmyimage

Page 67: Container Security

$dockerrun-eAPI_TOKEN=MY_SECRETmyimage

Page 68: Container Security

$dockerrun-eAPI_TOKEN=MY_SECRETmyimage

Page 69: Container Security

$dockerrun-eAPI_TOKEN=MY_SECRETmyimage

Page 70: Container Security

$dockerrun-eAPI_TOKEN=MY_SECRETmyimage

Page 71: Container Security

$dockerrun-v/secretdir/keyfile:/keyfile:romyimage$dockerrun--volumes-frommy-secret-containermyimage

Page 72: Container Security

$dockerrun-v/secretdir/keyfile:/keyfile:romyimage$dockerrun--volumes-frommy-secret-containermyimage

Page 74: Container Security
Page 75: Container Security