일단 쓰고보자

[los] troll 본문

모의해킹/Lord of SQLInjection

[los] troll

휘갈기갈기 2020. 4. 7. 11:01

#문제

#문제 의도

- 입력 값 필터링 규칙 (id)

if(preg_match('/\'/i'$_GET[id])) exit("No Hack ~_~");
if(
preg_match("/admin/"$_GET[id])) exit("HeHe");

  1) 싱글쿼터(')

  2) admin

- 목표

필터링을 사용하지 않거나 우회하여 쿼리 결과 id가 admin이면 해결

 

#확인사항

- 싱글쿼터를 우회해야하며, admin 문자를 concat() 함수? char()함수? 사용해서 이어볼까?

  → 다 훼이크다. 지난 orge, orc 문제에서 확인했던 사항 중 하나로, Mysql은 대소문자 구분을 안하는 걸 이용한 문제다.

- 필터링 구문의 preg_match() 함수를 잘 보면 싱글쿼터(') 막는 부분은 i 옵션이 들어가 있고, admin 은 그렇지 않다.

- i 옵션은 대소문자를 구분하겠다는 옵션인데, admin 문자열 필터링할 때 설정하지 않았단 걸 눈치채야한다.

- 어찌보면 되게 노골적인 문제.

- 정답은 admin 제외한 모든 대소문자 조합한 admin 문자열 (ADMIN, admiN, Admin ... 등)

'모의해킹 > Lord of SQLInjection' 카테고리의 다른 글

[los] skeleton  (0) 2020.04.07
[los] vampire  (0) 2020.04.07
[los] orge  (0) 2020.04.07
[los] darkelf  (0) 2020.04.07
[los] wolfman  (0) 2020.04.07