728x90
Q5. wolfman
문제
해결 과정
* preg_match( $ pattern , $ subject, $ matches )
문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수
- $ pattern : 문자열로 검색할 패턴
- '/a/' : a를 필터링
- '/\'/' : 특수문자 ' 필터링
- '/admin/'i : i를 붙이면 대소문자 구분 없이 필터링
- $ subject : 입력 문자열
사용자 input이 담긴 php 변수를 넣는다
- $ matches : 사용 시 패턴에 매치되는 내용을 배열에 담아둠
사용자가 설정한 값과 input값이 일치하는 경우 문자열 형태로 $match에 기록한다
> 따라서 코드를 보면 아래와 같은 문자열을 필터링하고 있다고 알 수 있다
1. prob
2. _
3. .
4. ()
5. 공백
* 공백을 필터링 하고 있기 때문에 아래 공백을 대체할 문자를 사용하겠습니다
문자 | 16진수(Hex) |
tab | %09 |
line feed | %0a |
vertical tab | %0b |
from feed | %0c |
carriage return | %0d |
id 를 admin으로 하고 공백 문자를 사용하여 문제를 진행해 보겠습니다
- tab ( %09 ) 사용
?pw='%09or%09id='admin'%23
- line feed ( %0a ) 사용
?pw='%0aor%0aid='admin'%23
- vertical tab ( %0b )
- from feed ( %0c )
- carriage return ( %0d )
'보안 > Wargame' 카테고리의 다른 글
[Load of SQL Injection] 7번 orge (0) | 2024.01.17 |
---|---|
[Load of SQL Injection] 6번 darkelf (0) | 2024.01.17 |
[Load of SQL Injection] 4번 orc (0) | 2024.01.13 |
[Load of SQL Injection] 3번 Goblin (0) | 2024.01.13 |
[Load of SQL Injection] 2번 Cobolt (0) | 2024.01.13 |