API(Application Programming Interface) 보안에 대하여 다음 내용을 설명하시오.
가. OWASP API Security Top 10 (2023) 주요 항목
나. API 게이트웨이(API Gateway)의 보안 기능
다. REST API와 GraphQL API의 보안 특성 비교
라. 마이크로서비스 환경에서의 API 보안 아키텍처 설계
2019년 이후 API 공격이 급증하면서 OWASP는 2023년 API Security Top 10을 갱신했습니다. 전통적인 웹 보안(OWASP Top 10)과 달리 API 특화 취약점(과도한 데이터 노출, 기능 수준 인증 누락 등)을 이해하고, API 게이트웨이와 마이크로서비스 보안을 연계하여 서술하는 것이 핵심입니다.
| 순위 | 항목 | 설명 | 대응 방안 |
|---|---|---|---|
| API1 | BOLA (객체 수준 인가 누락) | 타 사용자의 객체에 ID 조작으로 접근 | 요청자와 객체 소유자 일치 검증 |
| API2 | 인증 실패 | 취약한 인증 메커니즘, 토큰 만료 미구현 | OAuth 2.0, MFA 강제 적용 |
| API3 | BOPLA (객체 속성 수준 인가 누락) | 수정 권한 없는 속성 변경 허용 | 읽기·쓰기 속성 권한 세분화 |
| API4 | 무제한 리소스 소비 | Rate Limit 없어 DoS·비용 폭증 | 속도 제한, 페이로드 크기 제한 |
| API5 | BFLA (기능 수준 인가 누락) | 일반 사용자가 관리자 엔드포인트 접근 | 역할 기반 엔드포인트 접근 제어 |
| API6 | 민감 데이터 과다 노출 | 불필요한 필드까지 응답에 포함 | 응답 필터링, DTO 패턴 적용 |
| API7 | 서버 측 요청 위조 (SSRF) | API를 통해 내부 서비스에 무단 요청 | URL 화이트리스트, 내부망 차단 |
| API8 | 보안 설정 오류 | 불필요 HTTP 메서드, CORS 과다 허용 | 최소 허용 원칙, 보안 헤더 설정 |
| API9 | 부적절한 인벤토리 관리 | 구버전·테스트 API 방치 | API 카탈로그 관리, 버전 정책 |
| API10 | 안전하지 않은 API 소비 | 제3자 API 응답을 무검증 신뢰 | 외부 API 응답 검증, 타임아웃 설정 |
API 게이트웨이는 모든 API 트래픽의 단일 진입점으로, 다음 보안 기능을 중앙 집중화합니다:
| 비교 항목 | REST API | GraphQL API |
|---|---|---|
| 엔드포인트 | 리소스별 다수의 엔드포인트 | 단일 엔드포인트 (/graphql) |
| 과다 노출 | 서버가 응답 필드 결정 → 제어 용이 | 클라이언트가 필드 선택 → 민감 필드 요청 가능 |
| DoS 위험 | 일반적 Rate Limit으로 대응 가능 | 중첩 쿼리(Nested Query)로 서버 과부하 유발 가능 |
| 인가 관리 | 엔드포인트별 인가 적용 명확 | 필드 수준 인가(Field-level Authorization) 복잡 |
| 인트로스펙션 | 없음 (OpenAPI 문서 별도) | 스키마 자동 노출 → 공격자 정보 수집 가능 |
| GraphQL 특화 대응 | – | 깊이 제한, Query Complexity 제한, 인트로스펙션 비활성화 |
설계 원칙: 외부 인증(API GW) + 내부 mTLS(Service Mesh) + 서비스 내 인가(OPA)의 3계층 방어 구조.
요양원 선택 전 반드시 확인해야 할 체크리스트를 공개합니다. 공식 평가 자료 조회법, 방문 시 확인…
공공기관 채용 비리의 실태와 피해 지원자의 대응법을 정리했습니다. 채용 비리 신고 방법, 공익신고자 보호제도, 취준생…
주식 손실을 세금 절약에 활용하는 합법적 방법을 공개합니다. 해외주식 손익통산, ISA 계좌 활용, 연금계좌 절세까지…
배달이 예상 시간보다 크게 늦으면 취소·환불을 요청할 수 있습니다. 배달앱별 지연 취소 방법과 잘못 배달됐을…
통신비 절약의 핵심은 요금제 최적화입니다. 내 데이터 사용량 확인법, 알뜰폰 전환 비교, 위약금 없이 요금제…