ওয়েব রুটের বাইরে ডাব্লুপি-কনফিগার সরানো কি আসলেই উপকারী?


135

সবচেয়ে সাধারণ নিরাপত্তা সর্বোত্তম কার্যাভ্যাস এই দিন এক হতে বলে মনে হয় চলন্ত wp-config.phpএকটি ডিরেক্টরী vhost দেখুন এর দলিল রুট বেশী । আমি এর জন্য সত্যিই কখনও ভাল ব্যাখ্যা খুঁজে পাইনি, তবে আমি ধরে নিচ্ছি যে এটি ওয়েবরূটের মধ্যে দূষিত বা সংক্রামিত স্ক্রিপ্টের ঝুঁকি হ্রাস করতে হবে ডাটাবেস পাসওয়ার্ড পড়া থেকে।

তবে, আপনাকে এখনও ওয়ার্ডপ্রেসটিকে এটি অ্যাক্সেস করতে দিতে হবে, সুতরাং open_basedirডকুমেন্টের মূলের উপরে ডিরেক্টরিটি অন্তর্ভুক্ত করার জন্য আপনাকে প্রসারিত করতে হবে। এটি কি পুরো উদ্দেশ্যটিকে পরাস্ত করে না, এবং আক্রমণকারীদের পক্ষে সার্ভার লগ, ব্যাকআপ ইত্যাদির সম্ভাব্যতাও প্রকাশ করে?

বা কৌশলটি কেবল এমন পরিস্থিতি রোধ করার চেষ্টা করছে যেখানে পিএইচপি ইঞ্জিনটি বিশ্লেষণের পরিবর্তে wp-config.phpঅনুরোধকারীকে সরল-পাঠ্য হিসাবে দেখানো হবে http://example.com/wp-config.php? এটি দেখতে খুব বিরল ঘটনা বলে মনে হচ্ছে এবং এটি এইচটিটিপি অনুরোধে লগ / ব্যাকআপ / ইত্যাদির বহিরাগত দিকের চেয়ে বেশি হবে না।

অন্য ফাইলগুলি প্রকাশ না করেই কিছু হোস্টিং সেটআপগুলিতে ডকুমেন্টের মূলের বাইরে এটি সরানো সম্ভব, তবে অন্যান্য সেটআপগুলিতে নয়?


উপসংহার: এই ইস্যুতে প্রচুর পিছিয়ে থাকার পরে, দুটি উত্তর উঠে এসেছে যে আমি মনে করি কর্তৃত্বমূলক বিষয় বিবেচনা করা উচিত। অ্যারন অ্যাডামস ডাব্লুপি-কনফিগারেশন সরানোর পক্ষে একটি ভাল কেস তৈরি করে এবং ক্রিসগুইটারগুইমা এর বিরুদ্ধে একটি ভাল কেস তৈরি করে । আপনি যদি থ্রেডে নতুন হন এবং পুরো জিনিসটি পড়তে চান না তবে এই দুটি উত্তর আপনার উচিত। অন্যান্য উত্তরগুলি হয় নিরর্থক বা ভুল।


আপনার প্রশ্নের উত্তরগুলি বেছে নেওয়ার এবং আপনার প্রশ্নের অভ্যন্তরে অন্য সমস্ত উত্তর প্রত্যাখ্যান করার প্রয়োজন নেই really আপনি নীচে দেখতে পাচ্ছেন যে, স্ট্যাকেক্সচেঞ্জের ভোটদানের ব্যবস্থাটি মানুষের পক্ষে বোধগম্য উত্তরগুলি ভোট দেওয়ার জন্য, যদিও প্রশ্নকারীদের "স্বীকৃত উত্তর" প্রক্রিয়া এবং আপনার নিজস্ব / ডাউন ভোটগুলি ব্যবহার করা উচিত।
Kzqai

6
আমি জিজ্ঞাসা করেছি যে 99% প্রশ্নের জন্য আমি তা করি না, তবে আমি মনে করি এটি নির্দিষ্ট ক্ষেত্রে উপযুক্ত ছিল। প্রশ্নের 8 টি উত্তর রয়েছে যার মধ্যে কয়েকটি মোটামুটি দৈর্ঘ্য / জটিল এবং এর মধ্যে কয়েকটিতে ভুল তথ্য থাকা সত্ত্বেও বা কথোপকথনে কিছু না যোগ সত্ত্বেও প্রচুর উত্সাহ রয়েছে। আমি মনে করি যে প্রথমবারের মতো থ্রেডটি পড়া লোকেদের জন্য একটি আধা-অনুমোদনের উপসংহারের প্রস্তাব সহায়ক। বরাবরের মতো পাঠকরা নিজের মন তৈরি করতে স্বাধীন; আমি কেবল ওপি হিসাবে আমার মতামত দিচ্ছি।
আয়ান ডান

1
@ কেজকাই: "স্ট্যাকেক্সচেঞ্জ ভোটিং সিস্টেম" একটি গণতান্ত্রিক প্রক্রিয়া, এবং অংশগ্রহণকারীরা প্রায়শই 1) ওপি আসলে কী সমাধান করতে চাইছেন বা সমাধান করার চেষ্টা করছেন সে সম্পর্কে অস্পষ্ট এবং 2) কোনও নির্দিষ্ট উত্তরের বৈধতা অবলম্বন করা। প্রতিক্রিয়াগুলি ছড়িয়ে পড়ার পরে এবং ভোট দেওয়ার পরে, ওপিকে সহায়তা প্রদান করে এমন প্রতিক্রিয়াগুলি স্পষ্ট করা আরও বেশি সহায়ক । সর্বোপরি, ওপি হ'ল একমাত্র তিনিই জানেন, এবং আমি আশা করি আরও ওপিরা এটি করেছে। হ্যাঁ, লোকেরা "জনগণের কাছে যে উত্তরগুলি বোঝায় তা ভোট দেয়" "তবে আসুন, ওপিকে তার কী বোঝায় সে সম্পর্কে শেষ কথাটি দেওয়া উচিত।
ম্যাক

উত্তর:


127

সংক্ষিপ্ত উত্তর: হ্যাঁ

এই প্রশ্নের উত্তর একটি দ্ব্যর্থহীন হ্যাঁ , এবং অন্যথায় বলা সম্পূর্ণভাবে দায়িত্বজ্ঞানহীন


দীর্ঘ উত্তর: একটি বাস্তব-বিশ্বের উদাহরণ

আমার একেবারে সত্যিকারের সার্ভার থেকে আমাকে একটি বাস্তব উদাহরণ দেওয়ার অনুমতি দিন, যেখানে wp-config.phpওয়েবের মূলের বাইরে চলে যাওয়া নির্দিষ্টভাবে এর সামগ্রীগুলি ক্যাপচারে আটকানো থেকে রোধ করে

পোকাটি:

