webhacking.kr 26번 [문제풀이]
- 해킹/웹해킹
- 2019. 3. 26.
webhacking.kr 26번 [문제풀이]
안녕하세요.
오늘은 webhacking.kr의 26번 문제를 풀어보려고 합니다.
그럼 문제를 풀기위해 webhacking.kr로 들어갑시다.
웹해킹 26번 풀이[100점]
웹해킹 26번문제에 들어가면 아래와같은 초기화면이 보입니다.
검은 배경에 index.phps라는 문자가보입니다.
링크인거같으니 들어가보겠습니다.
index.phps 링크를 누르니 아래 사진처럼 코드를 보여줍니다.
별다른건 없고 if문쪽을 보겠습니다.
if문쪽을 보니 id를 admin으로 주면 되는 것 같습니다.
어? 그런데 아이디 입력하는곳이 아무리 찾아도 보이지 않습니다.
이럴땐 그냥 주소창에다 입력하면 된다는것을 생각해냅니다.
주소창에 ?id=admin을 입력해줍니다.
엉...? 왜 no!가 나오지? (실수입니다. 쉿!)
그래도 no가 나오는걸보니 이렇게 추가해주는게 맞는 것 같습니다.
그러고보니 아까 봤던 index.phps코드에서 urldecode라는 문구가 보였습니다.
기억나시나요?
기억 안나시면 위로 다시 올려서 코드좀 보고오세요.
url인코딩된 문자를 url디코딩하는 코드가 보일겁니다.
admin을 url인코딩을 해봅시다.(url 인코딩표 찾아서 인코딩해보세요.)
admin ->%61%64%6D%69%6E <----아마 이렇게 인코딩될겁니다.
이걸 다시 주소창에 입력해보도록 하겠습니다
주소창에 ?id=%61%64%6D%69%6E을 추가했는데 no!가 나오신다고요?
당연합니다.
주소창에서 한번 더 디코딩이 되거든요.
즉 url인코딩->주소창에 입력->주소창에서 디코딩-> 코드에서 디코딩 이렇게 되는 것입니다.
그러니 url인코딩을 한번 더 하겠습니다.
이번에는 멀리 가지 않고 그냥 webhacking.kr에서 url인코딩을 하겠습니다.
(아래 사진처럼 하시면 됩니다.)
admin--> %2561%2564%256D%2569%256E
다시 주소창으로 가서 방금 url인코딩한 admin을 추가해서 로그인해봅시다.
추가하고 엔터를 눌러주니 해결된 것을 확인할 수 있었습니다.
(한번 풀었던거 또푸는거라 저는 아래 사진처럼 나옵니다.)
아! 참고로 저는 이 부분을 따로 배우거나 하지 않아서 매우 야매일 수 있습니다.