티스토리 뷰
포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다.
20번 문제이다.

nickname, comment, capcha 텍스트 입력 부분과 10개의 랜덤 한 문자열, submit과 reset 버튼이 있다.
소스코드를 보자.

post형식으로 값을 전달하며, submit버튼 클릭 시 ck() 함수가 실행된다.
id와 cmt. captch의 값이 비어있으면 해당 칸을 포커싱 해주고,
captcha의 value가 lv5frm.captcha_.value랑 다르면 captch에 포커싱을 해준다.

lv5.frm.captcha_. value는 아마 10자리 랜덤 문자열인 것 같다.
일단 빈칸을 채운뒤 값을 넘겨주자.

제출하자.

너무 느리단다.
우리는 처음 부분에서 time limit : 2 second라는 부분에서 힌트를 얻을 수 있다.
쿠키값을 한번 살펴보자.

st에 숫자형 값이 들어가 있다.
하지만 우리는 저 값이 시간에 관련된 값이라 유추할 수 있다.
페이지 리다이렉션을 통해 확실히 시간에 관련된 값이라 알 수 있었고, 매 초마다 1씩 증가되었다.
따라서 우리는 문제를 풀기 위해 빈칸을 채우고, st부분을 페이지 리다이렉션 후 완료까지 시간을 2초 오차 이내로 변조하면 문제를 풀 수 있다.
한번 실행해보자.
페이지 리다이렉션과 동시에 윈도우 스톱워치를 작동하면 정확히 문제를 풀 수 있다.

시작을 했을 때 st값은 1649260050 이었다.
동시에 스톱워치로 시간을 측정하고, 값을 모두 입력했을 때 15초가 지났다.
따라서 st값을 1649260065로 변경하고 바로 submit을 누르면 문제는 해결된다.

문제 해결!
시행착오
1. post방식이라 무조건 burpsuite로 풀어야 하는 줄 알고 처음엔 burpsuite를 통해 해결하려고만 했었다.
앞으로는 문제를 정확히 분석하여 정확한 문제 해결 방식으로 접근하도록 연습해야겠다.
'SQL injection > webhacking' 카테고리의 다른 글
| Webhacking 22번 (0) | 2022.04.11 |
|---|---|
| Webhacking 21번 (0) | 2022.04.07 |
| Webhacking 19번 (0) | 2022.04.06 |
| Webhacking 18번 (0) | 2022.04.06 |
| Webhacking 17번 (0) | 2022.04.06 |
- Total
- Today
- Yesterday
- samron3
- 김영한 실전 자바 기본
- 김영한 실전 자바 중급
- 김영한 실전 자바 기초
- 백준
- 백준 피보나치
- zixem
- 백준 피보나치 수열
- static
- 프로그래머스
- samron
- Los
- 상속
- spring
- 프로그래머스 상품을 구매한 회원 비율 구하기 파이썬
- extends
- lord of sql
- 프로그래머스 상품을 구매한 회원 비율 구하기
- los 15단계
- 코딩테스트 준비
- ys.k
- los 15
- 기술스택
- 스프링
- webhacking.kr
- 코딩테스트
- 상품을 구매한 회원 비율 구하기 파이썬
- java
- 김영한
- 자바
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |