[패치됨] Laravel 7.x – XSS vulnerability

이 포스팅은 laravel 7.0 ~ 7.1.2 까지 버전에 존재하는 취약점 입니다.사용중이신 버전이 포함되어있다면 laravel 7.1.3이상으로 업데이트 하시기 바랍니다. Laravel news of XSS vector laravel-news 에서 7.1.2 미만의 버전에서 XSS 공격 포인트가 있으니 업데이트하라는 소식이 들려와 어느부분이 취약한지 궁금해 해당 부분에 대한 코드를 찾아 봤다. Github를 의 커밋 로그를 보면 attributesToString 메소드에 $escapeBound 옵션이 추가되었고, sanitizeComponentAttribute란 …

[PHP] Non alphanumeric code

[PHP] Non alphanumeric code TL;DR PHP의 가변 함수와  bit 연산자로 alphabet 없이 함수를 실행 시킨다. 1. alphabet이 아닌 문자열을 변수에 넣는다. 2. bit연산자를 통해 원하는 문자열의 bit 값으로 바꾸어 준다. 3. 가변 함수를 사용해 함수를 실행 시킨다. <?php if (isset($_GET[‘eval’])) { if (preg_match(‘/[a-z]/i’, $_GET[‘eval’])) { die(‘No ALPHABET!!!!’); } else { eval(‘echo ‘.$_GET[‘eval’].’;’); } } 조건 …

[phpTrick] array === array compare bypass(?) (<5.5.9)

php Array === Array compare bug Example Code <?php $arr = [‘admin’, ‘password’]; $auth = $_GET[‘auth’]; if( $arr === $auth && $auth[0] != ‘admin’){ echo ‘Hello admin!’; } else { echo ‘login plz’; } 위와 같은 코드가 있을 때, 2번째 줄 $arr의 0번째인자가 admin으로 박혀있고, 3번째 줄에선 $auth와 $arr의 키/값 순서까지 일치해야 true여야하고(identity), $auth[0]이 admin이 …

[phpTrick] php safe_mode bypass vulnerability (< 5.1.6, <4.4 )

php safe_mode bypass (<5.1.6, <4.4) Normal Example //localhost/download.php?dir=path/file.jpg와 같은 파일을 다운 받게 하는 페이지가 존재할 때, LFI를 통해 서버의 파일을 다운받으려고 할 때 //localhost/download.php?dir=../../../../../../etc/passwd와 같은 쿼리를 날리게 되면 Warning: fopen(/some/path/../../../../../../etc/passwd) [function.fopen]: failed to open stream: Permission denied in /var/www/html/download.php on line 1 Safe mode 가 활성화 되어있기 때문에 다운로드가 불가능하다. Bypass Example 이때 //localhost/download.php?dir=../../../../../../etc/passwd/./처럼 자기 자신의 파일을 …

[Vulnerability of PHP Function] extract()

Extract($_POST) or ($_GET)[php.net] PHP에서 Extract()함수를  사용함에 있어서 발생할 수 있는 위험성을 알아본다. Extract() 함수 Extract($_GET)과 같이 선언 될 경우 $_GET[id]가 의미하는 바와 $id가 의미하는 바가 같아진다.   서버 사이드 변수 조작(holyshield_CTF) <?php $up=”abc”; extract($_GET); $down=”efg”; echo “u p : $up<br>”; echo “down: $down”; ?> 위와 소스코드와 같은 경우 extract 함수 위에 선언된 변수($up)의 경우 사용자 마음대로 …