একজন সফল ই-কমার্স প্ল্যাটফর্ম হিসেবে প্রেস্টাশপ (PrestaShop), সন্দেহ নেই, হ্যাকারদের জন্য আকর্ষণীয় লক্ষ্য। হ্যাকাররা জনপ্রিয় CMS-গুলোর উপেক্ষিত ভালনারেবিলিটি খুঁজতে সর্বদা সক্রিয়। তারা পেলোড ডেলিভারির নতুন পদ্ধতি খুঁজতে থাকে, যেন খোলা ওয়াই-ফাই ট্রাফিকে ARP পויזনিং এর মাধ্যমে ম্যালওয়ার ইনজেক্ট করা। আরও, প্রেস্টাশপ ম্যালওয়ার হল হ্যাকাররা ভালনারেবিলিটি ব্যবহার করে প্রেস্টাশপ স্টোর এক্সপ্লয়েট করার জন্য ডেপ্লয় করা যেকোনো ম্যালিশিয়াস কোড।
বই "Learning Malware Analysis" অনুযায়ী,
যদি আপনি প্রেস্টাশপ ম্যালওয়ারের বিভিন্ন ধরন এবং সেগুলো থেকে রক্ষার উপায় জানতে চান, তবে আর कहीं খুঁজবেন না। এই আর্টিকেলই আপনার প্রয়োজনীয় औষধ।
সম্পর্কিত আর্টিকেল- প্রেস্টাশপ সিকিউরিটি প্র্যাকটিস এবং ম্যালওয়ার রিমুভাল গাইড
প্রেস্টাশপ ম্যালওয়ার ইনজেকশন: ডেলিভারির পদ্ধতিসমূহ

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