প্লেস্কে বাগের এই বিবরণটি একবার দেখুন (11.0.9 MU # 27 এ স্থির করা হয়েছে):

প্ল্যাস্ক হোস্টিং প্ল্যান (117199) এর সাথে সাবস্ক্রিপশন সিঙ্ক করার পরে সাবডোমেন ফরোয়ার্ডিং পুনরায় সেট করে

নির্দোষ মনে হচ্ছে, তাই না?

আচ্ছা, এই বাগটিটি ট্রিগার করতে আমি কী করেছি:

  1. অন্য একটি URL এ পুনর্নির্দেশ করতে (যেমন কোন সাবডোমেন সেট আপ করুন site.staging.server.comথেকে site-staging.ssl.server.com)।
  2. সাবস্ক্রিপশনের পরিষেবা পরিকল্পনা (যেমন পিএইচপি কনফিগারেশন) পরিবর্তন করেছে।

যখন আমি এটি করেছি, প্লেস্ক সাবডোমেনটিকে ডিফল্টগুলিতে পুনরায় সেট করুন: ~/httpdocs/কোনও দোভাষী (যেমন পিএইচপি) সক্রিয় না করে এর সামগ্রীগুলি সরবরাহ করে ।

আর আমি খেয়াল করিনি। সপ্তাহের জন্য.

ফলাফল:

  • সঙ্গে wp-config.phpওয়েব রুট, একটি অনুরোধ /wp-config.phpওয়ার্ডপ্রেস কনফিগারেশন ফাইল ডাউনলোড হবে।
  • wp-config.phpওয়েবের মূলের বাইরের সাথে , /wp-config.phpএকটি সম্পূর্ণরূপে ক্ষতিহীন ফাইল ডাউনলোড করার জন্য একটি অনুরোধ । আসল wp-config.phpফাইলটি ডাউনলোড করা যায়নি।

সুতরাং, এটি স্পষ্টত যে wp-config.phpওয়েব রুটের বাইরে চলে আসার ফলে সত্যিকারের বিশ্বে সুরক্ষা সুবিধা রয়েছে


wp-config.phpআপনার সার্ভারের যে কোনও স্থানে কীভাবে স্থানান্তরিত করবেন

ওয়ার্ডপ্রেসটি স্বয়ংক্রিয়ভাবে আপনার wp-config.phpফাইলের জন্য আপনার ওয়ার্ডপ্রেস ইনস্টলেশনের উপরে একটি ডিরেক্টরি দেখবে , তাই যদি আপনি এটি সরিয়ে নিয়ে যান তবে আপনি হয়ে গেছেন!

তবে আপনি যদি এটি অন্য কোথাও সরিয়ে নিয়েছেন? সহজ। wp-config.phpনিম্নলিখিত কোড সহ ওয়ার্ডপ্রেস ডিরেক্টরিতে একটি নতুন তৈরি করুন :

<?php

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');

/** Location of your WordPress configuration. */
require_once(ABSPATH . '../phpdocs/wp-config.php');

(উপরের পাথটি আপনার স্থানান্তরিত wp-config.phpফাইলের আসল পথে পরিবর্তন করতে ভুলবেন না ))

আপনি যদি কোনও সমস্যার মধ্যে পড়ে থাকেন তবে আপনার পিএইচপি কনফিগারেশনের নির্দেশকে open_basedirনতুন পথ যুক্ত করুন open_basedir:

open_basedir = "/var/www/vhosts/example.com/httpdocs/;/var/www/vhosts/example.com/phpdocs/;/tmp/"

এটাই!


বিপরীতে যুক্তি বাছাই করা

wp-config.phpওয়েবের মূলের বাইরে চলে যাওয়ার বিরুদ্ধে প্রতিটি যুক্তি মিথ্যা অনুমানের উপর জড়িত।

তর্ক 1: পিএইচপি যদি অক্ষম থাকে তবে তারা ইতিমধ্যে প্রবেশ করে

কেউ যদি কেবলমাত্র [ wp-config.php]] এর বিষয়বস্তুগুলি দেখার জন্য যাচ্ছেন তারা হ'ল যদি তারা আপনার সার্ভারগুলিকে পিএইচপি ইন্টারপ্রেটারকে বিঘ্নিত করে ... যদি তা ঘটে থাকে তবে আপনি ইতিমধ্যে সমস্যায় পড়েছেন: তাদের আপনার সার্ভারে সরাসরি অ্যাক্সেস রয়েছে।

মিথ্যা : আমি উপরে যে দৃশ্যের বর্ণনা দিয়েছি তা হ'ল অনুপ্রবেশ নয়, একটি ভুল কনফিগারেশনের ফলাফল।

তর্ক 2: দুর্ঘটনাক্রমে পিএইচপি অক্ষম করা বিরল, এবং তাই তুচ্ছ

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

মিথ্যা : উপরে বর্ণিত দৃশ্যটি হ'ল সার্ভার সফ্টওয়্যারটির একটি সাধারণ অংশে থাকা বাগের ফলস্বরূপ, একটি সাধারণ সার্ভার কনফিগারেশনকে প্রভাবিত করে। এটি খুব কমই "বিরল" (এবং এর বাইরে সুরক্ষা মানে বিরল দৃশ্যের জন্য উদ্বেগজনক)।

ডাব্লুটিএফ : অনুপ্রবেশের সময় সংবেদনশীল তথ্য যদি নেওয়া হয় তবে অনুপ্রবেশের পরে পাসওয়ার্ড পরিবর্তন করা খুব কমই সহায়তা করে। সত্যই, আমরা কি এখনও মনে করি যে ওয়ার্ডপ্রেসটি কেবল নৈমিত্তিক ব্লগিংয়ের জন্য ব্যবহৃত হয় এবং আক্রমণকারীরা কেবল পঙ্গুত্ব করতে আগ্রহী? আসুন আমাদের সার্ভারটি রক্ষা করার বিষয়ে চিন্তা করুন, কেউ প্রবেশ করার পরে এটি পুনরুদ্ধার করবেন না।

তর্ক 3: অ্যাক্সেস অস্বীকার wp-config.phpযথেষ্ট ভাল

আপনি আপনার ভার্চুয়াল হোস্ট কনফিগারেশনের মাধ্যমে ফাইলটিতে অ্যাক্সেসকে সীমাবদ্ধ করতে পারেন .htaccess- বা ডকুমেন্টের মূলের বাইরে যেমন চলতে পারে তেমন কার্যকরভাবে ফাইলের বাইরের অ্যাক্সেসকে সীমাবদ্ধ করতে পারেন।

মিথ্যা : একটি ভার্চুয়াল হোস্টের জন্য আপনার সার্ভারের ডিফল্টগুলি কল্পনা করুন: কোনও পিএইচপি, না .htaccess, allow from all(কোনও উত্পাদন পরিবেশে খুব কমই অস্বাভাবিক)। আপনার কনফিগারেশনটি যদি কোনও রুটিন অপারেশনের সময় কোনওভাবে পুনরায় সেট করা হয় - যেমন, বলুন, প্যানেল আপডেট করুন - সমস্ত কিছু তার ডিফল্ট অবস্থায় ফিরে আসবে এবং আপনি উন্মুক্ত হয়ে যাবেন।

