권한인증 취약점

  • 사용자 인증 등에 사용되는 여러 정보를 수정하여 접근 권한이 없는 정보에 접근하여 기밀 정보를 조회 또는 변경하고 악용할 수 있는 취약점

URL/Parameter 변조

  • 웹 서버에 전송되는 모든 HTTP 요청 값(URL, Parameter 등)을 조작해 접근 권한이 없는 정보에 접근하는 방식

세션 탈취(불충분한 세션 관리)

  • 웹 애플리케이션 사용자가 로그인 시 발급되는 세션ID가 일정한 규칙을 가지고 발급되거나 세션 타임아웃을 너무 길게 설정한 경우 공격자가 사용자 세션ID가 유추하거나 유출되어 사용자의 권한이 도용되는 방식

쿠키 변조

  • 쿠키(Cookie)를 변조하여 다른 사용자로 전환하거나 권한 상승을 수행하는 방식

대응방안

  • 중요한 정보가 있는 웹 페이지는 재인증(2차 인증)을 적용
  • 개발 시 안전하다고 확인된 라이브러리나 프레임워크(OpenSSL, ESAPI의 보안 기능 등)를 사용하여 개발
  • 사용자 권한에 따른 ACL(Access Control List)을 설정
  • 응용 프로그램이 제공하는 정보와 기능을 역할에 따라 배분함으로써 공격 노출면을 최소화
  • 로그인할 때 마다 예측이 불가능한 새로운 세션ID를 발급하도록 설계하고 이 때 기존 세션ID는 파기
  • 세션 만료 시간을 설정하여 일정 시간 움직임이 없을 경우 자동으로 로그아웃 되도록 설정
  • Cookie 대신 Session 방식을 사용하여 사용자 인증을 구현
    => Session 방식이 만능은 아님

'CERT' 카테고리의 다른 글

웹 해킹 실습 환경 구성  (3) 2024.10.05
Proxy 프록시  (0) 2024.08.16
웹취약점: 에러처리 취약점  (0) 2024.08.16
SQL Injection 취약점  (0) 2024.08.16
XSS(크로스 사이트 스크립트) 취약점  (0) 2024.08.16

+ Recent posts