OWASP Top 10 2021: A01 – Broken Access Control(취약한 액세스 제어)
페이지 정보
본문
"모의해킹 · 보안취약점진단 · 정보보호컨설팅" 전문기업 『라스컴 시큐리티』 www.lassecu.com T:1522-3863 secu@lascom.co.kr
안녕하세요 라스컴 시큐리티입니다.
2021년 발표된 OWASP Top 10을 하나씩 소개 드립니다.
오늘 주제는 A01: Broken Access Control(취약한 액세스 제어) 입니다.
취약점 설명
접근 제어는 정책 집행을 통해 사용자들이 각기 부여된 권한을 벗어난 행동을 할 수 없도록 합니다.
접근 제어에 실패하는 경우, 데이터가 무단으로 공개/수정/파기되거나 사용자가 제한된 범위 이상의 비즈니스 기능을 수행할 수 있습니다.
액세스 제어 취약점은 일반적으로 다음과 같습니다:
· 최소 권한 원칙/거부 기본 원칙의 위반. 특정 기능, 역할 또는 사용자에 대해서만 액세스 권한을 부여해야 하지만 누구나 액세스할 수 있게 된 경우.
· 접근 제어 검사 우회. URL(매개변수 변조 또는 강제 브라우징)/내부 애플리케이션 상태/HTML 페이지를 수정하거나 공격 도구를 사용하여 API 요청을 수정하는 경우.
· 고유 식별자(불안전하고 직접적인 객체 참조)를 제공하여, 타인의 계정을 조회 또는 편집할 수 있도록 허용하는 경우
· POST, PUT, DELETE에 대한 액세스 제어가 누락된 API에 액세스할 수 있는 경우.
· 권한 상승. 로그인하지 않은 상태에서 사용자로 행동하거나 사용자로 로그인한 상태에서 관리자로 행동하는 경우.
· 메타데이터 조작. 'JSON 웹 토큰'(JWT) 액세스 제어 토큰을 변조하거나 리플레이 하는 행위, 권한 상승/JWT 무효화를 위해 쿠키 또는 히든 필드를 조작하는 행위.
· CORS(Cross-Origin Resource Sharing)가 잘못 구성되어 권한이 없거나 신뢰할 수 없는 출처에서 API에 액세스할 수 있는 경우.
· 인증되지 않은 사용자가 인증된 페이지로, 일반 사용자가 권한이 필요한 페이지로 강제 브라우징(Force browsing) 되는 경우.
방지 방법
접근 제어는 신뢰할 수 있는 서버측 코드나 서버리스 API에서만 유효합니다(공격자가 접근 제어 검사 또는 메타데이터를 수정할 수 없는).
· 공용 리소스를 제외하면 기본적으로 접근을 거부합니다.
· 접근 제어 메커니즘을 애플리케이션 전체에 일괄 적용시킵니다(CORS 사용 최소화 포함).
· 사용자에게 레코드 생성, 읽기, 업데이트, 삭제를 허용하지 않습니다.
· 도메인 모델에 따라 고유한 애플리케이션 비즈니스 제한 요건이 적용되어야 합니다.
· 웹 서버 디렉토리 목록을 비활성화하고 파일 메타데이터(.git 등) 및 백업 파일이 웹 루트 내에 존재하지 않도록 합니다.
· 액세스 제어 실패를 기록하고, 필요한 경우(반복되는 실패 등) 관리자에게 알립니다.
· API와 컨트롤러 접근에 호출 제한(Rate limit)을 걸어 자동화 공격 도구로 인한 피해를 최소화합니다.
· 로그아웃 후에는 상태 저장(Stateful) 세션 식별자가 서버에서 무효화되어야 합니다.
상태 비저장(Stateless) JWT 토큰은 공격자의 공격 기회가 최소화되도록 수명이 짧은 것이 좋습니다.
수명이 긴 JWT는 OAuth 표준에 따라 액세스를 취소하는 것이 좋습니다.
개발자와 QA 담당자는 기능적 접근 제어 장치와 통합 테스트를 포함해야 합니다.
공격 시나리오 예제
시나리오 #1: 애플리케이션이 계정 정보에 액세스하는 SQL 호출에 검증되지 않은 데이터를 사용하는 경우.
공격자는 원하는 계정 번호를 전송하도록 하기 위해 브라우저의 'acct' 파라미터만 수정하면 됩니다.
이렇게 제대로 검증하지 않는 경우 공격자는 모든 사용자 계정에 접근할 수 있습니다.
시나리오 #2: 공격자가 타겟 URL로 강제 브라우징하는 경우. 관리자 페이지에 액세스하려면 관리자 권한 필요.
인증되지 않은 사용자가 각각의 페이지에 액세스할 수 있다면 취약점입니다. 관리자가 아닌 사용자가 관리자 페이지에 액세스할 수 있다면 취약점입니다.
상세 원문은 아래 링크를 통해 확인하실 수 있습니다.
https://owasp.org/Top10/A01_2021-Broken_Access_Control/
전문 정보보안 컨설턴트가 제공하는 웹 취약점 점검 서비스가 필요하실 때,
라스컴 시큐리티로 문의 주시면 친절하고 상세하게 안내 드리겠습니다.
감사합니다.
모의해킹 · 취약점진단 · 정보보호컨설팅
- 이전글ISMS, ISMS-P 인증 컨설팅 업체 선정 시 고려사항 23.11.15
- 다음글OWASP Top 10 2021(한글) 23.11.01