본문 바로가기
개발자 (Developer)/Hacking CTF

(인증 CTF 풀이2) OTP 우회

by 하늬아시 2023. 4. 9.

인증 CTF 2 - OTP 우회

 

사용 툴은 Burp Suite(버프라 부르겠습니다.)입니다.

 

사전 정보 : OTP 인증을 뛰어넘으세요!

일단 사이트를 들어가 봅시다.

 

 

오... 핵미사일을 발사하는 시스템인가 보네요. Fire 버튼을 한번 눌러볼게요.

 

 

한번 더 눌러볼까요?

 

 

오호

드디어 관리자 인증 비밀번호를 입력하는 곳이 나왔네요.

 

 

비밀번호 요청/응답이 어떻게 받는지 알기 위해 비밀번호 입력칸에 "1234"만 입력하고 인증 버튼 눌러볼게요.

그리고 버프 Proxy - HTTP history 탭에서 요청/응답이 어떻게 이루어지는지 봅시다.

비밀번호인데 POST 메서드가 아니라 GET 메서드로 보냈네요... 흠.....

GET 메소드로 보내서 URL에 admin_pass=1234라는 비밀번호가 노출되어 보이는 것을 볼 수 있습니다.

그리고 가장 중요한 것은 빨간색으로 표시한 URL을 보시면 step1.php, step2.php라고 쓰여 있는 것을 볼 수 있습니다.

이렇게 규칙적으로 해두면 step3.php가 있을 수 있다는 유추가 가능해집니다. step3.php로 들어가 볼게요.

 

 

아래 주소처럼 URL을 step3.php로 들어가 봤습니다.

어라?

"발사를 원하시면 아래 버튼을 클릭해 주세요."라는 처음 보는 문구가 뜨네요.

비밀번호를 건너뛰고 바로 관리자로 들어왔네요!!

그럼 핵미사일 발사를 해볼게요. Fire!!!

 

 

여기에 정답이 뜨는 것을 보아 취약점이 맞았네요.

 

 


방안

URL도 파일이 추측 불가능하게 만들어야 합니다.

파일 이름을 숫자 순서대로 하면 쉽게 해킹당하기 쉽습니다.

그리고 개발할 때도 이 파일이 어떤 파일인지 헷갈릴 수 있음으로 되도록 영어단어로 지어주는 것이 좋습니다.

요즘 챗GPT 유행인데 챗GPT가 아주 잘 지어줍니다. 챗GPT도 숫자로 순서대로 안 지으니 파일명 지어주기 힘드시면 챗GPT를 이용해 보세요.

 

위에는 제가 생각해낸 대책방안이기 때문에 구글링하면 더 많은 보안 대책방안이 있을 겁니다.

 

ㄲ!

댓글


// code block - line num // code block - copy // code block - lan