exec를 Windows 서버에서 작동시키고 "fork 할 수 없습니다"라는 오류 메시지가 표시되도록하려고합니다. 이 문제를 조금 훑어보고 나면 IUSR 계정에 c : \ Windows \ System32 \ cmd.exe에 대한 읽기 및 실행 권한을 부여하는 것이 좋습니다.PHP는 안전한가요?
하지만 주요 보안 구멍이 맞습니까? 안전 해요? [PHP에서] 서버에있는 exe를 실행할 다른 방법이 있습니까? 당신이 당신의 사용자가 매개 변수를 입력 할 경우
cmd /c foo -bar -baz
그것은 단지 보안 구멍이다 :
exec("foo -bar -baz");
그것은이 호출 윈도우 PHP이 볼 때 때문에
exec 기능은 사용자가 수행하는 것만 큼 안전합니다. 오랫동안 여기에 표시된 것과 같은 적절한 탈출 함수를 사용하면 좋을 것입니다. –
스크립트 명령을 안전하게 할 수는 있지만 일반적인 공격 경로는 악성 스크립트를 업로드하고 'exec'및 유사한 기능을 사용하여 서버를 해킹하는 것입니다. 따라서 많은 공유 호스팅 환경에서는이 기능과 쉘 인수를 실행할 수있는 다른 기능을 비활성화합니다. – Machavity