দুর্ঘটনাক্রমে ডিফল্টগুলিতে সেটিংস পুনরায় সেট করার সময় যদি আপনার সুরক্ষা মডেল ব্যর্থ হয় তবে আপনার আরও সুরক্ষা প্রয়োজন।

ডাব্লুটিএফ : কেন কেউ বিশেষভাবে নিরাপত্তার কম স্তরগুলির সুপারিশ করবে? ব্যয়বহুল গাড়িগুলির কেবল তালা নেই; তাদের কাছে অ্যালার্ম, স্থাবর ও জিপিএস ট্র্যাকারও রয়েছে। যদি কোনও কিছুর সুরক্ষার উপযুক্ত হয় তবে এটি ঠিক করুন।

যুক্তি 4: অননুমোদিত অ্যাক্সেস wp-config.phpকোনও বড় বিষয় নয়

ডাটাবেস তথ্য হ'ল [ wp-config.php] এর মধ্যে একমাত্র সংবেদনশীল জিনিস ।

মিথ্যা : প্রমাণীকরণ কী এবং সল্টগুলি যে কোনও সংখ্যক সম্ভাব্য হাইজ্যাকিং আক্রমণে ব্যবহার করা যেতে পারে।

ডাব্লুটিএফ : এমনকি যদি ডাটাবেস শংসাপত্রগুলির মধ্যে কেবলমাত্র এক জিনিসই ছিল wp-config.php, তবে কোনও আক্রমণকারী তাদের হাত পেতে ভীত হওয়া উচিত ।

তর্ক 5: wp-config.phpওয়েব মূলের বাইরে সরানো আসলে একটি সার্ভারকে কম সুরক্ষিত করে

আপনাকে এখনও ওয়ার্ডপ্রেস অ্যাক্সেস করতে হবে [ wp-config.php], সুতরাং আপনাকে open_basedirডকুমেন্টের মূলের উপরে ডিরেক্টরি অন্তর্ভুক্ত করতে প্রসারিত করতে হবে।

মিথ্যা : ধরে নেওয়া যাক wp-config.phpরয়েছে httpdocs/, শুধু এটিকে সরান ../phpdocs/, এবং সেট open_basedirশুধুমাত্র অন্তর্ভুক্ত করা httpdocs/এবং phpdocs/। এই ক্ষেত্রে:

open_basedir = "/var/www/vhosts/example.com/httpdocs/;/var/www/vhosts/example.com/phpdocs/;/tmp/"

( /tmp/আপনার tmp/যদি থাকে তবে সর্বদা বা আপনার ব্যবহারকারীর ডিরেক্টরি অন্তর্ভুক্ত রাখতে ভুলবেন না ))


উপসংহার: কনফিগারেশন ফাইল সবসময় সবসময় উচিত সবসময় ওয়েব রুট বাইরে অবস্থিত করা

আপনি যদি সুরক্ষা সম্পর্কে চিন্তা করেন তবে আপনি wp-config.phpআপনার ওয়েবের মূলের বাইরে চলে যাবেন ।


1
অ্যাপাচে, লিনাক্স বা অ্যাডমিনের মস্তিষ্কে কোনও বাগ থাকলে আপনি যে কোনও ক্ষেত্রেই টোস্ট। আপনার পরিস্থিতিতে আপনি এটি ব্যাখ্যা করতে ব্যর্থ হন যে কোনও ওয়েবসাইটের মূলে তারপরে সার্ভারের অন্য কোনও স্থানে ভুল কনফিগারেশন হওয়ার জন্য এটি কেন বেশি সম্ভাব্য। একটি ভুল কনফিগার্ড অ্যাপাচি সম্ভবত /../config.php অ্যাক্সেস করতে পারে /config.php হিসাবে সহজ
মার্ক

1
আপনি "কোনও অবস্থাতেই টোস্ট" নন। এটি অত্যন্ত সম্ভাব্য এবং এমনকি বোধগম্য , এমনকি কোনও বাগের ফলে ওয়েব রুটটিকে তার ডিফল্টে পুনরায় সেট করা হয়, সেক্ষেত্রে আপনি "টোস্ট" নন - আপনার wp-config.phpঅবশেষ নিরাপদ। এবং এটা হয় অত্যন্ত অভাবনীয় - এত যাতে মূলত অসম্ভব হতে - যে একটি বাগ ওয়েব রুট হচ্ছে ইচ্ছামত সঠিক ডিরেক্টরির আপনি আপনার স্থাপন রিসেট স্থাপিত হবে wp-config.php
অ্যারন অ্যাডামস 21

1
@ আইয়ানডুন আসলে, wp-config.phpএকটি স্বেচ্ছাসেবী স্থানে সরানো সহজ । আমি আমার উত্তরে দিকনির্দেশ যুক্ত করেছি; এটিতে কেবল আসলটির wp-config.phpঅবস্থান উল্লেখ করে ওয়ার্ডপ্রেস ডিরেক্টরিতে একটি ডামি তৈরি করা জড়িত ।
অ্যারন অ্যাডামস

3
এই প্রতিক্রিয়া স্পট-অন। আমার ওয়েব হোস্টিং সংস্থার একটি ড্রাইভ অ্যারে ব্যর্থতা ছিল। যখন সমস্ত বলা হয়েছিল এবং হয়ে গেছে তারা পার্টিসিলে সিস্টেমটি পুনরুদ্ধার করেছে। দেখা যাচ্ছে যে তারা httpd.conf ফাইলগুলি ভুলভাবে করে পুনর্নির্মাণের জন্য cPanel / WHM স্ক্রিপ্টগুলির একটি সিরিজ ব্যবহার করেছিল। ভাগ্যক্রমে ডক মূলের বাইরে আমার ইতিমধ্যে wp-config.php ছিল, তবে আমি যদি বিষয়বস্তু না রাখি তবে তা নেওয়ার জন্য সেখানে ছিল। হ্যাঁ বিরল, তবে হিসাবে উল্লেখ করা হয়েছে যে বিরল ক্ষেত্রে আপনার চিন্তার দরকার। এছাড়াও, "সাধারণ মনের লোকেরা হারিয়ে যাবে" উল্লেখ করা কম সুরক্ষা পাওয়ার জন্য একটি খারাপ অজুহাত।
ল্যান্স ক্লিভল্যান্ড

1
এটি একটি ভাল পয়েন্ট, হারুন। আমি এবং অন্যান্য মন্তব্য থ্রেডে আমি যে কারণে উল্লেখ করেছি তার জন্য আমি এখনও কিছুটা সংশয়ী, তবে আপনি আমাকে নিশ্চিত করেছেন যে এটির মূলত আমি যা ভাবি তার চেয়ে বেশি যোগ্যতা রয়েছে। খুব কমপক্ষে, যদি সঠিকভাবে করা হয় তবে আমি মনে করি না এটির কোনও ক্ষতি হবে। আমার এখনও এই সমস্যাটির সাথে সমস্যা আছে যে এটি প্রচারকারী বেশিরভাগ লোকেরা এর কারণগুলি বোঝে না বলে মনে হয় এবং তারা যেভাবে এটি শিক্ষা দেয় তা প্রায়শই উপরের ডিরেক্টরিটিকে httpdocs প্রকাশের দিকে নিয়ে যায়, তবে আপনি এই বিষয়গুলিতে সমাধান করতে সহায়তা করেছেন তোমার উত্তর.
ইয়ান ডান

