level 15에 들어가기 앞서 RCE를 이용(?)해서 flag 값을 도출 할 수 있을 것 같은 힌트가 보였다..
우리가 값을 넣으면 create_function -> $fun -> $success 를 출력하게 된다.
우리는 create_function이라는 함수를 봐야한다.
create_function은 매개변수를 전달받아 익명 함수를 생성하는 함수이다.
이때 잘못된 방법으로 사용할 시 RCE 취약점이 발생하게 되는데 위 소스코드 처럼 두번째 인자에 임의적인 값을 주입하여 원하는 코드를 실행시킬 수 있게된다.
위와 같이 return -1;} print_r($flag); /* 값을 넣으면 flag 값을 얻을 수 있었다.
참조
https://blog.jhyeon.dev/2020/05/15/function-rce-200515/
'워게임 > Websec.fr' 카테고리의 다른 글
[websec.fr] easy - Level 13 (0) | 2021.09.12 |
---|---|
[websec.fr] easy - Level 11 (0) | 2021.08.22 |
[websec.fr] babysteps - Level 04 (0) | 2021.07.18 |
[websec.fr] easy - Level 08 (0) | 2021.07.14 |
[websec.fr] easy - Level 02 (0) | 2021.07.11 |