PHPInfo() 함수는 웹사이트 구축 과정에서 구축된 PHP 환경이 올바른지 테스트하는 데 주로 사용됩니다. 많은 웹사이트에서는 테스트가 완료된 후에도 삭제하지 않습니다. 이므로 이러한 테스트에 접속 시 해당 페이지가 열리면 서버의 주요 정보가 출력되며, 이 정보가 유출되면 서버 침투의 위험이 있습니다. 아래에서 자세한 소개를 살펴보겠습니다.
phpinfo 함수
phpinfo 함수 PHP는 PHP 컴파일 옵션 및 확장 구성을 포함하여 PHP에 대한 모든 정보를 반환하는 PHPInfo() 함수를 제공합니다. , PHP 버전, 서버 정보 및 환경 변수, PHP 환경 변수, 운영 체제 버전 정보, 경로 및 환경 변수 구성, HTTP 헤더, 저작권 고지 및 기타 정보.
함수 정의는 다음과 같습니다.
구문: int phpinfo(void);
반환 값: 정수
함수 유형: PHP 시스템 함수
예를 들어 새 PHP 파일을 만들고 그 안에 다음 내용을 입력합니다.
<?php phpinfo(); ?>
그래서 phpinfo()
모두가 가장 친숙하다고 생각합니다 그 후 환경을 설정할 때 환경이 정상적인지 테스트하기 위해 phpinfo()
를 작성하게 되는데, 많은 사람들이 테스트 후 이를 삭제하고 환경 배포를 시작하기 때문에 민감한 정보가 유출될 수 있습니다. 그렇다면 phpinfo()
에서 어떤 민감한 정보를 얻을 수 있나요?
말할 것도 없이 PHP 버전에서는 어떤 민감한 정보가 유출되는지 살펴보겠습니다.
1. 절대 경로(_SERVER["script_FILENAME"])
해당 페이지에서는 쉘 작성 및 정보수집에 꼭 필요한 웹사이트의 절대경로를 직접 찾아볼 수 있습니다. phpinfo()
2. 지원 프로그램
redis, memcache, mysql, SMTP 등의 일부 특수 프로그램 서비스를에서 보실 수 있습니다. 컬 등. 서버에 redis나 memcache가 장착되어 있으면 ssrf를 통해 shell을 얻을 수 있습니다. discuz에서는 이러한 문제가 발생했습니다. Redis나 Memcache가 확실히 설치되어 있는지 모르신다면 ssrf만 집중해서 찾아보시면 됩니다phpinfo()
3. 실제 IP를 유출(_SERVER["SERVER_ADDR"] 또는 SERVER_ADDR)
가끔의 유출된 IP를 사용하여 사이드 스테이션, 세그먼트 C 등을 확인할 수 있습니다. 그냥 CDN을 무시하면 모든 것이 작동하지 않습니다. phpinfo()
4. GOPHER
ssrf의 일부라고 볼 수도 있고, 주로 ssrf를 지원하는 경우도 있습니다.5. fastcgi
fastcgi 및 fastcgi 버전이 활성화되어 있는지 확인하세요. 이로 인해 구문 분석 취약점이 발생할 수 있습니다. 원격 명령 실행, 임의 파일 읽기 등 문제점6. 유출캐시파일 주소(_FILES["file1"])
Post to phpinfo() Shell은에서 _FILES[“file1”]
이 업로드한 임시 파일을 에서 볼 수 있습니다. lfi가 있으면 getshell을 직접 볼 수 있습니다.
7. 일부 민감한 구성
allow_url_include,allow_url_fopen,disable_functions, open_basedir, short_open_tag 등 예를 들어, 원격 파일 포함을 위해 Allow_url_include를 사용할 수 있고, 비활성화된 기능을 보고, 실행을 우회하고, open_basedir이 활성화되었는지 확인하는 데 사용할 수 있습니다. pniu의 open_basedir 우회 방법을 사용하면 일부 디렉터리를 읽을 수 있습니다. 허락 없이 등등 또한 환경에서 경로, 로그 등과 같은 일부 환경 정보를 얻을 수도 있습니다요약
위 내용은 phpinfo에서 얻을 수 있는 귀중한 정보에 대한 간략한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!