40

সবচেয়ে বড় বিষয় হ'ল wp-config.phpকিছু সংবেদনশীল তথ্য রয়েছে: আপনার ডাটাবেস ব্যবহারকারীর নাম / পাসওয়ার্ড ইত্যাদি contains

সুতরাং ধারণা: এটি নথির মূলের বাইরে নিয়ে যান এবং আপনাকে কোনও কিছুর জন্য চিন্তা করতে হবে না। কোনও আক্রমণকারী কখনই বাহ্যিক উত্স থেকে সেই ফাইলটি অ্যাক্সেস করতে সক্ষম হবে না।

এখানে ঘষা আছে, তবে: wp-config.phpআসলে কখনও স্ক্রিনে কোনও কিছু প্রিন্ট করে না। এটি কেবলমাত্র বিভিন্ন ধ্রুবককে সংজ্ঞায়িত করে যা আপনার WP ইনস্টল জুড়ে ব্যবহৃত হয়। সুতরাং কেউ যদি সেই ফাইলটির বিষয়বস্তুগুলি দেখতে পাচ্ছে তবে তা হ'ল যদি তারা আপনার সার্ভারগুলি পিএইচপি ইন্টারপ্রেটারকে তুচ্ছ করে - তারা .phpকেবল সরল পাঠ্য হিসাবে রেন্ডার করার জন্য ফাইল পায় get যদি এটি ঘটে থাকে তবে আপনি ইতিমধ্যে সমস্যায় রয়েছেন: তাদের আপনার সার্ভারে সরাসরি অ্যাক্সেস রয়েছে (এবং সম্ভবত মূল অনুমতিগুলি) এবং তারা যা খুশি তা করতে পারে।

আমি এগিয়ে যাব এবং বলব যে ডকুমেন্টের মূলের বাইরে সুরক্ষা দৃষ্টিকোণ থেকে সরানোর কোনও সুবিধা নেইwp-config - উপরের কারণগুলির জন্য এবং এর জন্য:

  1. আপনি আপনার ভার্চুয়াল হোস্ট কনফিগারেশন বা .htaccess- এর মাধ্যমে ফাইলটিতে অ্যাক্সেসকে সীমাবদ্ধ করতে পারেন - ডকুমেন্টের মূলের বাইরে চলে যাওয়ার মতোভাবে কার্যকরভাবে ফাইলের বাইরের অ্যাক্সেসকে সীমাবদ্ধ করতে পারেন
  2. আপনি নিশ্চিত করতে পারেন যে wp-configকোনও ব্যবহারকারীর এসএসএইচ-এর মাধ্যমে আপনার সার্ভারে (সীমাবদ্ধ) অ্যাক্সেস অর্জন করার পরেও পর্যাপ্ত অধিকার ছাড়াই কোনও ফাইল পড়া থেকে বিরত রাখতে ফাইল অনুমতিগুলি কঠোর রয়েছে are
  3. আপনার সংবেদনশীল তথ্য, ডাটাবেস সেটিংস, শুধুমাত্র একটি একক সাইটে ব্যবহৃত হয়। এমনকি কোনও আক্রমণকারী যদি সেই তথ্যে অ্যাক্সেস অর্জন করেও, তবে এটি প্রভাবিত করবে কেবলমাত্র সেই সাইটটি সেই wp-config.phpফাইলটির অন্তর্ভুক্ত ওয়ার্ডপ্রেস ইনস্টল । আরও গুরুত্বপূর্ণ, এই ডাটাবেস ব্যবহারকারীর কেবল সেই ডাব্লুপি ইনস্টল এর ডাটাবেসটি পড়ার এবং লেখার অনুমতি রয়েছে এবং অন্য কিছু নেই - অন্যান্য ব্যবহারকারীর অনুমতি দেওয়ার অনুমতি নেই to অর্থ, অন্য শব্দগুলিতে, যদি কোনও আক্রমণকারী আপনার ডাটাবেসে অ্যাক্সেস অর্জন করে তবে এটি ব্যাকআপ থেকে পুনরুদ্ধার করার বিষয়টি (পয়েন্ট 4 দেখুন) এবং ডাটাবেস ব্যবহারকারীর পরিবর্তনের বিষয়
  4. আপনি প্রায়শই ব্যাকআপ করেন। প্রায়শই একটি আপেক্ষিক শব্দ হওয়া: আপনি যদি প্রতিদিন 20 টি নিবন্ধ পোস্ট করেন তবে আপনি প্রতিদিন বা প্রতি কয়েক দিন ভাল ব্যাক আপ পান। আপনি যদি সপ্তাহে একবার পোস্ট করেন তবে সপ্তাহে একবার ব্যাক আপ নেওয়া যথেষ্ট।
  5. আপনার সংস্করণ নিয়ন্ত্রণের অধীনে আপনার সাইট রয়েছে ( এটির মতো ), যার অর্থ কোনও আক্রমণকারী যদি অ্যাক্সেস অর্জন করেও, আপনি সহজেই কোড পরিবর্তনগুলি সনাক্ত করতে পারেন এবং সেগুলি আবার রোল করতে পারেন। যদি কোনও আক্রমণকারীর অ্যাক্সেস থাকে তবে wp-configতারা সম্ভবত অন্য কোনও কিছুতে গণ্ডগোল করেছে।
  6. ডাটাবেস তথ্য হ'ল এটি কেবলমাত্র সংবেদনশীল জিনিস wp-config, এবং কারণ আপনি এটি সম্পর্কে সতর্ক রয়েছেন (পয়েন্ট 3 এবং 4 দেখুন), এটি কোনও বিশাল চুক্তি নয়। সল্ট এবং এ জাতীয় যে কোনও সময় পরিবর্তন করা যেতে পারে। কেবলমাত্র এটি ঘটে এটি ব্যবহারকারীদের কুকিগুলিকে লগইন করে।

আমার কাছে, wp-configডকুমেন্টটি বাইরে নিয়ে যাওয়া সুরক্ষার দ্বারা অস্পষ্টতার দ্বারা সুরক্ষিত হয়েছে - যা খুব খড়ের মানুষ।


2
হ্যাঁ, আমি যা ভাবছিলাম তা অনেকটাই। আমি একমাত্র নই এই কথাটি জানতে পেরে আনন্দিত: কারও প্রতি বাধ্য করার মতো কাউন্টার-যুক্তি থাকলেই আমি প্রশ্নটি অন্য দু'দিনের জন্য ছেড়ে দিতে চাই, তবে এখনও পর্যন্ত এটি সঠিক উত্তর বলে মনে হচ্ছে আমাকে.
ইয়ান ডান

