보안 · 중급
보안 사고 발생 시 효과적인 대응을 위해 애플리케이션에서 어떤 종류의 이벤트를 로깅해야 하며, 로깅 시스템 설계 시 'Security Logging and Monitoring' 관점에서 주의할 점은 무엇인가요?
힌트 · 인증/인가 실패, 관리자 활동, 데이터 변경, 비정상 접근 시도 등을 로깅해야 합니다. 로그 위변조 방지, 중앙 집중식 관리, 민감 정보 로깅 최소화에 주의해야 합니다.
인증/인가접근 제어이상 행위 탐지로그 무결성SIEM 연동
모범답안
보안 사고 대응을 위해 애플리케이션에서 로깅해야 할 주요 이벤트는 다음과 같습니다. 먼저, 인증/인가 실패, 예를 들어 잘못된 비밀번호 입력 시도나 권한 없는 리소스 접근 시도를 기록해야 합니다. 둘째, 관리자 계정의 모든 활동, 특히 중요한 데이터 변경이나 시스템 설정 변경을 로깅해야 합니다. 셋째, 데이터 생성, 수정, 삭제 등 데이터 변경 이력을 남겨야 합니다. 마지막으로, 비정상적인 접근 시도, 예를 들어 짧은 시간에 여러 IP에서 접근하는 경우를 기록해야 합니다.
로깅 시스템 설계 시에는 로그 위변조 방지가 중요합니다. 로그 파일에 대한 무단 접근을 막고, 필요하다면 암호화하거나 해시값을 저장하여 무결성을 보장해야 합니다. 또한, 로그를 중앙 집중식으로 관리하여 분석 및 상관관계 분석을 용이하게 해야 합니다. SIEM (Security Information and Event Management) 시스템과 연동하여 실시간 모니터링 및 이상 행위 탐지를 강화할 수 있습니다. 마지막으로, 개인정보보호 규정을 준수하여 민감한 정보는 로깅하지 않도록 주의해야 합니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 OWASP / 취약점 면접 질문
- 애플리케이션 개발 초기 단계에서부터 'Insecure Design' 취약점을 예방하기 위해 설계 과정에 어떤 보안 원칙들을 적용해야 할까요? 구체적인 예를 들어 설명해주세요.
- 사용자 개인 정보와 같은 민감 데이터를 안전하게 처리하기 위한 개발자의 역할은 무엇이며, 데이터 저장 및 전송 시 발생할 수 있는 'Sensitive Data Exposure' 취약점을 어떻게 방어할 수 있을까요?
- 애플리케이션에서 사용자별 권한을 효과적으로 관리하고 'Broken Access Control' 취약점을 방지하기 위한 접근 제어 모델 및 구현 시 고려사항을 설명해주세요.
- 대규모 마이크로서비스 아키텍처 환경에서 OWASP Top 10 취약점을 효과적으로 방어하기 위한 아키텍처 설계 원칙과 DevSecOps 파이프라인 통합 전략에 대해 설명하고, 특히 A01:2021-Broken Access Control과 A05:2021-Security Misconfiguration을 예시로 들어 구체적인 방안을 제시해 주십시오.
- OWASP API Security Top 10에서 가장 빈번하게 발생하는 A01:2023-Broken Object Level Authorization (BOLA)과 A02:2023-Broken Function Level Authorization (BFLA) 취약점을 방지하기 위한 설계 및 구현 시 고려해야 할 심층적인 방안들을 설명하고, 특히 다중 테넌트(Multi-tenant) 환경에서의 적용 방안을 제시해 주십시오.
- 안전하지 않은 역직렬화(A08:2021-Software and Data Integrity Failures의 일부) 취약점이 애플리케이션에 미치는 심각한 영향에 대해 설명하고, 이를 방지하기 위한 실제 개발 환경에서의 효과적인 코딩 가이드라인 및 아키텍처적 방어 전략을 제시해 주십시오.