[어설픈] webhacking.kr 4번 문제풀이

2018. 12. 31. 20:21Web Hacking/Webhacking.kr

안녕하세요! webhacking.kr 문제중

쉬운편에 속하는 150점짜리 4번문제 풀어보도록 하겠습니다!


자 들어가보니 바로 이런식으로 뜨네요!

password를 제출할 수 있게 되어 있고!

위에 엄청 긴 문자열이 적혀있네요!


혹시 몰라서 항상 그렇듯,

F12눌러서 개발자 도구를 켜봤는데 아무 힌트도 없더라구요..


그래서 아 저 녹색이를 어떻게든 조져봐야 겠구나!

라고 생각했습니다


근데 이거는 좀 웹해킹 문제들을 풀면서

암호화 방식에 좀 낯익은 사람들이 아니면 풀기

어려울 수도 있어요!


왜냐면 마지막에 ==가 있다는 것은

거의 base64 인코딩이 되어 있다는 거거든요!

그래서 저는 바로 base 64 인코딩을 돌리러 갔습니다!





바로 webhacking.kr 로그인하면 뜨는 페이지인데,

여기에 저희가 decode할 문자열 입력하고 <- base 64 이걸 눌렀습니다 


그랬더니 아래처럼 뜨네요!

그래서 오 설마 한번 더 하면 되나? 해서

한번 더 <-decode 64를 눌렀더니......


아래와 같이 이상하게 뜨네요..

브라우저 오류인가 해서 다시한번 해봤는데도!

결과는 같길래... 이 방법이 아니라

다른 암호화 방식이 적용 되었나? 라고 생각했죠



그러다가 암호화된 문자열을 계속 유심히 살펴보니 16진수로 암호화 된거 같더라구요!

이거는 구글링을 좀 했습니다!

암호화 방식도 다양하고 어떤 방식에 부합하는 지 계속 찾았거든요!


16진수는 4개의 bit로 표현 할 수 있잖아요?

8진수는 3개의 비트

4진수는 2개의비트

저희가 잘 알고잇는 2진수는 1개의 비트 


그런데 그런 16진수가 40개나 있으니 

[※각자리가 16진수임]

c부터 2까지요(c4033bff94b567a190e33faa551f411caef444f2)

4bit *40= 160bit이네요!


그래서 구글에서 160bit로 암호화 하는 기술이 뭐인지 찾아보니까 sha1이 뜨길래 

요 방식으로 복호화를 시도해 봤습니다!!



한번 했는데 유사한 형식으로 구성된 암호가 뜨길래,

한번 더 복호화를 진행했더니!


짜잔! 바로 test라고 최종적으로 저희가 원한 평문(일반 문자)가 뜨네요!

그래서 이걸 가지고 auth가서 인증하니

문제가 풀렸네요!!


이번 문제는 생각보다 간단한 문제였는데,

나름의 배경지식이 필요한 문제였습니다!!