3
নাবালক সংশোধন: ডাব্লুপি-রুট থেকে ডাব্লুপি-কনফিগারেশন.এফপি ফাইল সরানোতে কোনও সুরক্ষা সুবিধা নেই । অন্যান্য সুবিধা রয়েছে, যা সুরক্ষা সম্পর্কিত নয় এবং যা কেবল অস্বাভাবিক সেটআপগুলিতে প্রয়োগ হয়।
অটো

4
কেবল একটি সম্ভাব্য কল্পকাহিনীকে অচল করে দেওয়া - এটি কি সম্ভব নয়, কিছু ভুল সার্ভারের দিকে যেতে পারে - এই ক্ষেত্রে পিএইচপি কোডটি স্ক্রিনে মুদ্রিত হয়?
স্টিফেন হ্যারিস

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

4
এটি ভাল পয়েন্ট, তবে এগুলির সাথে আমার সবচেয়ে বড় সমস্যাটি হ'ল এগুলি প্রতিকারমূলক যুক্তি, প্রতিরোধমূলক যুক্তি নয়। এগুলির বেশিরভাগ আলোচনা কীভাবে এটি একটি বিশাল চুক্তি নয় কারণ ক) আপনি ধরে নেন যে কেউ সঠিকভাবে ডিবি ব্যবহারকারীকে পরিচালনা করেছেন এবং খ) আপনার ব্যাকআপ রয়েছে। আপনি যখন ডাব্লুতে উইওকমার্স বা সংবেদনশীল তথ্য সংরক্ষণের মতো কিছু ব্যবহার করছেন তখন কী হবে? তাহলে তুমি ভুল
গোল্ডেনটোয়া 11

25

আমি মনে করি ম্যাক্স একটি জ্ঞানীয় উত্তর, এবং এটি গল্পটির এক দিক। ওয়ার্ডপ্রেস কোডেক্স আরো পরামর্শ রয়েছে :

এছাড়াও, নিশ্চিত হয়ে নিন যে কেবলমাত্র আপনি (এবং ওয়েব সার্ভার) এই ফাইলটি পড়তে পারেন (এর অর্থ সাধারণত 400 বা 440 অনুমতি রয়েছে)।

যদি আপনি .htaccess সহ কোনও সার্ভার ব্যবহার করেন তবে এটির জন্য সার্ফিং কারও অ্যাক্সেস অস্বীকার করতে আপনি এই ফাইলটিতে (একেবারে শীর্ষে) এটি রাখতে পারেন:

<files wp-config.php>
order allow,deny
deny from all
</files>

নোট করুন যে wp-config.php এ 400 বা 440 অনুমতি সেট করা প্লাগইনগুলিকে এতে লেখা বা পরিবর্তন করতে বাধা দিতে পারে। উদাহরণস্বরূপ একটি আসল কেসটি হ'ল, ক্যাচিং প্লাগইনগুলি (ডাব্লু 3 টোটাল ক্যাশে, ডাব্লুপি সুপার ক্যাশে, ইত্যাদি) সে ক্ষেত্রে আমি 600 ( /home/userডিরেক্টরিতে ফাইলগুলির জন্য ডিফল্ট অনুমতি ) নিয়ে যাব ।


5
ম্যাক্স এর উত্তর। তাকে +1 করুন। আমি কেবল এটি প্রসারিত করার চেষ্টা করছি।
এর_মে

1
অহন কৃষ, আপনি ষাঁড়টির চোখে আঘাত করেছেন। সংযোজনের জন্য ধন্যবাদ।
ম্যাক্স ইউদিন

সুতরাং আপনি যদি এইচটিপিএসকে ডাব্লুপি-কনফিগারেশন.এফপি-র অনুরোধ অস্বীকার করতে ব্যবহার করেন তবে লগ / ব্যাকআপ / ইত্যাদির বহিঃপ্রকাশ ছাড়াই ডকুমেন্টের মূলের বাইরে চলে যাওয়ার মতো একই ফলাফলটি অর্জন করতে পারে না?
ইয়ান ডান

4
@ ইয়ানডুন ডকুমেন্টের মূলটি কী তার উপর নির্ভর করে— (1) যদি ওয়ার্ডপ্রেস কোনও ডিরেক্টরিতে হোস্ট করা হয় তবে ডিরেক্টরিটির বাইরে public_htmlযাওয়ার wp-config.phpঅর্থ হল এটি ডিরেক্টরিতে চলেছে public_html। এই ক্ষেত্রে, আপনাকে ডাব্লুপি-কনফিগারেশন.এফপি-র HTTP অনুরোধ অস্বীকার করতে htaccess বিধিগুলি ব্যবহার করতে হবে। (২) ওয়ার্ডপ্রেস সরাসরি public_htmlডিরেক্টরি অধীনে ইনস্টল করা থাকলে , এক স্তর উপরে => আপনি এটিকে /home/userডিরেক্টরিতে স্থানান্তরিত করবেন । ফাইলটি নথির মূলের বাইরে থাকায় আপনি বেশ নিরাপদ। আপনি এখনও ফাইলের অনুমতিগুলি 600 (বা এমনকি কঠোর 440 বা 400) এ সেট করতে পারেন।
এর_মে

@ আইয়ানডান লাইক আমি বলেছিলাম, এটি আমার প্রাথমিক ধারণা এবং আমি কোনও সুরক্ষার বিশেষজ্ঞ নই। :)
এর_মে

17

কেউ আমাদের চকচকে করতে বলেছেন, এবং আমি এখানে উত্তর দেব।

হ্যাঁ, আপনার সাইটের মূল ডিরেক্টরি থেকে আপনার ডাব্লুপি-কনফিগারেশন.এফপি বিচ্ছিন্ন করার সুরক্ষা সুবিধা রয়েছে।

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

2- সর্বোত্তম অনুশীলনগুলি সর্বদা ডেটা ফাইল থেকে কনফিগারেশন ফাইলগুলি বিচ্ছিন্ন করার পরামর্শ দেয়। হ্যাঁ, ওয়ার্ডপ্রেস (বা কোনও ওয়েব অ্যাপ্লিকেশন) দিয়ে এটি করা শক্ত, তবে এটিকে সরানো কিছুটা বিচ্ছিন্নতা তৈরি করে।

3- পিএইচপি-সিজিআই দুর্বলতা মনে রাখবেন, যেখানে যে কোনও ফাইল? -এস কোনও ফাইলে পাস করতে পারে এবং উত্সটি দেখতে পারে। http://www.kb.cert.org/vuls/id/520827

শেষে, সেগুলি ছোট বিবরণ, তবে তারা ঝুঁকি হ্রাস করতে সহায়তা করে। বিশেষত যদি আপনি একটি ভাগ করা পরিবেশে থাকেন, যেখানে যে কেউ আপনার ডাটাবেস অ্যাক্সেস করতে পারে (তাদের যাবতীয় প্রয়োজন ব্যবহারকারী / পাস) need

তবে কোনও সাইটকে সঠিকভাবে সুরক্ষিত করার জন্য যা প্রয়োজন তা সামান্য বিঘ্ন (অকালীন অপ্টিমাইজেশান) এর সামনে না পেতে:

1- সর্বদা আপডেট রাখুন

2- শক্তিশালী পাসওয়ার্ড ব্যবহার করুন

