[웹해킹] Authentication vulnerabilities_Password reset broken logic Writeup

2025. 2. 21. 20:31·Writeup

그동안 블로그에 리버싱 네트워크 어셈블리 다양하게 다뤘으나

사실 나의 최애 분야는 웹해킹이다.. (근데 요즘 리버싱에 좀 흔들리고 있다)

이번엔 Portswigger Web Security Academy의 랩 중에서

Authentication 인증 취약점 중 Password reset broken logic 문제를 풀어보자

 


 

 

비밀번호 리셋 기능에 취약점이 있다고 한다

주어진 계정 wiener:peter를 활용해서 carlos 패스워드를 변경해서 로그인하는 시나리오

 

 

burpsuite repeater에 넘기는 게 더 중요해서 여기는 대강 설명만 하고 넘어가자면

forgot password?에서 wiener의 이메일 계정으로 비밀번호를 리셋하는 과정이다

 

 

저기 주어진 url에 들어가면 새로운 패스워드를 설정할 수 있다

새로운 패스워드를 설정하는 경로는 대충 알았으니 과정에서 통신했던

HTTP 트래픽들을 살펴보고 어떻게 취약점을 이용할 수 있는지 보겠음

 

 

POST 메소드 중 temp-forgot-password-token이 적힌 패킷을 발견했다

이걸 burp repeater에 보내기

 

temp-forgot-password-token 값을 임의로 바꿔도 작동하는 것 같다

→ 토큰 값 검증이 이루어지지 않음!

 

방금 비밀번호 리셋한 과정 그대로 carlos의 비밀번호도 변경할 수 있겠다

 

 

방금 했던 과정을 다시 거쳐서 repeater에 파켓을 가져왔다

 

(중간에 노트북이 혼자 꺼져서 다시 키는 바람에 토큰이나 여러 값이 앞이랑 다를 수 있음 주의)

 

temp-forgot-password-token 값과 유저네임, new-password을 바꾸면 될 것 같다

이 파켓을 repeater에 보냈다

 

 

temp-forgot-password-token부분을 아예 삭제하고

username에 carlos 비밀번호는 test를 넣고 send→follow redirection

 

처음에 계속 실패해서 다른 분들 writeup을 찾아봤는데

내가 follow redirection까지 안하고 send만해서 반영이 안되었던 것 같다

 

리피터에서 변경한대로 carlos:test 이렇게 로그인을 시도하니

로그인에 성공했다

 

 

 

 

Password reset broken logic lab의 취약점

 

가장 핵심적인 취약점은 temp-forgot-password-token 토큰 값의 검증이 없다는 것이다.

토큰 값을 삭제하거나 조작해도 정상적으로 패스워드를 리셋할 수 있었고 심지어는 username 역시 임의로 변경이 가능했기 때문에 다른 사용자의 계정에 접근할 수 있음을 알 수 있다.

클라이언트 측의 요청을 처리할 때, 서버에서 반드시 토큰 검증을 하고, 시간제한과 1회성 등으로 검증을 강화해야 한다.

 

 

'Writeup' 카테고리의 다른 글

[웹해킹] Username enumeration via different responses - lab writeup  (0) 2025.02.23
[Dreamhack] 리버싱 rev-basic-4 Writeup  (0) 2025.02.22
[Tryhackme] Compiled 리버싱 Writeup  (0) 2025.02.21
[Dreamhack] 리버싱 rev-basic-3 Writeup  (0) 2025.02.20
[Dreamhack] 리버싱 rev-basic-2 Writeup  (0) 2025.02.20
'Writeup' 카테고리의 다른 글
  • [웹해킹] Username enumeration via different responses - lab writeup
  • [Dreamhack] 리버싱 rev-basic-4 Writeup
  • [Tryhackme] Compiled 리버싱 Writeup
  • [Dreamhack] 리버싱 rev-basic-3 Writeup
이둥둥
이둥둥
"><script>prompt(document.cookie)</script>
  • 이둥둥
    시골쥐 해커
    이둥둥
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • 방통대 N
      • 리버싱
      • 웹해킹
      • 악성코드 분석
      • Defensive
      • 네트워크
      • 포렌식
      • Writeup
      • 클라우드
      • 사이버보안
      • Troubleshooting
      • 취준
  • 블로그 메뉴

    • 홈
    • 사이버보안
    • 방통대
    • 독후감
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    리버싱
    사이버보안
    독후감
    CTF
    tryhackme
    burpsuite
    악성코드분석
    정보보안
    웹해킹
    hackthebox
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
이둥둥
[웹해킹] Authentication vulnerabilities_Password reset broken logic Writeup
상단으로

티스토리툴바