티스토리 뷰
SCP 동아리에서 학과 행사로 주최한 CTF로 초보자들을 위한 난이도입니다.
제가 출제했던 WEB 문제들의 출제 의도와 write-up입니다.
문제 이름 : Can U f1nd Me?
출제 의도
-> 1. URL에 취약점이 존재하는 웹 사이트를 보고 directory listing 취약점을 알 수 있는지 확인
2. 간단한 javascript 코드를 이해할 수 있는지를 확인
문제 풀이
url = http://34.70.105.124:8082/home.html
url = http://34.70.105.124:8082/about.html
url = http://34.70.105.124:8082/contact.html
상단의 navbar의 기능을 누를 때마다 페이지가 변경되면서
url이 변경되는데 모두 http://34.70.105.124:8080/ 뒤의 부분만
각각 home.html, list.html, contact.html 로 변경된다.
그래서 경로에서 바뀌는 부분인 파일명을 지워주자
예상대로 디렉토리 리스팅이 발생한다.
출력된 리스트 중 누가봐도 수상한 flag.php에 들어가면 문제가 나타난다.
비밀번호를 입력하라는 창 외에는 다른 정보는 드러나 있지 않다.
그렇다면 개발자 모드(f12)를 눌러서 코드를 읽어보자.
코드를 읽어보면 간단한 javascript 소스가 보인다.
- substring - 문자열의 길이를 기준으로 자른다고 표현하기보다는 일정 문자열을 반환하는 함수
- substring(시작인덱스, 종료인덱스);
- ex ) var string = '1997-01-07';
- var year = string.substring(0,4) //1997
- var month = string.substring(5,7) //01
- var month = string.substring(8,10) //07
그래서 if(check.substring(0,str) == 'scpC') { } //이게 참이 되려면 0에서 3까지의 문자열이
scpC 가 되어야하는 것이다.
마찬가지로 다음 if(check.substring(str4,str5) == 'scpC') { } 가 참이 되려면 16에서 19까지의
문자열이 nNY_가 되어야 한다.
모든 코드를 다 읽어보면
0~3 - scpC
16~19 - nNY_
24~17 - hAcK
12~15 - _Fun
20~23 - W3B_
4~7 - TF{s
8~11 - S00o
28~31 – 1n9}
이걸 순서대로 정리해보면
0~3 – scpC
4~7 - TF{s
8~11 - S00o
12~15 - _Fun
16~19 - nNY_
20~23 - W3B_
24~17 - hAcK
28~31 - 1n9}
// scpCTF{sS00o_FunnNY_W3B_hAcK1n9}
'외부 활동 > 외부 활동' 카테고리의 다른 글
JBU CTF WEB 7번 문제 & write-up (0) | 2020.04.03 |
---|---|
JBU CTF WEB 5번 문제 & write-up (2) | 2020.03.08 |
JBU CTF WEB 4번 문제 & write-up (0) | 2020.03.08 |
JBU CTF WEB 3번 문제 & write-up (0) | 2020.03.08 |
JBU CTF WEB 2번 문제 & write-up (0) | 2020.03.08 |
- Total
- Today
- Yesterday