3- অ্যাক্সেস সীমাবদ্ধ (অনুমতি মাধ্যমে)। এটি সম্পর্কে আমাদের এখানে একটি পোস্ট রয়েছে:

http://blog.sucuri.net/2012/08/wordpress-security-cutting-through-the-bs.html

ধন্যবাদ,


ওহে বলছি, আপনার চিন্তা যুক্ত করার জন্য ধন্যবাদ। আমি মনে করি আমরা ইতিমধ্যে অন্যান্য উত্তর এবং তাদের মন্তব্যে points পয়েন্টগুলির বেশিরভাগটিতে হিট করেছি। 1) হ্যাঁ, এটি সম্ভব তবে বিরল; 2) হ্যাঁ, এর সুবিধাগুলি রয়েছে তবে সেগুলি ন্যূনতম; ৩) হ্যাঁ, এটি সম্ভব, তবে সেই ধরণের দুর্বলতা আবার হওয়ার সম্ভাবনা নেই এবং এর বিরুদ্ধে সুরক্ষা দেওয়া এক ধরণের তিমি-তিল বাজানো, বা বিমানবন্দরগুলিতে লোকদের জুতো সরিয়ে দেওয়ার মতো কারণ কিছু জ্যাকাস তার মধ্যে একটি বোমা লুকিয়ে রেখেছিল his জুতো একবার। এটি প্রতিক্রিয়াশীল এবং ভবিষ্যতের সুবিধা পাওয়ার সম্ভাবনা কম।
ইয়ান ডান

বিভিন্ন আলোচনায় প্রশ্নটি "কি কোনও সুবিধা আছে?" থেকে পরিমার্জন করা হয়েছিল "ঠিক আছে, কিছু সুবিধা রয়েছে, তবে তারা কি ঝুঁকি ছাড়িয়ে যায়?" আমি যে প্রধান ঝুঁকির কথা উল্লেখ করছি তা হ'ল পিএইচপি ওয়েব স্কেলের বাইরে স্ক্রিপ্টগুলিতে অ্যাক্সেস করতে আপনাকে ওপেনবেস_ডির সুযোগটি প্রসারিত করতে হবে। অনেক হোস্টিং সেটআপ - যা প্লেস্ক ব্যবহার করে সেগুলি অনেকগুলি অন্তর্ভুক্ত - স্টোর লগ, ব্যাকআপস, ব্যক্তিগত এফটিপি অঞ্চল যা ওয়েব রুটের উপরের ডিরেক্টরিতে ওয়েব রুট থেকে বিচ্ছিন্ন হওয়ার কথা etc সুতরাং, সেই ডিরেক্টরিতে পিএইচপি অ্যাক্সেস দেওয়া গুরুতর দুর্বলতা হতে পারে।
আয়ান ডান

15

অবশ্যই হ্যাঁ.

যখন আপনি ডাব্লুপি-কনফিগারেশন। পিএফপি পাবলিক ডিরেক্টরিের বাইরে চলে যান যখন আপনি পিএইচপি হ্যান্ডলারটি দূষিতভাবে (বা দুর্ঘটনাক্রমে!) পরিবর্তিত হয়ে যায় তখন ব্রাউজার ব্যবহার করে এটি পড়া থেকে রক্ষা করেন।

আপনার ডিবি লগইন / পাসওয়ার্ড পড়া তখনই সম্ভব যখন পঙ্গু প্রশাসকের কোনও ত্রুটির মাধ্যমে সার্ভারটি খুব কমই সংক্রামিত হয়। প্রশাসককে জরিমানার জন্য চার্জ দিন এবং আরও ভাল-স্নেহযুক্ত এবং আরও নির্ভরযোগ্য সার্ভার হোস্ট পান। যদিও এটি আরও ব্যয়বহুল হতে পারে।


4
যদি কোনও আক্রমণকারীর পিএইচপি হ্যান্ডলারটি পরিবর্তন করার পর্যাপ্ত অ্যাক্সেস থাকে তবে আপনি ইতিমধ্যে খারাপ হয়ে গেছেন। দুর্ঘটনাজনিত পরিবর্তনগুলি আমার অভিজ্ঞতায় খুব বিরল, এবং সেক্ষেত্রে পাসওয়ার্ডটি পরিবর্তন করা সহজ হবে। এই বিষয়গুলির আলোকে, আপনি কি এখনও ভাবেন যে প্রসারিত open_basedirসুযোগের কারণে লগগুলি / ব্যাকআপগুলি / ইত্যাদি প্রকাশের ঝুঁকিটি মূল্যবান ?
ইয়ান ডান

1
আমি এর -rwxচেয়ে বেশি ডিরেক্টরিতে অ্যাক্সেস পাইনি public_htmlতাই আমি কখনই পরিচিত ছিল না open_basedir। আমার লগগুলি পৃথক ডিরেক্টরিতে থাকে, তাই ব্যাকআপ থাকে। আমি মনে করি এটি সমস্ত ভাগ্যবান হোস্টদের কি আছে।
ম্যাক্স ইউদিন

হোস্টগুলি বন্যভাবে পরিবর্তিত হয়; কোনও আদর্শ ডিরেক্টরি কাঠামো নেই। প্লেস্ক (শেয়ার্ড হোস্টগুলির জন্য সর্বাধিক জনপ্রিয় নিয়ন্ত্রণ প্যানেলগুলির মধ্যে একটি) /var/www/vhosts/example.com/statistics/logs এ লগ রাখে এবং নথির মূলটি /var/www/vhosts/example.com/httpdocs। Wp-config.php /var/www/vhosts/example.com/wp-config.php এ সরানোর জন্য পুরো উদাহরণ.কম ডিরেক্টরিতে স্ক্রিপ্টগুলি অ্যাক্সেস দেওয়া দরকার।
আয়ান ডান

কৌতূহলের বাইরে, ডোমেনের ডিরেক্টরিতে না থাকলে আপনার লগ এবং ব্যাকআপগুলি কোথায় সঞ্চয় করা আছে? তারা নিয়ন্ত্রণ প্যানেল বা কিছু মাধ্যমে অ্যাক্সেস করা হয়?
আয়ান ডান

1
হ্যাঁ, একটি নিয়ন্ত্রণ প্যানেলের মাধ্যমে।
ম্যাক্স ইউদিন

8

আমি কেবল তর্ক করার জন্য, আপনার wp_config.php ফাইলটি সরানোর অর্থ এই নয় যে আপনাকে কেবল প্যারেন্ট ডিরেক্টরিতে নিয়ে যেতে হবে। ধরা যাক আপনার / root / html এর মতো একটি কাঠামো রয়েছে, যেখানে এইচটিএমএলটিতে ডাব্লুপি ইনস্টলেশন এবং আপনার সমস্ত HTML সামগ্রী রয়েছে। Wp_config.php কে / রুটে স্থানান্তরিত করার পরিবর্তে, আপনি এটিকে / root / সুরক্ষার মতো কিছুতে স্থানান্তরিত করতে পারেন ... যা এইচটিএমএল ডিরেক্টরির বাইরেও সার্ভার রুট ডিরেক্টরিতে নয়। অবশ্যই, আপনার পিএইচপি এই সুরক্ষিত ফোল্ডারেও চলতে পারে তা নিশ্চিত করতে হবে।

