본문 바로가기

반응형

Security

(5)
DevSecOps란 무엇인가: CI/CD에 보안을 통합하는 방법 CI/CD 파이프라인을 구축했지만, 보안 검증 없이 빌드와 배포만 자동화하고 있다면 — 공격자에게 자동으로 문을 열어주는 파이프라인을 운영하는 셈입니다. DevSecOps는 보안을 파이프라인의 마지막 관문이 아니라 모든 단계에 내장하는 접근 방식입니다.핵심 요약DevSecOps는 DevOps 워크플로우에 보안을 자동화하여 통합하는 문화이자 실천 방법입니다. 도구 하나를 추가하는 것이 아니라 개발-보안-운영의 협업 구조를 바꾸는 것입니다.Shift Left 원칙: 보안 검증을 배포 직전이 아니라 코드 작성 시점부터 적용합니다. 늦게 발견할수록 수정 비용이 급격히 증가합니다.파이프라인 보안 자동화의 핵심 단계는 SAST(정적 분석), SCA(의존성 검사), 컨테이너 이미지 스캔, Secret 탐지, DAST..
GitHub Actions에서 Secret을 안전하게 관리하는 방법 GitHub Actions 워크플로우에 AWS Access Key를 하드코딩해서 Push한 적이 있다면, 이미 한 번은 위험에 노출된 적이 있습니다. 워크플로우 파일은 Git 히스토리에 남고, Fork된 저장소에서도 보입니다. 이 글에서는 CI/CD 파이프라인에서 인증 정보를 안전하게 다루는 방법을 단계별로 정리합니다.핵심 요약GitHub Actions Secret은 저장 시 libsodium sealed box로 암호화되며, 로그에 출력되면 자동으로 ***로 마스킹됩니다.Secret의 범위는 Repository, Environment, Organization 3단계로 나뉘며, 최소 권한 원칙에 따라 가장 좁은 범위를 선택해야 합니다.Environment Secret에 보호 규칙(Required Revi..
IAM과 RBAC 차이: AWS, Azure, GCP 기준으로 이해하기 "개발자에게 S3 읽기 권한을 주려면 IAM으로 해야 하나요, RBAC로 해야 하나요?" — 이 질문 자체가 두 개념의 관계를 혼동하고 있다는 신호입니다. IAM은 접근 제어 시스템 전체를 가리키고, RBAC는 그 안에서 권한을 부여하는 방식 중 하나입니다.핵심 요약IAM(Identity and Access Management)은 "누가, 무엇에, 어떤 작업을 할 수 있는가"를 관리하는 시스템 전체를 의미합니다.RBAC(Role-Based Access Control)는 역할(Role)을 기준으로 권한을 묶어서 부여하는 접근 제어 모델입니다.AWS는 IAM 안에서 Policy 기반(ABAC/PBAC)과 Role 기반(RBAC)을 혼합하여 사용합니다.Azure는 IAM 계층 안에서 RBAC를 명시적으로 분리..
AWS IAM Role과 Policy 차이: 권한을 설계하는 두 가지 축 IAM Role은 "누가 이 권한을 사용할 수 있는가"를 정의하고, IAM Policy는 "어떤 작업을 허용하거나 거부하는가"를 정의합니다. 이 두 가지를 분리해서 설계해야 권한 관리가 확장 가능해집니다.핵심 요약IAM Policy는 "무엇을 할 수 있는가"를 JSON으로 정의한 권한 규칙입니다.IAM Role은 "누가 이 권한을 사용할 수 있는가"를 정의한 자격 증명 컨테이너입니다.Policy는 Role에 연결(Attach)되어야 실제로 동작합니다. Policy 단독으로는 아무 효과가 없습니다.Role은 사람이 아닌 서비스(EC2, Lambda 등)에도 권한을 부여할 수 있는 유일한 방법입니다.실무에서는 Policy를 재사용 가능한 단위로 설계하고, Role을 통해 필요한 주체에 조합하여 연결합니다.1..
클라우드 보안 기본 원칙: 최소 권한, 네트워크 격리, 감사 로그 클라우드 보안은 하나의 도구가 아니라 설계 원칙의 조합입니다. 최소 권한, 네트워크 격리, 감사 로그 — 이 세 가지가 클라우드 보안의 기본 축을 구성합니다.핵심 요약최소 권한(Least Privilege): 작업에 필요한 최소한의 권한만 부여합니다. 과잉 권한은 사고 시 피해 범위를 키웁니다.네트워크 격리(Network Isolation): 리소스 간 통신 경로를 명시적으로 제한합니다. 기본값은 "차단"이어야 합니다.감사 로그(Audit Log): 누가, 언제, 무엇을 했는지 기록합니다. 사고 대응과 규정 준수의 기반입니다.이 세 가지는 독립적으로 동작하지 않습니다. 함께 적용해야 방어 깊이(Defense in Depth)가 확보됩니다.1. 왜 필요한가개발팀에서 새 서비스를 빠르게 배포하기 위해 IAM..

반응형