본문 바로가기

old/Cyber Security

웹 해킹 예제: 인증과 인가 취약점_CTF: Write

반응형

목표

계정 sfUser / sfUser1234 로 로그인한 뒤, 공지사항에 게시글을 작성하세요!

연습한 웹싸이트

http://ctf.segfaulthub.com:3481/auth5/

공격

공격순서

일단 로그인

아이디와 비밀번호가 주어졌으므로, 일단 로그인을해서 공지사항과 게시글을 읽어본다

글쓰기 혹은 글수정 소스코드에서 찾기

위 리스트는 웹싸이트 접속후, 아이디와 비밀번호로 로그인하여, 공지사항의 글까지 클릭하기까지 사용된 요청과 응답 리스트이다.

위 소스 코드들을 하나씩 읽어가며 혹시 글 작성이나 글 수정을 주석처리하여 숨겨놨는지 확인한다.

그런게 없는것을 확인.

소스코드에 숨겨논 글작성 버튼이 없다

이때에는 위의 URL을 유심히 살펴본다

웹 개발자는 HTTP주소를 아래와 같이 설정했다

/auth5/index.php
/auth5/login.php
/auth5/notice_list.php
/auth5/notice_read.php?id=44&view=1

즉 글 생성은 create, write, make등의 단어를 사용했을 가능성이 높다.

그렇다면, 글 수정은 edit, modify등의 단어를 사용했을 것이다.

/auth5/notice_write.php

가능성이 있는 방법을 시도해 보면

http://ctf.segfaulthub.com:3481/auth5/notice_write.php가 정답이라는 것을 알수 있다.

게시글을 작성하면 필요한 flag를 얻을수 있다.

정리

이번 공격은 공격자의 센스를 필요로 한다. 웹개발을 해본적이 있다면 알겠지만, 윂페이지 수가 수십개는 가뿐하게 넘어가므로, http주소는 최대한 이해하기 쉽고 간결하게 작관적으로 짓는다. 스스로도 햇갈릴수도 있고. 여러명의 웹 개발자들이 협업하여 개발을 하기 떄문이다.

반응형