level19[old]

2022. 4. 13. 21:50Site/Webhacking.kr

이번시간에는 level19를 풀어보겠습니다

공부하는 입장이니 틀린것이 있더라도 양해부탁드리겠습니다


level19에 들어가 보니 id를 입력하고 제출하라고 나타납니다.

admin을 입력하고 제출했습니다.

you are no admin이라고 나타납니다.

쿠키값을 확인해보니 이상하게 암호화된 값이 보입니다. 그런데 익숙한 %3d가 보입니다.

%3d 는 = 을 url인코딩 값입니다. 어떤 암호화로 설정되었는지 찾아보니 base64 암호화 기법은 =으로 끝나는 특징이 있다고 합니다. 즉 위 쿠키값은 base64로 인코딩된 값입니다.

ex) admin -> YWRtaW4=[base64 Encoding], hi -> aGk=[base64 Encoding]

 

위 쿠키값을 base64로 디코딩시켜주면은 될 것 같습니다.

MjUxMGMzOTAxMWM1YmU3MDQxODI0MjNlM2E2OTVlOTE4NjVjMGMwYjRhYjBlMDYzZTVjYWEzMzg3YzFhODc0MQ%3D%3D

2510c39011c5be704182423e3a695e91865c0c0b4ab0e063e5caa3387c1a8741

 

그런데 알수없는 값이 나옵니다. 여기서 멘붕이 와서 삽질하다가 답이 안나와 찾아본 결과

문자열 -> md5암호화->base64인코딩->url인코딩 ==  쿠키값인 것을 알게 되었습니다. [url->base64까진 알았는데 md5에서 막혔네요...]

 

md5 encode

h->2510c39011c5be704182423e3a695e91

i->865c0c0b4ab0e063e5caa3387c1a8741

->2510c39011c5be704182423e3a695e91865c0c0b4ab0e063e5caa3387c1a8741

 

제가 입력한 hi를 md5 encode시켜주니 쿠키값을 base64로 디코딩된 값과 동일합니다.

즉 base64로 decode시켜주었던 값이 encode한 md5값이 확인이 되었네요...

 

이 문제를 클리어하기 위해선 admin으로 로그인을 해야되기 때문에

admin 각 글자를 

md5 -> base64 -> url 로 인코딩해준다음 쿠키값에 넣어주면 클리어 될 것 같습니다

 

md5 encode

a : 0cc175b9c0f1b6a831c399e269772661

d : 8277e0910d750195b448797616e091ad

m : 6f8f57715090da2632453988d9a1501b

i : 865c0c0b4ab0e063e5caa3387c1a8741

n : 7b8b965ad4bca0e41ab51de7b31363a1

 

 

base64 encode

MGNjMTc1YjljMGYxYjZhODMxYzM5OWUyNjk3NzI2NjE4Mjc3ZTA5MTBkNzUwMTk1YjQ0ODc5NzYx
NmUwOTFhZDZmOGY1NzcxNTA5MGRhMjYzMjQ1Mzk4OGQ5YTE1MDFiODY1YzBjMGI0YWIwZTA2M2U1
Y2FhMzM4N2MxYTg3NDE3YjhiOTY1YWQ0YmNhMGU0MWFiNTFkZTdiMzEzNjNhMQ==

 

 

url encode

MGNjMTc1YjljMGYxYjZhODMxYzM5OWUyNjk3NzI2NjE4Mjc3ZTA5MTBkNzUwMTk1YjQ0ODc5NzYx%0ANmUwOTFhZDZmOGY1NzcxNTA5MGRhMjYzMjQ1Mzk4OGQ5YTE1MDFiODY1YzBjMGI0YWIwZTA2M2U1%0AY2FhMzM4N2MxYTg3NDE3YjhiOTY1YWQ0YmNhMGU0MWFiNTFkZTdiMzEzNjNhMQ%3D%3D

 

 

추가적으로 찾아보니 위 문제를 sql injection 기법으로도 풀수있는 것 을 발견했습니다.

get방식으로 전달하기 때문에 url에다가 id 값을 admin으로 주로 이하는 주석처리를 해주면 됩니다.[배운걸 응용못하네요...]

 

 

cf) base64, md5 복습 좀 해야 될 것 같습니다

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

level3[old]  (0) 2022.04.15
level11[old]  (0) 2022.04.15
level31[old]  (0) 2022.04.12
level61[old]  (0) 2022.04.12
level58[old]  (0) 2022.04.10