Wargame.kr
Web_550
type confusion
php의 data type에 관련된 문제같습니다. 문제를 확인해봅시다.
텍스트박스 하나와 check 버튼 하나가 우릴 맞이해주고있습니다.
view-source 링크를 타고 소스를 확인 해 보죠.
gen_key 함수에서 uniqid 함수와 sha1 암호화를 통해 키를 생성하는데, usleep 함수때문에 프로그래밍을 통한 때려맞추기는 못할 듯 싶습니다.
그렇다면 답은 if문에 있을 것입니다.
if문을 지나게 되면 json 형식으로 code 값에 true를, flag 값에 Key값을 넣어 return 해주네요.
util.js 부분을 살펴봅시다.
아까 소스에서 확인했던 code 부분이 true 일 때 flag를 뱉어주네요.
구글링을 통해 확인 한 php 비교연산 테이블입니다.
"php"라는 문자열과 TRUE의 값을 비교했을 때 TRUE를 반환하는 것을 알 수 있습니다.
우리가 json의 key value에 true를 넣어준다면 if문이 우회가 될 것입니다.
네. 생각대로 flag를 뱉어줍니다.
References
- Chris Smith_(PHP Magic Tricks: Type Juggling)
'Wargame > Wargame.kr' 카테고리의 다른 글
[Wargame.kr] Web_600_SimpleBoard (0) | 2016.05.21 |
---|---|
[Wargame.kr] Web_600_tmitter (0) | 2016.05.20 |
[Wargame.kr] Web_550_strcmp (0) | 2016.05.18 |
[Wargame.kr] Web_500_md5 password (0) | 2016.05.18 |
[Wargame.kr] Web_500_md5_compare (2) | 2016.05.18 |