728x90
반응형

웹~





간단한 php 코드다.



$i 0;

$i에 0을 넣고, 



$fruit "apple,banana,strawberry,melon,
lemon,pear,mango,orange,coconut,grapes,peach"
;
$fruit explode(','$fruit);
foreach(
$fruit as $e) {
    
$a[$i] = $e;
    
$i++;
}

fruit의 있는 문자열들을 ','을 기준으로 $a[]에 배열로 집어넣는다.




if($a[0][4] != "w") exit();
solve();

$a[0][4] 가 w이어야 flag가 나온다. 위 코드대로 본다면 $a[0][4]는 apple의 'e'가 된다.

그렇다면 배열의 순서를 바꿔서 $a[0]이 strawberry가 오도록 하게 하면 된다.

그럴려면 foreach구문에서 apple이 $a[-2]부터 들어가도록 하면 되고, $i의 처음 값이 -2부터 시작하면 된다.


그런데 $i의 값은 0으로 되어있다. 이걸 어떻게 바꿀 수 있을까?



바로 extract($_COOKIE); 를 이용해주면 된다. 쿠키값을 이용해 변수값을 내 마음대로 조작할 수 있다. 더구나 $i가 선언된 이후에 이 구문이 있기 때문에 $i의 값을 조작할 수 있다.


따라서 쿠키를 통해 i=-2를 보내주면 된다. 간단하게 크롬 확장프로그램을 이용하자.



쿠키값을 설정하고 새로고침하면




클리어


FLAG : 1s_thIs_to0_e45y~?



728x90
반응형

+ Recent posts