
핵심 요약
OWASP Top 10 2025는 웹 애플리케이션의 가장 치명적인 보안 위험에 대한 업데이트된 합의 목록으로, A01 접근 통제 취약점부터 A10까지를 다룹니다. 설정 오류, 소프트웨어 공급망, 잘못 처리된 예외에 대한 관심이 커지는 등 현재의 공격 양상을 반영하며, 제대로 된 웹 애플리케이션 모의침투 테스트의 기본 범위로 남아 있습니다.
OWASP Top 10 2025란 무엇이며 무엇이 달라졌나
OWASP Top 10은 웹 애플리케이션에 가장 치명적인 보안 위험의 순위를 매기는, 커뮤니티 주도의 인식 제고 문서입니다. Open Worldwide Application Security Project가 관리하며, 제출된 애플리케이션 테스트 데이터와 실무자 설문을 바탕으로 대략 3~4년마다 갱신됩니다. 따라서 각 판은 추상적 이론이 아니라 공격자의 실제 행동을 반영합니다.
2025년판은 접근 통제 취약점을 여전히 1위에 두고, 개별 버그가 아닌 약점의 범주 전체를 다루는 방식을 유지합니다. 주요 변화는 클라우드와 CI/CD 전반의 안전하지 않은 설정에 대한 강조, 취약한 구성요소를 넘어 소프트웨어 공급망 위험의 격상, 그리고 조용히 데이터를 유출하거나 허용 상태로 실패하게 만드는 잘못된 오류·예외 처리에 대한 명시적 관심입니다.
수많은 프레임워크와 감독기관이 이를 참조하면서 Top 10은 사실상의 기준선이 되었습니다. 인도 CERT-In의 감사 기대치, RBI와 SEBI의 보안 요건, EU의 NIS2와 DORA, 미국 대기업의 보안 설문지 모두 귀사의 애플리케이션이 이 항목들에 대해 테스트되었다고 전제합니다. 이 목록은 최소 범위이지 결승선이 아닙니다.
A01: 접근 통제 취약점
접근 통제는 인증된 사용자가 무엇을 할 수 있는지를 정합니다. URL의 ID를 바꿔 다른 고객의 기록을 열람하거나, 관리자 권한으로 상승하거나, 접근이 차단되어야 할 API에 도달하는 등 사용자가 의도된 권한을 벗어나 행동할 수 있으면 통제가 깨진 것입니다. 최근 판들에서 가장 흔하고 가장 피해가 큰 항목으로 남아 있습니다.
대응: 기본은 거부이며, 모든 요청에서 서버 측 인가를 강제합니다. 클라이언트가 보낸 식별자나 숨겨진 필드를 믿지 말고, 접근하려는 특정 객체의 소유 관계를 확인해야 합니다.
A02: 보안 설정 오류
설정 오류에는 안전하지 않은 기본값, 켜둔 채 방치된 불필요한 기능, 지나치게 상세한 오류 페이지, 누락된 보안 헤더, 공개된 클라우드 스토리지, 패치되지 않았거나 과도한 권한을 가진 서비스가 포함됩니다. 클라우드·컨테이너·CI/CD의 확산으로 하나의 잘못된 설정이 데이터를 노출시킬 수 있는 지점이 늘어나면서 2025년판에서 비중이 커졌습니다.
대응: 강화된 구성 기준선을 코드로 재현 가능하게 구축하고, 사용하지 않는 구성요소와 기본 계정을 제거하며, 운영 환경을 지속적으로 스캔해 공격자가 아니라 우리가 먼저 이탈을 잡아냅니다.
A03: 소프트웨어 공급망 실패
이 항목은 기존의 '취약하고 오래된 구성요소' 위험을 소프트웨어 공급망 전체로 확장합니다. 서드파티 라이브러리, 베이스 이미지, 빌드 도구, 패키지 레지스트리, 그리고 이를 조립하는 파이프라인이 대상입니다. 침해된 의존성이나 빌드 단계는 애플리케이션이 운영에 도달하기도 전에 악성 코드를 심을 수 있습니다.
대응: 소프트웨어 명세서(SBOM)를 유지하고 의존성을 고정·검증하며 빌드 파이프라인 자체를 보호해, 검토되고 무결성이 확인된 산출물만 릴리스로 승격되도록 합니다.
A04: 암호화 실패
암호화 실패는 비밀번호, 결제 정보, 의료 기록, GDPR이나 인도 DPDP법의 적용을 받는 개인정보 같은 민감 데이터가 전송 중이거나 저장 상태에서 제대로 보호되지 않을 때 발생합니다. 흔한 원인은 암호화 부재, 취약하거나 폐기된 알고리즘, 코드에 하드코딩된 키, 부실한 키 관리입니다.
대응: 데이터를 분류하고 모든 구간에서 강력한 전송 암호화를 적용하며, 민감 데이터는 최신 알고리즘으로 저장 시 암호화하고, 키는 코드나 설정 파일이 아니라 전용 시크릿·키 관리 서비스에서 다룹니다.
A05: 인젝션
인젝션은 신뢰할 수 없는 입력이 명령이나 질의로 해석되어 공격자가 프로그램 로직을 바꿀 수 있을 때 발생합니다. SQL 인젝션, NoSQL 인젝션, OS 명령 인젝션, 크로스사이트 스크립팅이 모두 여기에 속합니다. 애플리케이션이 데이터와 명령을 분리하지 않고 섞기 때문입니다.
대응: 입력을 데이터로 바인딩하는 파라미터화 질의와 안전한 API를 사용하고, 엄격한 허용 목록으로 입력을 검증하며, 출력은 문맥에 맞게 인코딩해 사용자 제공 콘텐츠가 실행되지 않도록 합니다.
A06: 안전하지 않은 설계
안전하지 않은 설계는 구현이 아니라 아키텍처 자체의 결함입니다. 송금 흐름에 요청 제한이 없거나, 비밀번호 재설정 절차가 악용되어 계정을 탈취당할 수 있는 것처럼, 애초에 설계되지 않은 보안 통제는 아무리 완벽한 코드로도 메울 수 없습니다.
대응: 초기 단계에서 위협 모델링을 적용하고, 기능 요건과 함께 보안 요건과 악용 시나리오를 정의하며, 안전한 설계 패턴을 사용해 사후에 덧붙이는 대신 설계 단계부터 적절한 통제를 갖춥니다.
A07: 인증 실패
인증 실패는 자격증명 처리의 허술함으로 공격자가 아이덴티티를 침해하게 합니다. 취약하거나 유출된 비밀번호 허용, 무차별 대입 방어 부재, 예측 가능하거나 제대로 무효화되지 않는 세션 토큰, 다중 인증 부재 등이 그것입니다. 그 결과 계정 탈취와 대규모 크리덴셜 스터핑이 발생합니다.
대응: 다중 인증을 의무화하고, 비밀번호를 알려진 유출 목록과 대조하며, 인증 엔드포인트에 요청 제한과 모니터링을 적용하고, 세션 토큰을 서버에서 안전하게 생성·교체·무효화합니다.
A08: 소프트웨어 및 데이터 무결성 실패
무결성 실패는 변조 여부를 확인하지 않은 채 코드나 중요한 데이터를 신뢰할 때 발생합니다. 서명되지 않은 자동 업데이트, 신뢰할 수 없는 객체의 안전하지 않은 역직렬화, 무결성 검사 없이 산출물을 가져오는 CI/CD 단계가 그 예입니다. 신뢰된 소스를 바꿔치기할 수 있는 공격자는 애플리케이션을 장악하게 됩니다.
대응: 전자 서명으로 코드·업데이트·데이터의 무결성과 출처를 검증하고, 엄격한 타입 통제와 검증 없이는 신뢰할 수 없는 입력을 절대 역직렬화하지 않습니다.
A09: 로깅 및 경보 실패
이 항목은 불충분한 로깅·모니터링·경보를 다루며, 수많은 침해가 수개월간 발견되지 않는 이유이기도 합니다. 인증 실패, 접근 통제 위반, 고액 거래가 기록되지 않고 경보도 울리지 않으면 진행 중인 공격은 방어자에게 보이지 않습니다.
대응: 조사에 충분한 맥락과 함께 보안 관련 이벤트를 기록하고, 이 로그를 중앙화·보호하며, 실시간 경보 및 사고 대응 절차와 연결합니다. CERT-In의 인도 내 180일 로그 보관 요건도 이 의무를 뒷받침합니다.
A10: 예외 상황의 부적절한 처리
2025년판은 애플리케이션이 오류와 예외 상황을 어떻게 다루는지에 명시적으로 주목합니다. 부실한 오류 처리는 스택 트레이스, 내부 경로, 설정 정보를 공격자에게 노출할 수 있고, 검사가 실패했을 때 거부가 아니라 접근을 허용하는 '허용 상태 실패'를 낳기도 합니다. 두 경우 모두 예외 상황을 보안 사고로 바꿔 놓습니다.
대응: 안전하게, 그리고 차단하는 방향으로 실패하도록 하고, 사용자에게는 일반적인 오류 메시지를 반환하되 상세 내용은 서버에서 기록하며, 정상 경로뿐 아니라 예외적이고 예상치 못한 입력도 의도적으로 테스트합니다.
IntelligenceX의 지원
OWASP Top 10 2025는 어디를 봐야 하는지 알려 주는 지도이지만, 실제로 애플리케이션을 이에 대해 테스트해야만 의미가 있습니다. IntelligenceX는 OWASP에 맞춘 수동 중심 서비스로 각 항목을 평가하고 개발자가 바로 적용할 수 있는 조치 방안을 제공합니다. 영국, 미국, EU, 인도의 고객에게 적합한 접근입니다.
웹 애플리케이션 모의침투 테스트는 운영 중인 애플리케이션을 대상으로 Top 10의 모든 항목을 점검합니다. 접근 통제 취약점과 인젝션부터 로깅 및 예외 처리 실패까지 다루며, 개념 증명 증적과 무상 재테스트를 제공합니다. 시큐어 코드 리뷰는 소스 코드 자체를 검토해 블랙박스 테스트가 놓칠 수 있는 암호화·인젝션·무결성 결함을 잡아냅니다. 위협 모델링은 A06 안전하지 않은 설계를 정면으로 다루어, 코드로 작성되기 전에 빠진 통제를 드러냅니다.
인도 규제 대상 조직에게 이러한 테스트는 DPDP법의 안전조치 의무와 CERT-In, RBI, SEBI, IRDAI의 기대치에 그대로 연결됩니다. 범위를 분명히 하면, IntelligenceX는 자문·평가·준비를 담당하며 현재 CERT-In 등재 사업자가 아닙니다. 인증서를 발행하거나 규제 감사에 서명하지 않습니다. 애플리케이션 평가 범위는 저희 팀에 문의해 주세요.
자주 묻는 질문
웹 애플리케이션의 가장 치명적인 보안 위험 10가지에 대한 OWASP의 합의 목록의 최신판으로, A01 접근 통제 취약점부터 A10까지를 다룹니다. 실제 애플리케이션 테스트 데이터와 실무자 설문을 바탕으로 만들어졌으며, 웹 애플리케이션 모의침투 테스트의 기준 범위로 널리 사용됩니다.
접근 통제 취약점은 여전히 1위이며, 2025년판은 보안 설정 오류의 비중을 높이고, 취약한 구성요소를 소프트웨어 공급망 전체의 실패로 확장했으며, 부실한 오류 처리가 데이터를 유출하거나 허용 상태로 실패하게 만드는 예외 상황의 부적절한 처리에 명시적 초점을 더했습니다.
그 자체로는 아닙니다. 인식 제고 문서이지만 CERT-In의 감사 기대치, 인도 RBI와 SEBI의 요건, EU의 NIS2와 DORA 같은 제도가 이를 참조하므로, 이에 대해 테스트하는 것은 해당 의무를 뒷받침합니다.
폭을 위한 자동 스캔과 깊이를 위한 수동 모의침투 테스트를 함께 사용하세요. 접근 통제, 설계, 비즈니스 로직 결함은 숙련된 테스터가 필요합니다. 시큐어 코드 리뷰와 위협 모델링은 소스와 아키텍처의 문제를 잡아내 테스트를 보완합니다.