본문 바로가기

web/Bug Bounty 리포트 리뷰

Email OTP/2FA Bypass - hackerone report #2315420

 

Report Info

  • URL (보고서 URL) : https://hackerone.com/reports/2315420
  • Title (보고서 제목) : Email OTP/2FA Bypass
  • Reported to (신고 대상) : Drugs.com
  • Reported date (보고 날짜) : 2024. 6.16
  • Severity (취약 정도) : Critical (9.8)
  • Weakness (취약점) : None
  • Bounty (보상금) : None

Description

해당 리포트의 내용은 상당히 간단합니다. 대상 사이트는 로그인 후 이메일 인증을 통해 2단계 인증을 수행하도록 요구합니다. 그러나, 쿠키 중 bb_refresh라는 쿠키가 있는데 해당 쿠키의 내용을 삭제하면 2단계 인증 없이 해당 로그인한 세션으로 정상적으로 해당 사이트를 사용할 수 있게 됩니다.

 

로그인 화면

 

위와 같이 아이디와 패스워드를 입력한 후 로그인하게 되면 아래와 같이 이메일 인증을 요구합니다.

 

로그인 후 이메일 인증 요구

 

해당 리포트에 따르면 로그인할 경우 여러 쿠키가 생성되는데 그 중 'bb_refresh' 쿠키를 삭제하고 다른 페이지로 이동하게 되면 해당 인증을 우회할 수 있다고 합니다.

 

로그인 후 생성되는 쿠키 일부

 

현재는 해당 쿠키를 삭제할 경우 현재 세션을 날리고 다시 로그인을 하도록 요구합니다. 해당 취약점이 발생하게 된 정확한 원인은 해당 서버에서 사용하는 인증 로직을 알 수 없기 때문에 확인할 수 없지만, 아마 해당 쿠키의 값을 확인하고 2차 인증을 수행하도록 하는 로직이 존재하는데, 해당 값이 존재하지 않을 경우 처리하는 로직이 잘못되어 발생한 취약점이지 않을까 싶다.

 

느낀 점

리얼 월드에서 발생하는 취약점은 내 생각보다 예상치 못한 곳에서 발생하는 것 같다. Black Box Testing 형식의 Wargame 문제도 여러 번 풀어보았지만 위처럼 단순히 쿠키 하나를 삭제해서 발생하는 취약점의 형태는 처음 접하였다. 위와 같은 생각을 할 수 있을 정도로 되려면 역시 여러 경험을 쌓아야할 것 같다.