যেহেতু ডাব্লুপি / রুট / সুরক্ষার মতো ভাইবোন ফোল্ডারে wp_config.php সন্ধানের জন্য কনফিগার করা যায় না, তাই আপনাকে একটি অতিরিক্ত পদক্ষেপ নিতে হবে। আমি wp_config.php কে / রুট / এইচটিএমএল এ রেখেছি এবং সংবেদনশীল অংশগুলি (ডাটাবেস লগইন, লবণ, টেবিল উপসর্গ) কেটে ফেলেছি এবং সেগুলি কনফিগার.এফপি নামে একটি পৃথক ফাইলে স্থানান্তরিত করেছি। তারপরে আপনি পিএইচপি includeকমান্ডটি আপনার wp_config.php এ যুক্ত করুন:include('/home/content/path/to/root/secure/config.php');

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

তদতিরিক্ত, আপনি এখানে একটি htaccess ফাইল তৈরি করে সুরক্ষিত ফোল্ডারে অ্যাক্সেস সীমাবদ্ধ করতে পারেন:

order deny,allow
deny from all
allow from 127.0.0.1

আরে মাইকেল, ভাগ করে নেওয়ার জন্য ধন্যবাদ। আপনি যদি বাস্তবে এটি ব্যবহার করে যাচাই করার চেষ্টা করেন? আমি মনে করি open_basedirনির্দেশ একটি সম্পূর্ণ লাগে গাছ , তাই অ্যাক্সেস করার জন্য /root/secureথেকে /root/html, আপনি সেট করতে চাই open_basedirকরতে /root
আয়ান ডান

আপনার ধারণাটি কাজ করার জন্য, আমি মনে করি আপনাকে ডিরেক্টরি কাঠামো স্থাপন করতে হবে /root/httpdocs/config/accessibleযেখানে httpdocsলগ, ব্যাকআপ ইত্যাদি রয়েছে; configঝুলিতে wp-config.php, এবং accessibleওয়ার্ডপ্রেস এবং সমস্ত সামগ্রী ঝুলিতে। ডকুমেন্টের রুটটি পুনরায় তৈরি করতে আপনাকে vhost কনফিগারেশন ইত্যাদি পরিবর্তন করতে হবে accessible। যদিও ডিফল্ট সেটআপে কেবলমাত্র ডাব্লুপি-কনফিগার করার জন্য এইচটিটিপি অনুরোধ অস্বীকার করার কোনও সুবিধা আমি দেখতে পাচ্ছি না।
আয়ান ডান

1
Php.net/manual/en/ini.core.php#ini.open-baseir অনুসারে : "উইন্ডোজ এর অধীনে ডিরেক্টরিগুলি একটি সেমিকোলন দিয়ে পৃথক করুন। অন্য সমস্ত সিস্টেমে ডিরেক্টরিগুলি একটি কোলন দিয়ে পৃথক করুন। অ্যাপাচি মডিউল হিসাবে, অভিভাবক ডিরেক্টরি থেকে ওপেন_ব্যাসিডির পাথগুলি স্বয়ংক্রিয়ভাবে উত্তরাধিকার সূত্রে প্রাপ্ত। " সুতরাং আপনি একাধিক ডিরেক্টরি সেট করতে পারেন, সেগুলিতে একটি গাছে থাকার দরকার নেই।
মাইকেল

আমি এটি পরীক্ষা করেছি এবং দেখে মনে হচ্ছে আপনি ঠিক আছেন। আমি এখনও নিশ্চিত নই যে এপাচের মাধ্যমে কেবল ফাইলে অ্যাক্সেস অস্বীকার করার ফলে সুরক্ষার কী কী সুবিধা হবে।
আয়ান ডান

@ ইয়ানডান অ্যারন অ্যাডামসের উত্তরে ভাল ভাষণ দিয়েছিলেন
অ্যান্ড্রুসি

4

সেখানে অনেকগুলি খারাপ লিখিত থিম এবং প্লাগইন রয়েছে যা অ্যাটাক্কারদের কোড ইনজেক্ট করার অনুমতি দেয় (টিমথম্বের সাথে সুরক্ষার সমস্যাটি মনে রাখবেন)। আমি যদি আক্রমণকারী হয়ে থাকি তবে কেন আমি wp-config.php অনুসন্ধান করব? কেবল এই কোডটি ইনজেক্ট করুন:

var_dump( DB_NAME, DB_USER, DB_PASSWORD );

আপনি আপনার wp-config.php লুকাতে চেষ্টা করতে পারেন। যতক্ষণ ওয়ার্ডপ্রেস সমস্ত সংবেদনশীল তথ্যকে বিশ্বব্যাপী অ্যাক্সেসযোগ্য করে তুলবে ততক্ষণ ডাব্লুপি-কনফিগারেশন.এফপি লুকানোর কোনও সুবিধা নেই।

Wp-config.php এর খারাপ অংশটি এটি সংবেদনশীল ডেটা ধারণ করে না। সংবেদনশীল ডেটাটিকে বিশ্বব্যাপী অ্যাক্সেসযোগ্য ধ্রুবক হিসাবে সংজ্ঞায়িত করা খারাপ অংশ।

হালনাগাদ

আমি define()সংবেদনশীল ডেটাকে একটি আন্তর্জাতিক ধ্রুবক হিসাবে সংজ্ঞায়িত করা কেন খারাপ ধারণা তা নিয়ে সমস্যাগুলি পরিষ্কার করতে চাই।

কোনও ওয়েবসাইটে আক্রমণ করার অনেক উপায় রয়েছে are স্ক্রিপ্ট ইনজেকশন একটি ওয়েবসাইট অ্যাটাক করার একমাত্র উপায়।

ধরে নিচ্ছি যে সার্ভারটির একটি দুর্বলতা রয়েছে যা আক্রমণকারীকে একটি মেমরি ডাম্প অ্যাক্সেস করতে দেয়। আক্রমণকারী সমস্ত ভেরিয়েবলের সমস্ত মানকে মেমরির মধ্যে ফেলে দেবে। আপনি যদি কোনও গ্লোবাল অ্যাক্সেসযোগ্য ধ্রুবকটি সংজ্ঞায়িত করেন তবে স্ক্রিপ্টটি শেষ না হওয়া পর্যন্ত এটি স্মৃতিতে থাকতে হবে। একটি ধ্রুবকের পরিবর্তে পরিবর্তনশীল তৈরি করা, এমন একটি ভাল সম্ভাবনা রয়েছে যে আবর্জনা সংগ্রহকারী ভেরিয়েবলটির আর প্রয়োজন না হওয়ার পরে মেমরিটিকে মুছে ফেলবে (বা ফ্রি) will

সংবেদনশীল ডেটা সুরক্ষার জন্য আরও ভাল উপায় হ'ল এটি ব্যবহারের সাথে সাথে তা মুছে ফেলা:

