سؤال

أرغب في تشغيل ffmpeg من PHP لأغراض ترميز الفيديو.

كنت أفكر في استخدام أوامر exec أو passthru.ومع ذلك، فقد تم تحذيري من أن تمكين هذه الوظائف يشكل خطرًا أمنيًا.على حد تعبير موظفي الدعم الخاص بي:

يتم استخدام التوجيه "disable_functions" لتعطيل أي وظائف تسمح بتنفيذ أوامر النظام.وهذا لمزيد من الأمان للخادم.يمكن استخدام وظائف PHP هذه لاختراق الخادم إذا لم يتم استخدامها بشكل صحيح.

أعتقد أنه إذا تم تمكين exec، فيمكن (ربما) لشخص ما تنفيذ أمر يونكس عشوائي.هل يعرف أحد طريقة آمنة لتشغيل ffmpeg من PHP؟

بالمناسبة، أنا على خادم مخصص.شكرا مقدما!

هل كانت مفيدة؟

المحلول

exec لا يمثل في حد ذاته خطرًا أمنيًا أكثر مما قد يحدث عند تسجيل الدخول إلى محطة آمنة.

فكر في الأمر بهذه الطريقة، إذا كنت تريد إدراج محتويات الدليل بهذه الطريقة

exec( 'ls /foo/bar' );

لا يهم ما أرسله المستخدم الخاص بك إلى برنامج PHP النصي الخاص بك، فهو سيدرج فقط الدليل المحدد.

طالما أنك حريص على تنقية أي مدخلات من المستخدم، والامتناع عن إخراج معلومات حساسة، فيجب أن تكون على ما يرام.

استخدم الطرق التالية لتصحيح الإدخال قبل تشغيله في سطر الأوامر:

نصائح أخرى

ويمكنك محاولة استخدام مكتبة فمبيج-فب ... وجدت هنا: HTTP: // سورس صافي / المشروعات / فمبيج-فب /

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top