প্রেস্টাশপে SQL ইনজেকশন
একটি SQL ভালনারেবিলিটি প্রেস্টাশপ স্টোরের টেবিলে ম্যালিশিয়াস কোড ইনজেক্ট করতে ব্যবহার করা যেতে পারে। কিছু কেসে SQLi ভালনারেবিলিটি ব্যবহার করে সার্ভারে ফাইল আপলোড করা যায়। তাই এমন কেসে আক্রমণকারী প্রেস্টাশপ স্টোরের ওয়েব সার্ভারে ম্যালিশিয়াস স্ক্রিপ্ট আপলোড করতে পারে। প্রেস্টাশপ একটি SQLi ফ্ল থেকে আক্রান্ত ছিল, যাকে CVE-2018-8824 নামে ডাকা হয়েছিল।
সম্পর্কিত আর্টিকেল- PHP ওয়েবসাইট এবং CMS-এ SQL ইনজেকশনের ফলাফল
প্রেস্টাশপে ক্রস-সাইট স্ক্রিপ্টিং (XSS)
যদি প্রেস্টাশপ স্টোর XSS ভালনারেবিলিটির শিকার হয়, আক্রমণকারী সরাসরি ম্যালওয়ার ইনজেক্ট করতে পারে যদি সেটি স্টোরড XSS হয়। যদি রিফ্লেক্টেড XSS হয়, তবে আক্রমণকারী প্রেস্টাশপ স্টোরের অ্যাডমিনকে একটি ειδ الزواجত образом তৈরি URL পাঠাতে পারে। এটা তারপর আক্রমণকারী-নিয়ন্ত্রিত সার্ভার থেকে ম্যালিশিয়াস স্ক্রিপ্ট লোড করে প্রেস্টাশপ ম্যালওয়ার ইনজেক্ট করে। প্রেস্টাশপ ১.৭.২.৪ XSS ভালনারেবিলিটির শিকার ছিল, যাকে CVE-2018-5681 নামে ডাকা হয়েছিল।
প্রেস্টাশপে রিমোট কোড এক্সিকিউশন (RCE)
রিমোট কোড এক্সিকিউশন ভালনারেবিলিটি আক্রমণকারীদের প্রেস্টাশপ স্টোরের সার্ভারের সাথে সরাসরি ইন্টারঅ্যাক্ট করতে দেয়। তাই যদি প্রেস্টাশপ স্টোর RCE-এর শিকার হয়, আক্রমণকারী ওয়েবসাইটের লেজিটিমেট পেজে সরাসরি ম্যালওয়ার ইনজেক্ট করতে পারে। কোড অবফাসকেটেড থাকলে এই ধরনের ম্যালওয়ার শনাক্ত করা কঠিন। প্রেস্টাশপ (১.৫ থেকে ১.৭) gầnমত একটি RCE-র শিকার হয়েছিল, যাকে CVE-2018-19355 নামে ডাকা হয়েছিল।
সোশ্যাল ইঞ্জিনিয়ারিং এবং ড্রাইভ-বাই ডাউনলোড
সোশ্যাল ইঞ্জিনিয়ারিং আক্রমণ আজও ম্যালওয়ার পেলোড ডেলিভারির জন্য প্রাসঙ্গিক। সময়মতো আক্রমণকারী 'কাস্টমার সাপোর্ট' অফার করার बहানায় প্রেস্টাশপ স্টোরে ম্যালওয়ার ইনজেক্ট করতে পারে। প্রায়শই প্রেস্টাশপ স্টোরের ওয়েব অ্যাডমিনের ইমেইল আক্রমণকারীদের টার্গেট হয় ড্রাইভ-বাই ডাউনলোড চালানোর জন্য। অর্থাৎ ওয়েব অ্যাডমিনকে একটি URL-এ ক্লিক করতে ফাঁসিয়ে ম্যালওয়ার স্লেন্টলি প্রেস্টাশপ স্টোরে ইনস্টল করা হয়। প্রেস্টাশপ ভার্সন ১.৭.২.৫ পর্যন্ত UI-রিড্রেসিং/ক্লিকজ্যাকিং সিকিউরিটি ইস্যুর শিকার ছিল। এতে আক্রমণকারী লেজিটিমেট বাটন বা লিংকের পেছনে ম্যালওয়ার লুকাতে পারত। সোশ্যাল ইঞ্জিনিয়ারিং রিফ্লেক্টেড XSS-এর সাথে মিলিয়ে প্রেস্টাশপ ম্যালওয়ার ডেলিভারির জন্য ব্যবহার করা যেতে পারে।
প্রেস্টাশপে জিরো-ডে এবং ট্রোজান
কখনো কখনো আক্রমণকারী প্রেস্টাশপের কিছু অনাবিষ্কৃত ভালনারেবিলিটি হাতে করতে পারে। সেগুলো ব্যবহার করে তারা ওয়েবে একাধিক প্রেস্টাশপ ইনস্টলেশনে বড় পরিমাণে ম্যালওয়ার আক্রমণ চালায়। আরো, এমন ঘটনা হয়েছে যখন হ্যাকাররা সফটওয়্যারের কোর রিপোজিটরি সার্ভারকে টার্গেট করে সেটি ম্যালওয়ার দিয়ে ইনজেক্ট করেছে। উদাহরণস্বরূপ, PHP Pear প্যাকেজ ম্যানেজার তার অফিসিয়াল সাইট থেকে ম্যালওয়ার ইনজেক্ট করা হয়েছিল। এমন প্রেস্টাশপ ম্যালওয়ার যা লেজিটিমেট সফটওয়্যারের মত দেখায়, তাকে ট্রোজান বলে।
প্রেস্টাশপে ম্যালিশিয়াস বিজ্ঞাপন
উল্লেখ্য, হ্যাকাররা প্রতিদিন প্রেস্টাশপ ম্যালওয়ার ইনজেক্ট করার নতুন উপায় খুঁজে বের করছে এবং বিজ্ঞাপন ব্যবহার করে ম্যালওয়ার ডেলিভারি আরেক উদাহরণ। যদি আপনি আপনার ওয়েব স্পেসের কিছু অংশ বিজ্ঞাপনের জন্য ভাড়া দেন, তবে আক্রমণকারী সেটি কিনে আপনার কাস্টমারদের কাছে ম্যালওয়ার পৌঁছাতে পারে। এই ধরনের ম্যালওয়ার শনাক্ত করা কঠিন কারণ আপনার পক্ষ থেকে সবকিছু ক্লিন দেখাতে পারে কিন্তু প্রেস্টাশপ ম্যালওয়ার ইনফেকশন ম্যালিশিয়াস বিজ্ঞাপনের কারণে হচ্ছে।
প্রেস্টাশপ ম্যালওয়ারের ধরনসমূহ:
প্রেস্টাশপ ম্যালওয়ার: ক্রিপ্টোকারেন্সি মাইনার
এই ধরনের প্রেস্টাশপ ম্যালওয়ার আপনার সার্ভার এবং আপনার প্রেস্টাশপ סטোরে ভিজিট করার ব্যবহারকারীদের প্রসেসিং পাওয়ার ব্যবহার করে ক্রিপ্টোকারেন্সি মাইন করার উদ্দেশ্যে থাকে। একটি সিম্পল ক্রিপ্টো মাইনার ম্যালওয়ারের কোড নিচের মতো দেখতে পারে:
<script src=”https://authedmine.com/lib/simple-ui.min.js” async></script>
কয়েন হাইভ (Coinhive) একটি লেজিটিমেট সার্ভিস যা হ্যাকাররা এর সহজ বাস্তবায়নের কারণে অপব্যবহার করে। এটি ম্যালওয়ারের একটি সিম্পল ভারিয়েন্ট। আরও জটিল ক্রিপ্টো মাইনিং ম্যালওয়ার তাদের কোড অবফাসকেট করে থাকলে শনাক্ত করা কঠিন। একটি ভারিয়েন্ট হোস্টনেমের জন্য নন-ডটেড ডেসিমেল নোটেশন ব্যবহার করে।此外, এই কয়েন হাইভ লাইব্রেরি লুকাতে ম্যালওয়ার নকল jQuery স্ক্রিপ্ট ব্যবহার করে। এছাড়াও গুগল অ্যানালিটিক্স প্যারামিটারের মত মাইনার ভেরিয়েবল নাম ব্যবহার করে ডিটেকশন এড়াতে পারে।
প্রেস্টাশপ ম্যালওয়ার: র্যানসমওয়ার
প্রেস্টাশপ র্যানসমওয়ার হল সিস্টেম ফাইল এনক্রিপ্ট করে সিস্টেমটি অনব্যবহারযোগ্য করে দেওয়া ম্যালওয়ার। তারপর সাধারণত শুধু একটি ফাইল,대표적으로 index.php দৃশ্যমান থাকে যাতে একটি মেসেজ থাকে নির্দিষ্ট বিটকয়েন ঠিকানায় টাকা দিতে বলা। আরও ম্যালিশিয়াস বিষয় হল র্যানসম দিলেও ফাইল ডিক্রিপ্ট হবে কোনো গ্যারান্টি নেই। এমন ম্যালওয়ার সরানো কঠিন নয় কিন্তু সার্ভার ডেটা রিকভারি চ্যালেঞ্জিং কাজ। WannaCry-এর মতো কিছু র্যানসমওয়ার আক্রমণ বিশ্বব্যাপি ক্রিটিক্যাল সিস্টেম আঘাত করেছে, তাই এই পরিস্থিতিতে প্রতিরোধই সর্বোত্তম চিকিৎসা।
প্রেস্টাশপ ম্যালওয়ার: ক্রেডিট কার্ড স্কিমার
কিছু প্রেস্টাশপ ম্যালওয়ার আপনার প্রেস্টাশপ স্টোর থেকে ট্রানজ্যাকশন ইনফো চুরি করার জন্য কাস্টমাইজড থাকে। একটা এমন ম্যালওয়ারের কোড স্নিপেট নিচের ছবিতে দেওয়া আছে।

