쉽고 깔끔하게
문제 https://los.rubiya.kr/chall/nightmare_be1285a95aa20e8fa154cb977c37fee5.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 id와 pw의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) prob 2) _ 3) . 4) ( ) 5) # 6) - 또한 pw의 입력값의 길이가 6이 넘지 않아야 한다는 조건이 있다. (strlen()) ..
문제 https://los.rubiya.kr/chall/zombie_assassin_eac7521e07fe5f298301a44b61ffeec0.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 id와 pw의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) prob 2) _ 3) . 4) ( ) addslashes() : DB의 질의에서 처리할 필요가 있는 문자 앞에 백슬래시(\)를 붙인 ..
문제 https://los.rubiya.kr/chall/succubus_37568a99f12e6bd2f097e8038f74d768.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 id와 pw의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) prob 2) _ 3) . 4) ( ) 5) ' 여기서 가장 중요한 점은 ' 을 필터링 한다는 점이다. 따라서 preg_match의 필터링을 피하기..
문제 https://los.rubiya.kr/chall/assassin_14a1fd552c61c60f034879e5d4171373.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 pw의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) ' pw가 like 구문을 통해 입력받고 있는 것을 볼 수 있다. ※ LIKE 연산자의 대표 문자 대표 문자 % _ # 의미 모든 문자를 대표함 문자 하나..
문제 https://los.rubiya.kr/chall/giant_18a08c3be1d1753de0cb157703f75a5e.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 shit의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) space (공백) 2) \n 3) \r 4) \t 또한 shit의 입력값의 길이가 1이 넘지 않아야 한다는 조건이 있다. (strlen()) ※ 문제를 해..
문제 https://xss-game.appspot.com/level1 풀이 대상 코드를 살펴보게 되면, GET 방식으로 값을 입력받아 입력된 값을 그대로 출력하는 것을 알 수 있다. 즉, 위와 같이 입력창에 test를 입력했을 경우 test라는 값이 그대로 출력되는 것을 볼 수 있다. 이를 통해 알 수 있는 정보는 별다른 필터링을 진행하지 않기 때문에 입력창에 스크립트 코드를 삽입하는 XSS 공격을 유발시킬 수 있다는 것이다. 따라서 라는 스크립트 코드를 삽입하게 되면 다음과 같은 alert() 창과 함께 문제를 해결할 수 있다.
문제 https://los.rubiya.kr/chall/bugbear_19ebf8c8106a5323825b5dfa1b07ac1f.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 no의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) prob 2) _ 3) . 4) ( ) 5) ' 6) substr 7) ascii 8) = 9) or 10) and 11) space (공백) 12) lik..
문제 https://los.rubiya.kr/chall/darkknight_5cfbc71e68e09f1b039a8204d1a81456.php 풀이 preg_match($pattern, $subject, [, $matches]) : 문자열 안에서 특정한 정규식 패턴의 존재 여부를 찾는데 유용한 함수 - $pattern : 문자열로 검색할 패턴 - $subject : 입력 문자열 - [$matches] : 사용 시 패턴에 매치되는 내용을 배열에 담아둠 따라서 얻을 수 있는 정보로는 no의 입력 값 필터링 규칙으로 다음과 같은 정보를 필터링한다는 것이다. 1) prob 2) _ 3) . 4) ( ) 5) ' 6) substr 7) ascii 8) = 또한 pw의 입력 값 필터링 규칙으로 다음과 같은 정보를 필..