SQL injection/webhacking
Webhacking 11번
ys.k
2022. 3. 21. 20:08
포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다.
11번 웹페이지이다.
간단하게 보인다.
소스코드를 보자.
실제론 더 있지만, 문제 해결에 필요한 부분만 가져왔다.
val로 파라미터를 입력받으며, pat과 비교하여 일치하면 문제는 해결된다.
일단 함수부터 제대로 알아보자.
preg_match(a, b, [c]) // a의 값을 b에서 매칭 시켜 일치하면 1 그렇지 않으면 0을 반환한다. 검색된 결과는 c배열로 반환된다.
$_SERVER[REMOTE_ADDR] // 웹페이지에 접속한 원격 ip를 가져온다.
$pat을 살펴보자.
[1-3] // 1부터 3까지 하나를 의미한다.
[a-f] // a부터 f까지 하나를 의미한다.
{5} // 이전에 있는 [a-f]를 5번 받는다.
_ // 그냥 _
. // 하나의 문자열
* // 0개 이상의 문자열
이제 조건에 맞게 최소화된 파라미터를 입력해주자
쿼리 : ?val=1aaaaa_127.0.0.1%09p%09a%09s%09s // 여러분은 127.0.0.1 대신 외부 ip를 입력하면 된다.
문제 해결
시행착오
1. 정규식에 대해 새롭게 배우게 되었다.