থিম ফাইলগুলির সরাসরি অ্যাক্সেসকে সীমাবদ্ধ রাখার মতো?


31

আমি থিমগুলিতে সময়ে সময়ে নিম্নলিখিত স্নিপেট জুড়ে চলেছি:

if ( ! defined('ABSPATH')) exit('restricted access');

এটি কোনও থিমের কিছু (সমস্ত?) পিএইচপি ফাইলের শুরুতে এবং এটিকে দুষ্টু উত্স দ্বারা ফাইলটির সরাসরি অ্যাক্সেস রোধ করার কথা।

আমি দেখতে পাচ্ছি যে এটি টোয়েন্টি টেন বা ইলেভেনের অন্তর্ভুক্ত নয় এবং আমি অফিসিয়াল ওয়ার্ডপ্রেস ডকুমেন্টেশনে এটি প্রস্তাবিত কখনও দেখিনি। এটি আমার কাছে ভাল ধারণা বলে মনে হচ্ছে তবে আমি এটির বিচার করার জন্য সুরক্ষা সম্পর্কেও যথেষ্ট জানি না এবং গুগলের সাথে খুব বেশি কিছু খুঁজে পাচ্ছি না।

এটি কি আমার কাস্টম থিমগুলিতে থাকা উচিত? যদি তা হয় তবে এটি সমস্ত পিএইচপি ফাইলগুলিতে থাকা উচিত বা কিছু কিছু?


7
কেবল পরবর্তী পাঠকদের জন্য, এটি আরও ছোট ও সুন্দর লেখা যেতে পারে:defined('ABSPATH') OR exit;
কায়সার

বা আরও সংক্ষিপ্ত:: defined('WPINC') ? : die();পি
টিম এলসাস

আমি আরও আশ্চর্য হয়েছি যে আমার ত্রুটি লগগুলিতে অপরিজ্ঞাত ফাংশনগুলি সম্পর্কে পিএইচপি ত্রুটিগুলি না দেখে কেবল এ জাতীয় কিছু কোড রাখা উপযুক্ত। বটগুলি কখনও কখনও এই ফাইলগুলিকে সরাসরি আঘাত করতে পছন্দ করে এবং আমি 'কল টু অপরিজ্ঞাত ফাংশন ক্যোরিপোস্টেস (') এর মতো ত্রুটি পাই কারণ ডাব্লুপি বুটস্ট্র্যাপ লোড হয়নি
ম্যাট কীগুলি

উত্তর:


26

সাধারণত, আপনার এটির দরকার নেই। তবে ... কমপক্ষে একটি কিনারা মামলা রয়েছে:

  • যদি কোনও থিম ফাইলটি একটি টেম্পলেট অংশ হয় ,
  • এবং এটি কলিং প্রসঙ্গে (প্যারেন্ট ফাইল) থেকে বিশ্বব্যাপী ভেরিয়েবলগুলি ব্যবহার করছে,
  • এবং রেজিস্ট্রেশন_গ্লোবালগুলি হ'ল on,
  • এবং এটি কোনও সুরক্ষা চেক ছাড়াই এই ভেরিয়েবলগুলি ব্যবহার করছে ...

... একজন আক্রমণকারী এই ফাইলটিকে কল করতে পারে, অনুপস্থিত ভেরিয়েবলগুলি সেট করে GETবা এর সাথে POSTথিম ফাইলটিকে মুদ্রণ করতে পারে। এবং তারপর হয় তার থেকে নিরাপত্তাজনিত সমস্যা।

সুতরাং… সর্বোত্তম বিকল্পটি আপনার উদাহরণের মতো প্রসঙ্গের চেক নয়, তবে ভাল কোড: গ্লোবাল ভেরিয়েবলগুলি এড়িয়ে চলুন, প্রিন্ট করার আগে তাদের সামগ্রীগুলি পরীক্ষা করুন check

কিছু ক্ষেত্রে আমি প্রসঙ্গের চেকটি যুক্ত করি যখন আমার মনে হয় যে অন্য কেউ আমার কোড ব্যবহার করবে এবং সুরক্ষাকে মাথায় না রেখে এটিকে পরিবর্তন করবে। এতে ক্ষতি হয় না।


যদি কোনও টেমপ্লেট অংশে এখনও অন্তত একটি ফাংশন কল থাকে যা কোনও পিএইচপি মারাত্মক ত্রুটির কারণ হয়ে দাঁড়ায় এই দৃশ্যটি এখনও সম্ভব?
ক্রিস_ও

@ ক্রিস_ও উপস্থিতির ক্রমের উপর নির্ভর করে।
ফুসিয়া

ফাইল কলগুলির মধ্যে গ্লোবাল ভেরিয়েবলগুলি ব্যবহার না করার অন্য কারণের সাথে জ্ঞান অর্জন করে এবং পুরোপুরি সম্মত হয়।
ক্রিস_ও

1
দুঃখের চেয়ে নিরাপদ থাকা সর্বদা সেরা। খুব বেশি সুরক্ষা ক্ষতি করতে পারে না, তাই না?
শান বার্গ

2
আপনি যদি সবকিছু ঠিকঠাক করেন তবে আপনার প্রয়োজন নেই এমন কোড ব্যবহার করা উচিত নয়। এই প্রশ্নটি প্রমাণ যা এটি অনুসরণ করা কোড আরও কঠিন করে তোলে।
ফুসিয়া
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.