কোড থেকে স্পষ্ট, এই ম্যালওয়ার প্রথমে ডেটাবেস কানেকশন স্থাপন করে। তারপর ps_payment_cc টেবিল থেকে নিচের ইনফো চুরি করে:
- ট্রানজ্যাকশনের পেমেন্ট আইডি
- ক্রেডিট কার্ড নম্বর
- ক্রেডিট কার্ডের ব্র্যান্ড নাম
- ক্রেডিট কার্ড এক্সপায়ারি ডেট
এই ডিটেইলস পেয়ে ম্যালওয়ার সেগুলো আক্রমণকারী-নিয়ন্ত্রিত সার্ভারে পাঠিয়ে দেয়।
সম্পর্কিত আর্টিকেল – প্রেস্টাশপে কার্ড হ্যাক ফিক্স করা
প্রেস্টাশপ ম্যালওয়ার: ভাইরাস
প্রেস্টাশপ ভাইরাস আপনার স্টোরে பல ধরনের ম্যালিশিয়াস অপারেশন পারফর্ম করতে পারে। এটি হারMLESS প্রাঙ্ক থেকে পুরো ফাইল সিস্টেম ডিলিট করার পর্যায় পর্যন্ত হতে পারে। তবে, পারসিস্টেন্স বজায় রাখতে প্রেস্টাশপ ভাইরাস তাদের কোড অবফাসকেট করে। যেহেতু প্রেস্টাশপ PHP-তে বিল্ড করা, একটি টিপিক্যাল ভাইরাস সিগনেচার হতে পারে 'php.malware.fopo' ভাইরাস як ছবিতে দেখানো হয়েছে।

