개념정리PHP Wrapper를 이용한 LFI 취약점을 실습하는 문제다. ○ LFILFI(Local File Inclusion) 취약점은 웹 애플리케이션에서 발생할 수 있으며, 공격자가 악의적인 목적으로 웹 서버의 파일 시스템에 접근하여 중요한 파일을 읽거나 실행할 수 있는 취약점이다. LFI는 주로 웹 애플리케이션에서 파일을 동적으로 로드할 때 발생한다. 이때, 애플리케이션은 파일 이름을 사용자 입력값으로 받아들이는데, 이 입력값에 대한 검증이 제대로 이루어지지 않으면 공격자가 파일 시스템의 다른 파일에 접근할 수 있다. 공격자는 LFI 취약점을 이용하여 애플리케이션의 설정 파일, 암호화된 비밀번호, 데이터베이스 정보 등 중요한 정보를 탈취할 수 있다. 또한 공격자는 원격 코드 실행(RCE) 공격을 수행..
문제분석 & 풀이ls -al 실행 결과가 화면에 출력됐다. file 파라미터로 파일명을 전송하고 실행결과를 출력한다. [그림]은 hello.php를 실행한 결과다. 파일 중에는 flag.php가 있고 file 파라미터로 flag를 전송했다. "FLAG is in the code"라고 나온다. flag는 flag.php 코드로 정의된 것 같다. 그렇다면 flag.php의 실행결과가 아닌 코드를 봐야한다. include("{$file}.php")문제에서 위와 같이 include한다고 판단할 수 있다. LFI를 시도해서 flag.php에 접근할 수는 있지만 flag.php를 실행한 결과만 출력될 뿐이고 코드를 볼 수는 없다. 그렇다면 어떻게 해야 flag.php 코드를 볼 수 있을까?→ PHP wrappe..