이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 9719|회답: 1

PHP에서 위험한 함수들의 완전한 파싱

[링크 복사]
게시됨 2015. 12. 14. 오후 10:34:33 | | |
PHP를 컴파일할 때, 특별한 필요가 없다면, CLI 명령줄 패턴을 생성하는 PHP 파싱 지원의 컴파일은 금지해야 합니다. 컴파일 시점에 –disable-CLI를 사용할 수 있습니다. PHP가 CLI 패턴을 생성하도록 컴파일되면, 침입자가 이를 악용해 WEB 셸 백도어 프로세스를 설정하거나 PHP를 통해 임의의 코드를 실행할 수 있습니다.
phpinfo()
함수 설명: PHP 환경 정보 및 관련 모듈, WEB 환경 및 기타 정보를 출력합니다.
위험 등급: 중간
통과()
함수 설명: exec()와 유사하게 외부 프로그램을 실행하고 출력을 에코로 이끕니다.
위험 수준: 높음
exec()
함수 설명: 외부 프로그램(예: UNIX 셸, CMD 명령 등)의 실행을 허용합니다.
위험 수준: 높음
시스템()
함수 설명: 외부 프로그램을 실행하고 에코 출력을 할 수 있게 하며, passthru()와 유사합니다.
위험 수준: 높음
chroot()
함수 설명: 현재 PHP 프로세스의 작업 루트 디렉터리를 변경할 수 있으며, 시스템이 CLI 모드 PHP를 지원할 때만 작동하며, 이 함수는 Windows 시스템에는 적용되지 않습니다.
위험 수준: 높음
스칸디르()
함수 설명: 지정된 경로에 있는 파일과 디렉터리를 나열합니다.
위험 등급: 중간
CHGRP()
함수 설명: 파일이나 디렉터리가 속한 사용자 그룹을 변경합니다.
위험 수준: 높음
초운(chown)
기능 설명: 파일이나 디렉터리의 소유자를 변경합니다.
위험 수준: 높음
shell_exec()
함수 설명: 쉘을 통해 명령을 실행하고 실행 결과를 문자열로 반환합니다.
위험 수준: 높음
proc_open()
함수 설명: 명령을 실행하고 파일 포인터를 열어 읽기 및 쓰기를 수행합니다.
위험 수준: 높음
proc_get_status()
기능 설명: proc_open()를 사용하여 열린 프로세스에 대한 정보를 얻습니다.
위험 수준: 높음
error_log()
기능 설명: 지정된 위치(파일)에 오류 메시지를 전송합니다.
안전 주의사항: 일부 PHP 버전에서는 error_log()를 사용해 PHP 안전 모드를 우회할 수 있습니다.
임의의 명령을 실행하세요.
위험 수준: 낮음
ini_alter()
함수 설명: ini_set() 함수의 별칭 함수로, ini_set()와 동일한 기능을 가집니다. 자세한 내용은 ini_set()를 참조하세요.
위험 수준: 높음
ini_set()
함수 설명: PHP 환경 설정 매개변수를 수정하고 설정하는 데 사용할 수 있습니다.
위험 수준: 높음
ini_restore()
함수 설명: PHP 환경 구성 매개변수를 초기 값으로 복원하는 데 사용할 수 있습니다.
위험 수준: 높음
dl()
기능 설명: 시작 시가 아니라 PHP 런타임 중에 PHP 외부 모듈을 로드합니다.
위험 수준: 높음
pfsockopen()
기능 설명: 인터넷 또는 UNIX 도메인에 소켓 영구 연결을 설정합니다.
위험 수준: 높음
syslog()
함수 설명: UNIX 시스템의 시스템 수준 syslog() 함수를 호출합니다.
위험 등급: 중간
readlink()
함수 설명: 심볼 연결이 가리키는 대상 파일의 내용을 반환합니다.
위험 등급: 중간
심볼링크()
함수 설명: UNIX 시스템에서 상징적 링크를 생성합니다.
위험 수준: 높음
popen()
함수 설명: popen() 매개변수를 통해 명령을 전달하고 popen()로 열린 파일을 실행할 수 있습니다.
위험 수준: 높음
stream_socket_server()
기능 설명: 인터넷 또는 UNIX 서버 연결을 구축합니다.
위험 등급: 중간
putenv()
함수 설명: PHP가 실행 중일 때 시스템 문자 집합 환경을 변경하는 데 사용됩니다. 5.2.6 이전 PHP 버전에서는 이 함수를 사용해 시스템 문자 집합 환경을 수정한 후 sendmail 명령어를 사용해 특수 매개변수를 보내 시스템 SHELL 명령을 실행할 수 있습니다.
위험 수준: 높음





이전의:스레드 멀티스레딩 스레드 IsBackground의 중요한 역할
다음:매우 유용한 비교 라이브러리 기능들이고, 학습할 때 조금 모호할 수 있습니다. 찾아내서 모두와 공유하세요
게시됨 2019. 9. 24. 오후 1:30:17 |
고마워요, 집주인.
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com