01-개념
01 — 다섯 가지 가드레일
섹션 제목: “01 — 다섯 가지 가드레일”왜 가드레일인가
섹션 제목: “왜 가드레일인가”가장 잘 알려진 사고 한 건을 봅시다.
“The permission system passed the command — but the shell then expanded
~into the literal home path, and the command annihilated the entire project plus years of files.” — 권한 시스템은 명령을 통과시켰다. 그런데 셸이~를 실제 홈 경로로 확장해 버렸고, 그 명령은 프로젝트와 수년치 파일을 통째로 지웠다. (Mike Wolak,sources/23-case-studies-raw/failures/mike-wolak-rm-rf-home-directory.md)
핵심 교훈:
- 샌드박스가 옵트인이면 의미가 약하다 — 기본값으로 박혀 있어야 한다
- 검증은 셸 확장 이후에 해야 한다
rm -rf ~,rm -rf /같은 패턴은 하드코딩 차단
다섯 가지 가드레일
섹션 제목: “다섯 가지 가드레일”1. 최소 권한(Least Privilege)
섹션 제목: “1. 최소 권한(Least Privilege)”- 작업이 필요한 만큼만. 운영 DB, 결제, 발송 권한은 별도 토큰으로 격리.
- 기본은 읽기 전용, 쓰기는 작업별로 명시 추가.
2. 사람 게이트(Human Gate)
섹션 제목: “2. 사람 게이트(Human Gate)”- 비가역 동작 직전 사람이 한 번 본다.
- 게이트는 “보고 OK”가 1초 이상 걸리도록 만들 것 (자동 클릭 방지).
3. 격리(Isolation)
섹션 제목: “3. 격리(Isolation)”- 사용자 데스크톱이 아닌 별도 환경에서 위험 작업.
- 디스포저블 VM, 컨테이너, 클라우드 데스크톱.
4. 정지 가능성(Stoppability)
섹션 제목: “4. 정지 가능성(Stoppability)”- 한 번에 모든 입력을 멈추는 큰 정지 버튼.
- 정지 후 머신 잠금까지 30초 안에.
5. 감사 로그(Audit Log)
섹션 제목: “5. 감사 로그(Audit Log)”- 누가, 언제, 무엇을, 어디서 — 네 가지 모두 남겨야 의미.
- 주간 단위 사람 검토 + 이상 패턴 알림.
가드레일이 없는 자리에 사고가 자란다
섹션 제목: “가드레일이 없는 자리에 사고가 자란다”각 사고 사례는 위 다섯 중 하나 이상이 비어 있었습니다. 사고는 새로운 것이 아니라 빠진 가드레일의 그림자입니다.