ছবিতে দেখা যাচ্ছে, FOPO কোডটি মানুষের জন্য অপাঠ্য করে দেয়া ফলে ডিটেকশন এড়াতে পারে। ম্যালওয়ার রিমুভালের জন্য কোড পড়তে FOPO ডি-অবফাসকেটর লাগে। কিছু প্রেস্টাশপ প্লাগইন ডেভেলপার তাদের কোড রক্ষার জন্য FOPO টুল ব্যবহার করে। তাই এই ম্যালওয়ার ডিটেকশন জটিল হয়ে যায় এবং এটি কখনো অপ্রশিক্ষিত প্রফেশনালরা করবেন না।再者, এটি একটি জেনেরিক প্রেস্টাশপ ভাইরাসের রেফারেন্স এবং একাধিক এমন জটিল ভাইরাস আছে তাই সকল কভার করা এই আর্টিকেলের সুযোগের বাইরে।
প্রেস্টাশপ ম্যালওয়ার রিমুভাল
যদি আপনার স্টোর প্রেস্টাশপ ম্যালওয়ার سے ইনফেক্টেড হয়, সलাহ দেওয়া হচ্ছে ফাইল সিস্টেম দেখতে শুরু করুন। যেহেতু প্রেস্টাশপ PHP ব্যবহার করে, হ্যাকাররা PHP কনফিগারেশন ফাইল যেমন php.ini, user.ini ইত্যাদি মডিফাই করে। এই ফাইলগুলো সিস্টেমের পারমিশন সেটিং-এর জন্যও দায়ী তাই আক্রমণকারীদের বেশি রিসোর্স দিতে পারে। অন্য একটি গুরুত্বপূর্ণ ফাইল হল .htaccess ফাইল। এই ফাইল প্রেস্টাশপ ম্যালওয়ার দ্বারা মডিফাই করা হয় একটি সাইটের ট্রাফিক স্প্যাম সাইটে রিডাইরেক্ট করার জন্য। তবে, যেহেতু এই ফাইলগুলো সংবেদনশীল, সন্দেহজনক কোড ডিলিট করবেন না। বরং সেগুলো কমেন্ট আউট করে সিকিউরিটি এক্সপার্টের সাথে যোগাযোগ করুন। প্রেস্টাশপ ফাইলে বেস ৬৪ ফরম্যাটে লুকানো ম্যালওয়ার খুঁজতে SSH-এর মাধ্যমে এই কমান্ড ব্যবহার করুন:
find . -name "*.php" -exec grep "base64" '{}' ; -print &> code.txt
এই কমান্ড প্রেস্টাশপ ফাইলে বেস ৬৪ এনকোডিং-এ লুকানো সকল কোড খুঁজে code.txt ফাইলে সংরক্ষণ করবে যা পরে ডিকোড করা যাবে। বেস ৬৪ এনকোডিং ছাড়া FOPO ও কোড লুকাতে ব্যবহার হয়। FOPO কোড অনলাইন টুলস ব্যবহার করে ডি-অবফাসকেট করা যায়। এখন ডেটাবেস ক্লিন করতে PHPMyAdmin টুল ব্যবহার করুন। এই টুল ডেটাবেসে ম্যালিশিয়াস এন্ট্রি খুঁজে বের করতে সাহায্য করে। কিছু ম্যালিশিয়াস কিওয়ার্ড যা খুঁজে বের করতে হবে:
$_POST, $_GET , eval, exec ,system, passthru, gzdecode, gzuncompress, base64_decode, file_get_contents, file_put_contents, strtoupper.
এই টার্মগুলো যেকোনো একটি করে phpMyAdmin-এ এন্টার করে ফাইল বা টেবিলে সার্চ করা যাবে। নিচের ছবিতে উদাহরণ দেখানো হলো।

চূড়ান্ত প্রেস্টাশপ ম্যালওয়ার সুরক্ষা
এই সব ম্যানুয়াল প্রক্রিয়া ক্লান্তিকর মনে হয় এবং এখনও গ্যারান্টি নেই যে প্রেস্টাশপ ম্যালওয়ার ইনফেকশন চলে যাবে। এই ঝামেলা এড়াতে অস্ত্রা (Astra) שנותן সিকিউরিটি সলিউশন ব্যবহার করুন। অস্ত্রা ফায়ারওয়াল আক্রমণকারীদের আপনার প্রেস্টাশপ স্টোর ইনফেক্ট করার সকল ম্যালিশিয়াস চেষ্টা ব্লক করে। সাথে সাথে অস্ত্রা সিকিউরিটি সলিউশন আপনার ফাইল সিস্টেম ইনফেকশনের জন্য স্ক্যান করে। অস্ত্রা স্বয়ংক্রিয়ভাবে আপনার প্রেস্টাশপ ফাইল ক্লিন করে এবং আপডেট করে। শুধু অস্ত্রা ইনস্টল করুন এবং বাকি টা সেটি যত্ন নেবে।