ম্যালওয়্যার প্রকারভেদ — ভাইরাস, ওয়ার্ম, ট্রোজান, র্যানসমওয়্যার
এই পাঠে যা শিখবেন
- পাঁচটি প্রধান ম্যালওয়্যার ধরনের সংজ্ঞা ও একে অপরের থেকে পার্থক্য
- প্রোপাগেশন মেকানিজম (কীভাবে ছড়ায়) বনাম পেলোড (কী ক্ষতি করে) — কেন এই দুটি ভিন্ন প্রশ্ন
- প্রতিটি ধরনের বিরুদ্ধে সবচেয়ে কার্যকর প্রাথমিক প্রতিরক্ষা কৌশল
- কেন ব্যাকআপ র্যানসমওয়্যারের সবচেয়ে কার্যকর একক প্রতিষেধক
১ · প্রোপাগেশন বনাম পেলোড — দুটি ভিন্ন প্রশ্ন
ম্যালওয়্যার বোঝার সবচেয়ে গুরুত্বপূর্ণ প্রথম ধাপ হলো দুটি ভিন্ন প্রশ্ন আলাদা করা — প্রোপাগেশন মেকানিজমPropagation Mechanismম্যালওয়্যারটি নতুন ভিকটিমের কাছে কীভাবে পৌঁছায়/ছড়ায়। ("এটি কীভাবে ছড়ায়?") এবং পেলোড ("একবার পৌঁছানোর পর এটি কী ক্ষতি করে?")। যেমন, র্যানসমওয়্যার একটি পেলোড টাইপ — এটি ফিশিং ইমেইলের সংযুক্তি (ট্রোজান-স্টাইল ডেলিভারি) হিসেবে অথবা ওয়ার্মের মতো স্বয়ংক্রিয় নেটওয়ার্ক-প্রোপাগেশনের (২০১৭ সালের WannaCry-এর মতো, যা ওয়ার্ম-প্রোপাগেশন ও র্যানসমওয়্যার পেলোড উভয়ই একসাথে ব্যবহার করেছিল) মাধ্যমেও পৌঁছাতে পারে।
২ · পাঁচটি প্রধান ম্যালওয়্যার ধরন
হোস্ট প্রোগ্রামের সাথে যুক্ত হয়ে ছড়ায়, ছড়াতে ব্যবহারকারীর কাজ প্রয়োজন।
নেটওয়ার্কে স্বয়ংক্রিয়ভাবে ছড়ায়, কোনো ব্যবহারকারীর কাজ ছাড়াই।
বৈধ সফটওয়্যার হিসেবে ছদ্মবেশ দেয়, নিজে ছড়ায় না।
ফাইল এনক্রিপ্ট করে মুক্তিপণ দাবি করে — উচ্চ-প্রভাবশালী পেলোড টাইপ।
গোপনে নজরদারি করে ও ডেটা বাইরে পাঠায়।
৩ · তুলনামূলক টেবিল — Code cell
নিচের কোড সেলটি সম্পূর্ণ বর্ণনামূলক — এটি একটি dictionary-তে প্রতিটি ম্যালওয়্যার ধরনের প্রোপাগেশন পদ্ধতি, ব্যবহারকারীর কাজ প্রয়োজন কি না এবং মূল প্রতিরক্ষা সংরক্ষণ করে, তারপর শুধু একটি তুলনামূলক টেবিল প্রিন্ট করে। এখানে কোনো সংক্রমণ, প্রোপাগেশন বা পেলোড আচরণ সিমুলেট করার কোনো ফাংশন নেই — শুধু শিক্ষামূলক তথ্য প্রদর্শন।
malware_comparison = {
"ভাইরাস (Virus)": {
"propagation_method": "হোস্ট প্রোগ্রামের সাথে যুক্ত হয়ে ছড়ায়",
"requires_user_action": True,
"primary_defense": "অ্যান্টিভাইরাস স্ক্যানিং + অজানা উৎসের ফাইল না চালানো",
},
"ওয়ার্ম (Worm)": {
"propagation_method": "নেটওয়ার্কের মাধ্যমে স্বয়ংক্রিয়ভাবে ছড়ায় (যেমন WannaCry)",
"requires_user_action": False,
"primary_defense": "প্যাচিং — বেশিরভাগ ওয়ার্ম পরিচিত, unpatched দুর্বলতা কাজে লাগায়",
},
"ট্রোজান (Trojan)": {
"propagation_method": "বৈধ সফটওয়্যার হিসেবে ছদ্মবেশে বিতরণ করা হয়, নিজে ছড়ায় না",
"requires_user_action": True,
"primary_defense": "শুধুমাত্র বিশ্বস্ত উৎস থেকে ইনস্টল + অ্যাপ্লিকেশন allowlisting",
},
"র্যানসমওয়্যার (Ransomware)": {
"propagation_method": "যেকোনো ডেলিভারি মেকানিজম ব্যবহার করতে পারে — এটি একটি পেলোড টাইপ",
"requires_user_action": "নির্ভর করে ডেলিভারি পদ্ধতির উপর",
"primary_defense": "নিয়মিত অফলাইন ব্যাকআপ — মুক্তিপণ দাবিকে অর্থহীন করে দেয়",
},
"স্পাইওয়্যার/কীলগার": {
"propagation_method": "সাধারণত ট্রোজান বা বান্ডলড সফটওয়্যার হিসেবে বিতরণ",
"requires_user_action": True,
"primary_defense": "least-privilege + এন্ডপয়েন্ট মনিটরিং",
},
}
print(f"{'ম্যালওয়্যার ধরন':28} | {'ব্যবহারকারীর কাজ প্রয়োজন?':26} | মূল প্রতিরক্ষা")
print("-" * 100)
for malware_type, info in malware_comparison.items():
print(f"{malware_type:28} | {str(info['requires_user_action']):26} | {info['primary_defense']}")
৪ · প্রতিরক্ষা নীতিমালা
প্রতিটি নির্দিষ্ট ম্যালওয়্যার ধরনের বিরুদ্ধে আলাদা কৌশল থাকলেও, চারটি নীতি সবগুলোর বিরুদ্ধেই ভিত্তি তৈরি করে —
- প্যাচিং — অনেক ওয়ার্ম পরিচিত, unpatched দুর্বলতা কাজে লাগায় (L16 দেখুন); নিয়মিত প্যাচ আপডেট এই আক্রমণ ভেক্টর বন্ধ করে দেয়।
- ব্যাকআপ — র্যানসমওয়্যারের প্রাথমিক প্রতিষেধক; একটি সাম্প্রতিক, আইসোলেটেড ব্যাকআপ থাকলে মুক্তিপণ দেওয়ার প্রয়োজনই থাকে না।
- Least-privilege + অ্যাপ্লিকেশন allowlisting — একজন ব্যবহারকারী/প্রসেসকে শুধু প্রয়োজনীয় অনুমতি দেওয়া, এবং শুধুমাত্র অনুমোদিত সফটওয়্যার চালানোর অনুমতি দেওয়া।
- ব্যবহারকারী সচেতনতা — ট্রোজান ও ভাইরাসের মতো user-action-নির্ভর ম্যালওয়্যারের বিরুদ্ধে সবচেয়ে গুরুত্বপূর্ণ (M9-এ বিস্তারিত কভার হবে)।
ম্যালওয়্যার তৈরি, বিতরণ বা কারো সিস্টেমে চালানো — এমনকি "শুধু শেখার জন্য" হলেও — অনুমতি ছাড়া প্রায় প্রতিটি দেশেই ফৌজদারি অপরাধ (L01 দেখুন)। এই পাঠে কোনো কার্যকরী ম্যালওয়্যার কোড নেই এবং কখনো থাকবে না — ম্যালওয়্যার বিশ্লেষণ পেশাদারভাবে শুধুমাত্র বিচ্ছিন্ন, নিয়ন্ত্রিত ল্যাব পরিবেশে (sandboxed VM, নেটওয়ার্ক থেকে বিচ্ছিন্ন) করা হয়।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ ওয়ার্ম আর ভাইরাসের মধ্যে মূল পার্থক্য কী?
ওয়ার্ম নেটওয়ার্কের মাধ্যমে স্বয়ংক্রিয়ভাবে ছড়ায় — কোনো ব্যবহারকারীর কাজ ছাড়াই। ভাইরাসের একটি হোস্ট প্রোগ্রাম প্রয়োজন এবং ছড়াতে সাধারণত ব্যবহারকারীকে একটি নির্দিষ্ট কাজ করতে হয় (যেমন সংক্রমিত ফাইল চালানো বা ইমেইল সংযুক্তি খোলা)। এই একটি পার্থক্যই ব্যাখ্যা করে কেন ওয়ার্ম এত দ্রুত ও ব্যাপকভাবে ছড়াতে পারে।
প্র ০২ কেন র্যানসমওয়্যারকে "প্রোপাগেশন মেকানিজম" না বলে "পেলোড টাইপ" বলা সঠিক?
র্যানসমওয়্যার বর্ণনা করে ম্যালওয়্যারটি কী করে (ফাইল এনক্রিপ্ট করে মুক্তিপণ দাবি করে) — এটি কীভাবে ছড়ালো তা বর্ণনা করে না। এটি ফিশিং ইমেইলের মাধ্যমে (ট্রোজান-স্টাইল) অথবা স্বয়ংক্রিয় নেটওয়ার্ক-প্রোপাগেশনের (ওয়ার্ম-স্টাইল, যেমন WannaCry) মাধ্যমেও পৌঁছাতে পারে — পেলোড ও প্রোপাগেশন সম্পূর্ণ স্বাধীন দুটি অক্ষ।
প্র ০৩ কেন ব্যাকআপ র্যানসমওয়্যারের বিরুদ্ধে সবচেয়ে কার্যকর একক প্রতিরক্ষা?
র্যানসমওয়্যার সফল হয়ে ফাইল এনক্রিপ্ট করে ফেললেও, একটি সাম্প্রতিক ও আইসোলেটেড (অফলাইন বা ইমিউটেবল) ব্যাকআপ থাকলে মুক্তিপণ দেওয়ার বদলে ব্যাকআপ থেকে রিস্টোর করা যায় — আক্রমণকারীর মূল লিভারেজ (ডেটা হারানোর ভয়) সম্পূর্ণভাবে অকার্যকর হয়ে যায়। ব্যাকআপ অবশ্যই আইসোলেটেড হতে হবে, নাহলে র্যানসমওয়্যার সেটিকেও এনক্রিপ্ট করে দিতে পারে।
অনুশীলন
-
চিন্তা করুন: একটি প্রতিষ্ঠান শুধু অ্যান্টিভাইরাস সফটওয়্যার ইনস্টল করে কিন্তু কখনো প্যাচ আপডেট করে না — তারা কোন ম্যালওয়্যার ধরনের বিরুদ্ধে সবচেয়ে বেশি ঝুঁকিতে থাকবে, এবং কেন?
ওয়ার্ম — কারণ এগুলো পরিচিত, unpatched দুর্বলতা কাজে লাগিয়ে কোনো ব্যবহারকারীর কাজ ছাড়াই স্বয়ংক্রিয়ভাবে ছড়ায়। শুধু অ্যান্টিভাইরাস সিগনেচার-ভিত্তিক সুরক্ষা যথেষ্ট নয় — প্যাচিং-ই এখানে মূল প্রতিরক্ষা, কারণ ভালনারেবিলিটিটি বন্ধ করে দেওয়াই প্রোপাগেশন পথটিকেই বন্ধ করে দেয়।
-
পরীক্ষা করুন: উপরের dict-এ একটি নতুন এন্ট্রি
"অ্যাডওয়্যার (Adware)"যোগ করুন নিজেরpropagation_method,requires_user_actionওprimary_defenseমান দিয়ে, তারপর Run করে দেখুন টেবিলে এটি কীভাবে যোগ হয়।লুপটি dict-এর প্রতিটি key স্বয়ংক্রিয়ভাবে ধরে ফেলবে এবং নতুন এন্ট্রির জন্য একটি ফরম্যাট করা সারি প্রিন্ট করবে — কোনো কোড পরিবর্তন ছাড়াই। এটি নিশ্চিত করে যে টেবিলটি সম্পূর্ণভাবে dict-চালিত (data-driven), যা বাস্তব রেফারেন্স টুলে নতুন তথ্য সহজে যোগ করার একটি ভালো প্যাটার্ন।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- কোর্সের সম্পূর্ণ সিলেবাস দেখুন ৬০টি পাঠ পরবর্তী পাঠ — রুটকিট ও পার্সিস্টেন্স মেকানিজম, তারপর ক্রিপ্টোগ্রাফি মডিউল শুরু হবে।
- Discrete Mathematics কোর্স সহায়ক কোর্স এই কোর্সের M7 ক্রিপ্টোগ্রাফি মডিউলের গাণিতিক ভিত্তি এখানে পাবেন।
- System Design & Software Architecture কোর্স সঙ্গী কোর্স ব্যাকআপ, রিডানডেন্সি ও নির্ভরযোগ্য সিস্টেম ডিজাইন কীভাবে বড় স্কেলে প্রয়োগ হয় দেখুন।
- সব Courses দেখুন ABCL TECH C, C++, Python, Java, JavaScript, DSA, DBMS, Discrete Mathematics, System Design ও Cybersecurity — সব এক জায়গায়।