assassin

2022. 4. 5. 18:03Site/LOS

이번시간에는assassin을 풀어보겠습니다

공부하는 입장이니 틀린 것이 있더라도 양해부탁드립니다


소스코드를 보니 preg_match함수에서 '만 필터링해주고 = 대신 like를 사용했습니다

변수 result에 id값이 있다면은 해당 id값을 출력할 것이고

변수 result에 id값이 admin과 동일하다면 클리어입니다

따라서 admin의 id값을 알아내면 되겠네요

 

쿼리문에 like를 사용하면 일부만 값이 같아고 참이 되기 때문에

와일드 카드를 이용해 보려고 합니다

 

*

와일드카드

% -> 모든 문자열

%a -> a로 끝나는 모든 문자열

a% -> a로 시작하는 모든 문자열

_a -> a로 끝나는 2글자의 문자열

a_ -> a로 시작하는 2글자의 문자열

*

 

접근방법

pw like '0-9%'를 넣어주어 0-9로 시작하는 문자열중에 admin의 id값에 해당되는 첫번째 문자열을 찾습니다. 해당된다면 Hello admin을 출력겠죠.

 

0-9%값을 넣었더니 guest는 찾았는데 admin이 안보이는 것으로 보아 guest와 admin의 id값의 첫번째 문자열이 동일 한 것 같습니다

 

두번째 방법도 첫번째 방법과 마찬가지로 '90-9%'로 2번째 문자열을 찾아주겠습니다

0-9까지 2번째 문자열을 찾았을 때에도 admin은 출력되지않았습니다

따라서 2번째 값도 guest와 admin이 동일한 것 같습니다

 

 

세번째 값도 같은방법으로 해보니 2에서 admin이 출력이되어 클리어 됩니다

아마도 실제 pw값은 902 다음에 추가로 더 있을 것 같지만

3자리만 맞추어도 클리어되네요

'Site > LOS' 카테고리의 다른 글

zombie assassin  (0) 2022.04.06
succubus  (0) 2022.04.05
giant  (0) 2022.04.05
bugbear  (0) 2022.04.05
darknight  (0) 2022.04.05