본문 바로가기

Web Hacking/Webhacking.kr

[Webhacking.kr] old-19 write up

 

일단 풀긴했는데 의도와는 다른 풀이인 것 같다..

 

 

문제에 들어가면 바로 저 화면은 아닌데 입력폼 하나가 존재한다. guest를 치면 hello guest라는 문자열이 리턴된다. admin을 쳐봤다.

 

 

다음과 같은 문자열이 나온다. 게싱이 필요한 문제 같다.. 먼저 코드를 확인했지만 별다른 단서가 없어서 쿠키를 봤다.

 

 

일반 문제와 다르게 userid라는 쿠키값이 존재한다. 처음에 추측한 걸로는 userid값이 내가 guest를 입력한다면 guest에 대한 암호화 값이라고 생각했다. 일단 base64는 길이가 너무 길기 때문에 아닌 것 같았다.

 

그러던 와중, admin 문자열을 필터링하고 있다고 생각해서 admi%00n을 넣어서 admi까지만 인식하게 했다. 그랬는데 풀림 ㄷㄷ

 

풀린 이유를 생각해보면 userid 쿠키값이 admin 문자열을 암호화된 값이면 풀릴텐데 서버측에서 admin은 필터링하고 있어 우회되었지만 쿠키를 설정해줄땐 모두 가져다 쓰다보니 쿠키값이 설정된 것 같다.

 

 

내 서버에서 테스트 결과 중간에 널값이 들어가 있으면 필터링이 우회가 된다. 그러나 $_GET["test"]의 값을 찍어보면 admin이 나온다.

 

어차피 sha256 해시화를 해본 상태라 해시함수 하나씩 넣어보며 풀었을거 같긴하다.

 

 

 

 

 

 

'Web Hacking > Webhacking.kr' 카테고리의 다른 글

[Webhacking.kr] old-44 write up  (0) 2024.03.26
[Webhacking.kr] old-51 write up  (0) 2024.03.25
[Webhacking.kr] old-45 write up  (0) 2024.03.20
[Webhacking.kr] old-43 write up  (0) 2024.03.17
[Webhacking.kr] old-49 write up  (0) 2024.03.17