$db_con = new stdClass();
$db_con->db_user = 'username';
$db_con->password = 'password';
$db_con->host = 'localhost';

$db_handler = new Database_Handler( $db_con );

$db_con = null;

সংবেদনশীল ডেটা ব্যবহার করার পরে, অ্যাসাইনিংটি nullমেমরিতে ডেটা ওভাররাইট করে। $db_conসংবেদনশীল ডেটা থাকা অবস্থায় কোনও আক্রমণকারীকে মুহুর্তের মধ্যেই মেমরি ডাম্প পেতে হয় । এবং এটি উপরের উদাহরণটিতে খুব অল্প সময় (যদি শ্রেণি ডাটাবেসহ্যান্ডলার এটির একটি অনুলিপি সংরক্ষণ না করে)।


এই প্রতিক্রিয়াটি সরাসরি প্রশ্নের সমাধান করে না। কোনও প্লাগইন লেখক যদি ওয়ার্ডপ্রেসের সাথে মাঠের দিন থাকতে পারে তবে তারা আপনাকে তাদের কোডটি ইনস্টল করতে রাজি করতে এবং দূষিত অভিপ্রায় রাখতে পারে। এটি আপনার সিস্টেমে স্বেচ্ছায় কোনও ভাইরাস ইনস্টল করার চেয়ে আলাদা নয়। Wp-config.php সরানোর জন্য এই যুক্তিটি অর্থহীন। এটি বলার মতো যা আপনার গাড়ীতে ইচ্ছাকৃতভাবে একটি গাড়ি বোমা ইনস্টল করা গাড়ি অ্যালার্মকে অকেজো করে দেয়। প্রযুক্তিগতভাবে সত্য তবে ডব্লিউটিএফ?!?
ল্যান্স ক্লিভল্যান্ড

2
না, এটি অর্থহীন নয়। প্রশ্নটি হল: wp-config.php কে লুকিয়ে রেখে আমি কি ডাটাবেস অ্যাকাউন্টটি সুরক্ষা দিতে পারি? এবং উত্তরটি স্পষ্ট: না। এটি একইরূপে আপনি যদি জিজ্ঞাসা করেন যে 'আমি কি গাড়ীর অ্যালার্ম দিয়ে গাড়ি বোমা থেকে রক্ষা করতে পারি?' ডাটাবেস অ্যাক্সেস বা ftp অ্যাক্সেস রক্ষা হিসাবে আপনার ডাব্লুপি-কনফিগারেশনটি লুকিয়ে রেখে অন্য কোনও সুবিধা নেই। দুটোই বিশ্বব্যাপী। আমি নিশ্চিত যে আক্রমণকারীদের ইনজেকশন কোড ছাড়াই বৈশ্বিক ভারতে অ্যাক্সেস পাওয়ার আরও অনেক উপায় রয়েছে।
রালফ 912

আমি দেখতে পাচ্ছি না "আমি কি ডাব্লুপি-কনফিগারেশন। Php" রেখে ডাটাবেস অ্যাকাউন্টটি সুরক্ষা রাখতে পারি? মূল প্রশ্নটি ছিল "ডাব্লুপি-কনফিগারেশন.এফপি স্থানান্তরিত করার অর্থ কি"? উত্তর একেবারে হ্যাঁ, আইএমও। এটি জিজ্ঞাসার মতো যে আপনি বাইরে বেরোনোর ​​সময় আপনার সামনের দরজাটি লক করা উচিত কিনা। "কেউ সহজেই উইন্ডোটি ভেঙে যে কোনও উপায়ে প্রবেশ করতে পারে তাই বলে কেন বিরক্ত হন" এই প্রশ্নের মূল বিষয়টির উত্তর দেয় না। যে প্রশ্নটি জিজ্ঞাসা করা হয়েছিল তা হ'ল, "কি ডাব্লুপি-কনফিগারেশন.এফপি স্থানান্তরিত করার জন্য অতিরিক্ত পরিশ্রমের মূল্য রয়েছে? এটি করার ফলে কোনও উপকার হয়?"। হ্যাঁ. খুব কমপক্ষে এটি অলস হ্যাকারদের বাইরে রাখে।
ল্যান্স ক্লিভল্যান্ড

2
সর্বাধিক সাধারণ সুরক্ষার সর্বোত্তম অনুশীলনগুলির মধ্যে একটি ... আপনি একটি খুব (খুব খুব) গুরুত্বপূর্ণ বিষয়টি মিস করেছেন: আক্রমণকারী কীসের আগ্রহী? এবং আপনি কীভাবে আপনার wp-config.php স্টাইল করেন তা নয় । একজন আক্রমণকারী আপনার ডাব্লুপি-কনফিগারেশনে সংজ্ঞায়িত মানগুলিতে ইন্টারেস্ট করা হয়। সামনের দরজা দিয়ে আপনার উদাহরণটি ধরা: আপনার ডাব্লুপি-কনফিগারটি গোপন করা সমান যেমন আপনি নিজের সামনের দরজাটি লক করে রাখবেন তবে বাগানে আপনার সমস্ত স্বর্ণ সুরক্ষিত রাখবেন। ডাব্লুপি-কনফিগারেশনে সংজ্ঞায়িত সমস্ত মান বিশ্বব্যাপী সংজ্ঞায়িত। তাই তারা সব WP-কনফিগ এর বাইরে অ্যাক্সেসযোগ্য। এমনকি আপনি যদি আপনার ডাব্লুপি-কনফিগারটি গোপন করেন তবে মানগুলি এখনও উপস্থিত রয়েছে।
রালফ 912

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

-1

সুরক্ষা সুবিধাগুলি ছাড়াও, কোর ওয়ার্ডপ্রেস ফাইলগুলিকে সাবমোডুল / বহিরাগত হিসাবে রাখার সাথে সাথে আপনার ওয়ার্ডপ্রেস উদাহরণটি ভার্সন নিয়ন্ত্রণের মধ্যে রাখতে দেয়। মার্ক জাকিথ এভাবেই তাঁর ওয়ার্ডপ্রেস-স্কেলটন প্রকল্পটি সেটআপ করেছেন। বিশদ জানতে https://github.com/markjaquith/WordPress- স্কেলটন# assumptions দেখুন ।


8
ডকুমেন্টের মূলটিতে এটির সেটআপ রয়েছে, এর বাইরে নয়, তাই এটি এই প্রশ্নের সাথে প্রাসঙ্গিক নয়। যে কৌশল সম্পর্কে প্রশ্নটি জিজ্ঞাসা করেছিল তা উল্লেখ করে যে আপনি ওয়ার্ডপ্রেস ইনস্টলেশন ফোল্ডারের উপরে কেবল একটি ডিরেক্টরি নয়, তবে vhost এর নথির মূলেরwp-config.php উপরে একটি ডিরেক্টরি সরিয়ে নিয়েছেন । পুরো বিষয়টি হ'ল এই ফোল্ডারের বাইরে যা HTTP অনুরোধগুলি দ্বারা পঠিত হতে পারে।
ইয়ান ডান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.