�R���e�i��ՂɃZ�L�����e�B���X�N�����邱�Ƃ͔F�����Ă���B�Z�L�����e�B�̃K�C�h���C���Ȃǂ��`�F�b�N���Ă���B�����A���܂ЂƂU����X�N�̃C���[�W���N���Ȃ��B����ȊJ���҂Ɍ����āANTT�f�[�^�̃N���E�h�G���W�j�A�A�]���h��������̓I�ȍU���f����ʂ��āA�ӎ����ׂ����X�N���ɂ��ĕ�����₷���������B2021�N11��4�`5���ɃI�����C���ŊJ�Â��ꂽ�uCloudNative Days Tokyo 2021�v����u������R���e�i�I�I�`�J���҂��猩���R���e�i�Z�L�����e�B�̍l�����`�v�ŏЉ�ꂽ���e���B
���̋L���͉������ł��B����o�^�i�����j����ƑS�Ă������������܂��B
�@�}�C�N���T�[�r�X��G�b�W�R���s���[�e�B���O����������Z�p�̈�Ƃ��Ċ��p���i�ރR���e�i�B���̈���ŁA�R���e�i��A�v���P�[�V�����A�I�[�P�X�g���[�^�[�̐ݒ�s����^�p�~�X�A�Ǝ�i�������Ⴍ�j���Ȃǂɂ��Z�L�����e�B���X�N���������w�E����Ă����B
�@�����������Ԃ��āANIST�i�č������W���Z�p�������j�̓Z�L�����e�B�v���N�e�B�X�Ƃ��āuNIST SP800-190 �A�v���P�[�V�����R���e�i�Z�L�����e�B�K�C�h�v�����J�B������i�@�\�iIPA�j�����{�������o���ȂǁA���S�Ȋ��p���Ăъ|�����Ă���B
�@�����A�K�C�h���C���͔ėp�i�͂�悤�j�����d�����邽�߁A�u���͋C�͕�������̂́A���X�N����̓I�ɃC���[�W���ɂ����v�ƁANTT�f�[�^�̃N���E�h�G���W�j�A�A�]���h�����͓�_�������B�����ɂ����Ă��A�ǂ��댯�Ȃ̂��m�Ɏv�������ׂ��Ȃ��ƁA�����Ȃ�ɂȂ肪�����B�܂��A���ۂɖ�肪���������Ƃ��A�ǂ̑��D�悷�ׂ��Ȃ̂������炸�ɁA���܂��s���ł��Ȃ��\��������B
�@�����Ŗ]�����̓R���e�i��ݒ�A�f�v���C����J���҂ɏœ_���i��A�R���e�i��R���e�i�z�X�g�ւ̏�����U���̃f�������������B���̏�ŁA�ǂ̂悤�ȑK�v�Ȃ̂�����̓I�ɉ�������B
�@�Ȃ��A����͎��ۂɃR���e�i�ɑ���U���f�����������Ă�����̂́A�����ăT�C�o�[�U�����m�肷����̂ł͂Ȃ��|��]�����͋������Ă���B
�@�U���f���͎��̂悤�ȃV�i���I�ɉ����Ă���BKubernetes���R���e�i��Ղɗ��p���A���܂��܂ȃT�[�r�X���R���e�i��Pod�i�R���e�i�C���[�W��Docker�t�@�C���j�Ƃ��ăf�v���C����A�Ƃ���`�[���̊J���҂���l�����B����Ƃ��A�R���e�i�Z�p�ɂ��Ċw�ׂ�Web�T�[�r�X��Kubernetes���Pod�Ƃ��ăf�v���C���A�l�b�g�z���Ƀ��[�U�[�����p�ł���悤�ɂ����B�������A�f�v���C�����R���e�i�C���[�W�ƁuKubernetes Manifest�v�i�R���e�i�N���ݒ�j�ɃZ�L�����e�B���X�N���܂܂�Ă������߁A�U���҂ɏ������ă��[�U�[�����ӂ���Web�T�C�g�ւƗU������Ă��܂����Ƃ������e���B
�@�U���f���ł́A�R���e�i�ƃR���e�i�z�X�g�i���[�J�[�m�[�h�j�����ꂼ�������菇���Љ���B
�@�܂��A�R���e�i��������菇���B�U���҂͏��߂ɍU���[��1�ő҂��|�[�g�i5050�j��ݒ肵�A�U���[��2���炠��Ǝ㐫�����p���邽�߂�HTTP���N�G�X�g�s�����B�s���ȃR�}���h�����s����āA�R���e�i���ɐN������B���̌�A�V�F���ŃR�}���h�����s�ł��邱�Ƃ��m�F���Ă���AWeb�y�[�W�̃����N����U���҂̗p�ӂ���Web�y�[�W�ɏ���������B����Ń��[�U�[�́A���K�̃����N���N���b�N��������ŁA���ӂ���Web�T�C�g�ɔ����Ă��܂��B
�@2�ڂ̍U���V�i���I�́A�R���e�i�z�X�g�̏����肾�B�����ōU���҂��g���̂́A�uContainer Breakout�v�Ƃ�����@���B�{���A�R���e�i�z�X�g�͊u������Ă���̂ŁA�R���e�i����͊��ł��Ȃ��͂������A���̎v�����݂̗���˂����U�����B
�@Container Breakout���N���������́A2����B1�́A���������R���e�i��sudo�R�}���h���g���A���[�g�����ɏ��i������A�z�X�g�Ŏ��s�������v���O�����i�f���ł�cmd�t�@�C���j���R���e�i���ɍ쐬����B���͂��̍쐬����cmd�t�@�C���A�R���e�i���ɂ̂ݕۑ�����Ă���Ǝv������A�R���e�i�z�X�g��̓���̃f�B���N�g�����ɂ������B���̂悤�ɂȂ闝�R�́A�R���e�i��rootfs���R���e�i�z�X�g��́uOverlayFS�v���}�E���g�������̂����炾�BOverlayFS�͕����̃f�B���N�g����1�̃t�@�C���V�X�e���Ɍ�����Z�p�ŁA�}�E���g��̃f�B���N�g���ŐV�K�t�@�C���Ȃǂ��쐬�����ƁA���̓��e��OverlayFS���\������f�B���N�g�����́uUpperdir�v�ƌĂ��f�B���N�g���ɂ����f�����B�܂�Acmd�t�@�C���̎��Ԃ̓R���e�i�z�X�g�ɑ��݂���B
�@����1�̏����́A�R���e�i����cgroup�ƌĂ�����ȃt�@�C���V�X�e�����Ɂux�v�Ƃ������O�̃f�B���N�g�����쐬���邱�Ƃ��B���͂���cgroup�A�R���e�i�ƃR���e�i�z�X�g�ŋ��ʂ̂��̂��g���Ă���B�܂�A�R���e�i���ɂ̂݃f�B���N�g�����쐬�������肪�A�R���e�i����R���e�i�z�X�g��cgroup�֒��ڃA�N�Z�X�ł����ԂɂȂ��Ă���B�R���e�i�ƃR���e�i�z�X�g�Ńt�@�C���V�X�e�����u������̂���ʓI�����Acgroup�ɂ��Ă�cgroup namespace�����ʂȂ��߁A���L��ԂɂȂ�̂��Ɩ]�����͐�������B
�@�����������O�̏����Ƃ��̑��̕W���I�ȋ@�\��g�ݍ��킹�邱�ƂŁA�R���e�i����z�X�g���cmd�t�@�C�����p�X�w��Ŏ��s�\�ɂȂ�B��́A�z�X�g�Ƀo�b�N�h�A���d�|���ă����[�g���炢�ł��C�ӂ̃v���O���������s�ł���悤�Ɏ����Ă����������B
�@�o�b�N�h�A�ɕK�v�ȃz�X�g��IP�A�h���X�́A�f�o�C�X�̐ݒ���ꗗ�\������R�}���h�iip a�j��cmd�t�@�C���ɏ�������Ŏ��s���A�e�L�X�g�o�͂����邾�����B�����āA�U���[��2��8023�|�[�g��҂��ɐݒ肵�Acmd�t�@�C����8023�|�[�g�Ɛڑ��m������R�}���h�ƁA�R���e�i�z�X�g��9023�|�[�g��҂��ɐݒ肷��R�}���h����������ŕۑ�����B���̌�A�U���[��3����R���e�i�z�X�g��IP�A�h���X�ɑ���9023�|�[�g�ɃR�l�N�V������B�ȏ�ŁA�U���[��3�Ŕ��s�����R�}���h���R���e�i�z�X�g�Ŏ��s�ł�������������B�����萬�����B
�@���������U������������̂́A�����R���e�i��Kubernetes�Ƀo�O�����邩��ł͂Ȃ��B�J���҂��R���e�i�C���[�W��R���e�i���C���[�ɑ��āA�ӎ�������荞��ł��܂����Z�L�����e�B���X�N���U���҂����p�����������ƁA�]�����͌����B
�@�ł́A�ǂ���悢�̂��B�]�����̓R���e�i�C���[�W�iDocker�t�@�C���Ȃǁj�ƃR���e�i�iKubernetes Manifest�Ȃǁj�̂��ꂼ��ɂ��āA���X�N�Ƒ�̍l��������������B
�@�R���e�i�C���[�W�̃Z�L�����e�B��ɂ��āA��{�����́u�C���[�W�ɗ]���Ȃ��̂��܂߂Ȃ��v���Ƃ��Ɩ]�����͒f������B
�@�u�Ⴆ�A���C�u������p�b�P�[�W�A�o�C�i���A�ݒ�l�Ƃ��ĕK�v�ŏ����̂��̂����p�b�P�[�W����Ă��Ȃ��C���[�WA�ƁA�K�v�ȏ�̗v�f���܂ރC���[�WB������Ƃ���B���C�u������p�b�P�[�W�̒��ɂ́A�Ǝ㐫�����݂�����̂�����B�����l�����Ƃ��A�K�v�ȏ�ɂ����̗v�f���܂ރC���[�WB�ɂ́A���ꂾ���Z�L�����e�B���X�N���������݂��邱�ƂɂȂ�v�i�]�����j
�@�R���e�i�C���[�W�����Ƃ��A��ʂɃx�[�X�C���[�W���uDocker Hub�v�ȂǂŒT���Ċ��p���邾�낤�B���̂Ƃ��A�x�[�X�C���[�W�ɖ{���܂߂�ׂ��ł͂Ȃ��]���Ȃ��̂������܂܂�Ă��邱�ƂɋC�t���邩�ǂ������B�Ⴆ�U���f���̃C���[�W�ɂ́ACGI�iCommon Gateway Interface�FWeb�T�[�o�ɔz�u���ꂽ�v���O�������Ăяo���C���^�t�F�[�X�j����C�ӂ̃R�}���h�������[�g���s�ł��Ă��܂�bash�̐Ǝ㐫�uCVE-2014-6271�v�A�ʏ́uShellShock�v���܂܂�Ă����B�U���ł͂�������p���āA�����[�g����R�}���h�����s�A�R���e�i���ւ̐N���𐬌������Ă���B
�@�܂��Asudo���܂܂��̂����X�N���B�u���������R���e�i��sudo�R�}���h�͕s�v�B���ꂪ����ƁA�U���҂͐N����A�ȒP�ɓ������[�U�[�֏��i�ł��Ă��܂��v�i�]�����j
�@�]�����͂��̖��̑�Ƃ��Ď���3���������B
�i1�j�M���ł���C���[�W�𗘗p����A�܂��͈ꂩ��C���[�W���쐬����
�i2�j�C���[�W���ł�����菬��������
�i3�j�C���[�W���p���I�ɃX�L��������
�@1�ڂ͌���������C���[�W�ȂǁA�M���ł���C���[�W�𗘗p���邩�A�ꂩ��C���[�W���쐬���邱�Ƃ��B
�@2�ڂ̓C���[�W�ɗ]���Ȃ��̂��܂߂��A�ł������T�C�Y�����������邱�Ƃ��B�u�����̃C���[�W�ł��A�^�O�o�[�W�����ɂ���Ă̓C���[�W�T�C�Y���傫�����̂�����B�������T�C�Y�̕����Z�L�����e�B���X�N�͏��Ȃ��Ƒz��ł���̂ŁA�Ȃ�ׂ��T�C�Y�̏��������̂�I�Ԃ悤�ɂ������v�i�]�����j
�@3�ڂ̓C���[�W�ɑ��ăZ�L�����e�B�X�L���������s���邱�Ƃ��B�ǂ�ȂɋC��t���Ă������ł��A�Ӑ}�����Ǝ㐫��댯�Ȑݒ���܂C���[�W���쐬���Ă��܂����Ƃ�����B�����ŏo�ԂƂȂ�̂��AAqua Security�́uTrivy�v��GOODWITH�́uDockle�v�Ƃ������X�L�����c�[�����B�U���f���Ŏg�����Ǝ�ȃR���e�i�C���[�W��Trivy�ŃX�L��������ƁAShellShock�Ǝ㐫�����o�ł����B�܂��ADockle�ŃR���e�i�C���[�W�̐ݒ肪�x�X�g�v���N�e�B�X�ɂ̂��Ƃ��Ă��邩�ǂ�����������ƁAsudo�R�}���h���܂܂�Ă���A�Z�L�����e�B���X�N�ɂȂ蓾�邱�Ƃ����o�ł����B
�@�u�Ǝ㐫�͂��炭��������ɔ����������̂������B�X�L���������^�C�~���O�ȍ~�ɔ��������P�[�X������̂ŁA�p���I�ɃX�L���������s���邱�Ƃ��d�v���v�i�]�����j
�@�R���e�i�̃Z�L�����e�B��̊�{�����́A�u�R���e�i�̊u�������ێ�����v���Ƃɐs����ƁA�]�����͋�������B
�@�u�R���e�i�͂����܂ł�OS��Ŏ��s�����v���Z�X��1�ɂ����Ȃ��B�J�[�l���̎����܂��܂Ȏd�g�݂�p���āA�z�X�g��Ŏ��s�����v���Z�X�̎��s��Ԃ̊u����rootfs�̊u���A�����̐����Ȃǂ��s���A1�̊u����������Ă���̂��R���e�i���B����܂��āA�R���e�i�͊�{�I�ɁA�u�������ێ����邱�Ƃ��������B���ꂪ�����ł��Ă���A���Ƃ��O������N�����ꂽ�Ƃ��Ă��z�X�g�ɉe���͋y�Ȃ��v�i�]�����j
�@Kubernetes Manifest�ł́A�R���e�i�̋N���ݒ�����܂��܂ɒ�`�ł���B���ꂾ���ɁA�ӎ����Ă��Ȃ��ƈӐ}�����u�����Ɍ����J����悤�Ȑݒ�����Ă��܂����Ƃ�����B
�@�U���f���̃V�i���I�ł́AKubernetes Manifest�ŃR���e�i�ɓ�����t�^����ݒ�ɂȂ��Ă����B���̌��ʁA�v���Z�X��R���e�i���̂ɃR���e�i�z�X�g�̓������[�U�[�Ɠ����̌�����^���Ă��܂��Acgroup�ɏ������݂ł���Ƃ������悤�ɁA���܂��܂ȑ���������Ă��܂����B�܂��A�R���e�i���Ńt�@�C���̐V�K�쐬��ҏW���ł������A����̓z�X�g��OverlayFS����}�E���g����Ă���R���e�i��rootfs�ɑ��鏑�����݂�������Ă������炾�B�u�������炢���ΒႢ��Ԃ��B
�@�u������ۂ��2����B
�i1�j�s�v�Ȑݒ�����Ȃ�
�i2�j�}�j�t�F�X�g���X�L��������
�@1�ڂ͕s�v�Ȑݒ�����Ȃ����Ƃ��B����Kubernetes�̏ꍇ�A�f�t�H���g�ŃR���e�i�v���Z�X�ɂ��āA�Œ���̊u������ۏ����ݒ�ɂȂ��Ă���B�u�ɘ_����A�f�t�H���g�̂܂܃f�v���C�����Kubernetes�Ƃ��Ē�`�����Œ���̃Z�L�����e�B���x���͊m�ۂł���v�i�]�����j
�@����Ɋu���������߂�ɂ́A���̂悤�Ȑݒ肪���������Ƃ����B�u�U���f���ł́A���Ɏ��́ic�j�Ɓid�j���L���ɓ����v�i�]�����j
�ia�j�V�X�e���R�[���t�B���^�[�iseccomp�j�ɂ��A�V�X�e���R�[���𐧌�����
�ib�jServiceAccount���}�E���g���Ȃ�
�ic�j�������i���֎~����
�id�jrootfs�ւ̏������݂��֎~����
�ie�jCapability�̔��D��K�v�ŏ����̕t�^
�if�j���\�[�X�g�p�ʂ𐧌�
�@�����Ŗ]�����͒��ӂ������|�C���g��1����Əq�ׂ�B����́A�R���e�i�C���[�W��Kubernetes Manifest�œ��ɉ����w�肹���Ƀf�v���C����ƁAroot���[�U�[�ŃR���e�i���N������_���B�Ȃ��Ȃ�A���݂̎d�l�ł̓R���e�i�ƃR���e�i�z�X�g��̎��s���[�U�[�̓R���e�i�v���Z�X�̎��s���[�U�[�ƃC�R�[�������炾�B�R���e�i�̊u�����̊ϓ_����A�R���e�i���s���[�U�[���root���[�U�[�Ƃ��ċN������悤�ݒ肷�邱�Ƃ����������B
�@�R���e�i�ł�Capability�Ȃǂ̃J�[�l���̎d�g�݂ɂ���āAroot���s���Ă����������������悤�ɂȂ��Ă���͂����B����ł͕s�\���Ȃ̂��낤���B�u�Ǝ㐫������Εʂ̘b�ɂȂ�B�J�[�l���̎d�g�݂����蔲���ĕs���ȑ��삪�\�ɂȂ��Ă��܂����Ƃ�����B�����������X�N������邽�߂ɂ��A��{�I�ɃR���e�i�͔�root�Ŏ��s����悤�ɐݒ肷�ׂ����v�Ɩ]�����͏q�ׂ�B
�@�unginx��httpd�Ȃ�Web�T�[�o�̌����C���[�W�́A�R���e�i�|�[�g�ɓ����|�[�g�i80�|�[�g�j���g�p������̂�����A���̂���root���s��O��Ƃ��Ă�����̂������B���R�A�������root�Ŏ��s�\�Ȃ悤�ɐݒ��ύX�ł���B�����T�[�r�X���g���Ƃ��͗��ӂ������v�i�]�����j
�@�u������ۂ�2�ڂ̑�́AKubernetes Manifest�ɑ��ăX�L�����������邱�Ƃ��B�ݒ荀�ڂ��X�R�A�����O���ă��X�N�]������uKubesec�v��AKubernetes Manifest�Ɋ܂܂�郊�X�N�����m���Ď����C�����Ă����uKubeaudit�v�Ȃǂ��𗧂B�܂��AKubernetes��Pod Security Standard�ɏ�������Pod�̂݃f�v���C��������uPod Security Admission�v��A�ғ�����Pod���č��̍��ƈ��S�ۏ�ǁiNSA�j�ƍ��y���S�ۏ�ȃT�C�o�[�Z�L�����e�B�C���t���Z�L�����e�B���iCISA�j�ɂ��uKubernetes Hardening Guidance�v�ɏ������Ă��邩�ǂ�������������ukubescape�v������B�R���e�i�̃Z�L�����e�B���x������������c�[�����������J����Ă���̂ŁA�ϋɓI�Ɋ��p���Ă��������B
�@�]�����͖{�u���̎������uSpeaker Deck�v�����J���鑼�A�U���f����PoC�i�T�O���j��GitHub�����J���Ă���B���ɍu�������ɂ́A�R���e�i�Z�L�����e�B����ŎQ�l�ƂȂ鎑���̎Q�Ɛ悪���X�g�A�b�v����Ă���̂ŁA���Жڂ�ʂ��Ă��������B
�@�u�U�������ʂ��ăR���e�i�ɂǂ̂悤�ȃ��X�N������̂��A�ǂ̂悤�ȑK�v�Ȃ̂���m���Ă���������Ǝv���B�{�u���̏�R���e�i�Z�L�����e�B���ӎ����邫�������ƂȂ�A�ǂ������ɒ��肷�ׂ����ڈ���t���邱�Ƃ��ł���̂ł���K�����v�i�]�����j
�f�������l�ݏo�����߂Ƀr�W�l�X��IT�T�[�r�X�J���A�^�p����������g�݂��s���ƂȂ��Ă���B�����������A���ڂ���Ă���A�v���[�`���X�s�[�f�B�[�ɃA�v���P�[�V�������r�W�l�X���f�v���C���A���̌�����x�ȕω��K���͂������Ȃ���A����I�ɉ^�p����u�N���E�h�l�C�e�B�u�v���B�ߔN�A�r�W�l�X�̗v�ƂȂ邪�̂ɍU���҂̓N���E�h��W�I�Ƃ���X�������������Ă���B���ɁAGitHub.com��Docker Hub�Ƃ������A���J����Ă���A�v���P�[�V�������Y��T�[�r�X���p�ɂ�����v���Z�X�A�ݒ�̐Ǝ㐫��˂��U���ƘR�������������Ԃ���i�ɂ��j�킹�Ă���̂́A���m�̒ʂ肾�BIT�T�[�r�X���A�����ɐƎ㐫�����炵�ă����[�X���A���S�ɉ^�p���Ă����̂��B�{���W�ł́A���̃J�M�ƂȂ�uDevSecOps�v�̎��g�݂𒆐S�ɁA�N���E�h�l�C�e�B�u�ɂ�����Z�L�����e�B��̊�����T��B
Copyright © ITmedia, Inc. All Rights Reserved.