본문 바로가기

wargame/los

los bugbear



los bugbear 풀이를 하겠습니다.


일단 소스코드는 아래와 같습니다.



인자값으로는 pw 와 no 두개가 있는데요

일단 pw 에는 싱글쿼터를 필터링 해서 pw를 이용하여 injection을 하는 것을 불가능 할 것 같습니다. no도 싱글쿼터를 필터링 해서 pw에 \로 우회 시킨다고 해도 싱글쿼터를 사용하지 못하므로 최종적으로 pw는 사용하지 못합니다.


그러면 no를 이용하여 injection을 해야합니다.


or and 는 || 와 %26(&)으로 우회를 하면 됩니다.

공백도 필터링이 걸려있습니다. 그러면 %0a~%0d 를 이용해서 우회를 해도 되고 /**/를 이용해서 우회 해도 됩니다.


 substr을 막아 놨네요

마지막 if문을 보면 blind입니다. 비밀번호를 알아내야하므로 left,right를 이용하여 사용하시면 되겠습니다.


= 랑 like를 필터링 걸어놨으므로 IN("")을 사용하시면 됩니다. 최종적인 쿼리는 


 




left, right 또 IN, %0a~%0d 사용법에 대해서는 공부해보시는게 도움이 되실거라고 생각합니다.

하나씩 비밀번호를 유추해야하는데 길이는 LENGTH(pw) 같은 방법으로 하시면 됩니다.







입니다.




'wargame > los' 카테고리의 다른 글

giant  (0) 2017.04.30
los bugbear  (0) 2017.04.30
los darkknight  (0) 2017.03.17
los golem  (0) 2017.03.17
los SKELETON  (0) 2016.12.18
los vampire  (0) 2016.12.18