TigerDemon

Authentication vulnerabilities 정의 및 공격 기법 본문

2025-SWLUG/웹해킹

Authentication vulnerabilities 정의 및 공격 기법

호랑2D 2025. 11. 10. 16:42

Authentication vulnerabilities 정의

공격자가 민감한 데이터와 기능에 접근하도록 허용할 수 있게 하는 보안 결함

추가적인 공격 표면을 노출해 더 큰 침투로 이어질 수 있다. 이런 이유로 인증 취약점을 식별하고 악용하는 방법, 일반적인 조치를 우회하는 방법을 배우는 것이 중요하다.

 

해당 주제에서 설명하고자 하는 것

  • 웹 사이트에서 흔히 쓰이는 인증 메커니즘들
  • 이들 메커니즘에서 발생할 수 있는 잠재적 취약점들
  • 서로 다른 인증 메커니즘 자체에 내재된 취약점(설계적 한계)
  • 잘못 구현했을 때 도입되는 전형적 취약점들
  • 자체 인증 메커니즘을 가능한 한 견고하게 만다는 방법

 

인증(Authentication)이란?

사용자나 클라이언트의 신원을 검증하는 과정

웹사이트는 인터넷에 연결된 모든 사람들에게 잠재적으로 노출되어 있기 떄문에 강력한 인증 매커니즘은 효과적인 웹 보안을 위해 필수적이다. 

1. Something you know(지식 기반 요인 - Knowledge factors)

ex) 비밀번호, 보안 질문의 답 등

2. Something you have(소유 기반 요인 - Possession factors)

ex) 모바일폰, OTP 토큰, 보안카드 등 물리적 장치

3. Something you are or do(고유 기반 요인 - Inherence factors)

ex) 지문, 얼굴 인식, 음성, 행동 패턴

-> 인증 메커니즘은 위의 한 가지 이상 요인을 검증하기 위해 다양한 기술에 의존한다. 

 

 

Authentication은 사용자가 자신이 주장하는 사람인지 확인하는 과정

Authorization(인가)은 사용자가 어떤 행동을 할 수 있는지(권한이 있는지)를 검증하는 과정

순서 

  1. Strawberry123이라는 사용자 이름으로 웹 사이트에 접속
  2. (인증 Authentication) - 그 계정을 만든 같은 사람인지 여부 확인
  3. 인증 완료
  4. (인가 - Authorization) - 받은 권한에 따라 수행할 수 있는 동작 결정

 

인증 취약점 발생 원인 및 영향

발생

1. 인증 매커니즘이 약할 때 

-> 무차별 대입(brute-force) 공격을 적절히 방어하지 못할 때 발생

2. 로직 결함 또는 잘못된 코딩(구현 오류)이 있을 때

-> 공격자가 인증 과정을 완전히 우회할 수 있게 되는 경우

 

영향

  • 다른 사용자의 계정을 아래와 같은 상황으로 침입한다고 가정
  • 만약 공격자가 인증 절차를 우회
  • 무차별 대입(brute-force) 공격
  • -> 그 계정이 가진 모든 데이터와 기능에 접근 가능
  • 만약 공격자가 "시스템 관리자(system administrator)"처럼 높은 권한을 가진 계정을 탈취한다고 가정
  • -> 애플리케이션 전체를 완전히 장악하고 내부 인프라까지 접근 가능
  • 만약 공격자가 권한이 낮은 일반 사용자 계정을 탈취한다고 가정
  • -> 공격자는 원래 접근할 수 없어야 할 "상업적으로 민감한 정보(business confidential data)"에 접근 가능