রুটকিট হ্যাকাররা আপনার ডিভাইসে 지속적이고まるで অদৃশ্য ম্যালওয়্যার লুকাতে ব্যবহার করে যা চুপচাপ ডেটা বা সংস্থান চুরি করে, иногда একাধিক বছর ধরে। এছাড়াও এটি কিলগারের মত কাজ করতে পারে যেখানে আপনার কীস্ট্রোক এবং যোগাযোগ পর্যবেক্ষণ করা হয়, مما অফলোকে গোপনীয়তামূলক তথ্য প্রদান করে।
রুটকিটের ইতিহাস এবং বিবর্তন
এই विशेष হ্যাকিং পদ্ধতি ২০০৬-এর পূর্বে আরও প্রাসঙ্গিক ছিল, মাইক্রোসফট ভিস্টা সমস্ত কম্পিউটার ড্রাইভার ডিজিটালি স্বাক্ষর করতে বাধ্য করার আগে। কার্নেল প্যাচ প্রোটেকশন (KPP) ম্যালওয়্যার লেখকদের আক্রমণের পদ্ধতি পরিবর্তন করতে বাধ্য করেছিল এবং কেবল ২০১৮ সালে জ্যাসিনলো (Zacinlo) বিজ্ঞাপন ফরেজ অপারেশন সহ, রুটকিট znovu লাইমলাইটে ফিরে এল।
২০০৬-এর পূর্ববর্তী রুটকিটগুলি সকলই অপারেটিং সিস্টেম-ভিত্তিক ছিল। ডেট্রাহের (Detrahere) ম্যালওয়্যার পরিবারের একটি রুটকিট জ্যাসিনলো পরিস্থিতি আমাদের ফার্মওয়্যার-ভিত্তিক রুটকিটের আকারে আরও কিছু опасণীয় কিছু দিয়েছিল। যাইহোক, রুটকিট سالانه দেখা যাওয়া সকল ম্যালওয়্যার আউটপুটের কেবল প্রায় এক শতাংশ।
তবুও, যেহেতু এটি খতরার সৃষ্টি করতে পারে, তাই আপনার সিস্টেমে ইতিমধ্যে প্রবেশ করেছ सकা রুটকিট সনাক্ত করার পদ্ধতি বুঝতে পারা बुद्धিমানের কাজ।
উইন্ডোজ ১০-এ রুটকিট সনাক্ত করা (গভীরভাবে)
জ্যাসিনলো খোঁজা পাওয়ার আগে প্রায় ছয় বছর ধরে উইন্ডোজ ১০ প্ল্যাটফর্মকে লক্ষ্য করছিল। রুটকিট উপাদানটি অত্যন্ত কনফিগারযোগ্য ছিল এবং এটি নিজের কার্যকারিতার জন্য বিপদবোধক যেসব প্রক্রিয়াগুলো মনে করত, সেগুলো থেকে নিজের রক্ষা করত এবং SSL যোগাযোগ আটকাতে এবং ডিক্রিপ্ট করতে সক্ষম ছিল।
এটি উইন্ডোজ রেজিস্ট্রিতে তার সকল কনফিগারেশন ডেটা এনক্রিপ্ট করে সংরক্ষণ করত এবং, উইন্ডোজ শাটডাউন হওয়ার সময়, মেমরি থেকে ডিস্কে ভিন্ন নাম দিয়ে নিজেকে রি-রাইট করত এবং তার রেজিস্ট্রি কী আপডেট করত। এটি আপনার স্ট্যান্ডার্ড অ্যান্টিভাইরাস সফ্টওয়্যারের সনাক্তকরণ থেকে বাঁচতে সাহায্য করত।
এটি দেখায় যে শুধুমাত্র একটি স্ট্যান্ডার্ড অ্যান্টিভাইরাস বা অ্যান্টিম্যালওয়্যার সফ্টওয়্যার রুটকিট সনাক্ত করার জন্য যথেষ্ট নয়। যদিও, কয়েকটি শীর্ষ স্তরের অ্যান্টিম্যালওয়্যার প্রোগ্রাম রয়েছে যা রুটকিট আক্রমণের সন্দেহ জানাতে পারে।
ভালো অ্যান্টিভাইরাস সফ্টওয়্যারের ৫টি মূল বৈশিষ্ট্য
আজকের প্রখ্যাত অধিকাংশ অ্যান্টিভাইরাস প্রোগ্রাম রুটকিট সনাক্ত করার জন্য এই خمسة উল্লেখযোগ্য পদ্ধতিগুলো সম্পাদন করে।
- সিগনেচার-ভিত্তিক বিশ্লেষণ – অ্যান্টিভাইরাস সফ্টওয়্যার লগ করা ফাইলগুলোর তুলনা রুটকিটের পরিচিত সিগনেচারের সাথে করে। বিশ্লেষণটি পরিচিত রুটকিটের কিছু অপারেশনাল কার্যকলাপের অনুকরণকারী আচরণগত প্যাটার্নও খুঁজে বের করে, যেমন আক্রমণাত্মক পোর্ট ব্যবহার।
- ইন্টারসেপশন সনাক্তকরণ – উইন্ডোজ অপারেটিং সিস্টেম কমান্ড চালানোর জন্য পয়েন্টার টেবিল ব্যবহার করে যা রুটকিটকে সক্রিয় করতে পরিচিত। যেহেতু রুটকিট হুমকি ভাবা যেকোনো জিনিস প্রতিস্থাপন বা পরিবর্তন করার চেষ্টা করে, এটি আপনার সিস্টেমকে তাদের উপস্থিতি সম্পর্কে সতর্ক করে।
- বহু-সোর্ট ডেটা তুলনা – লুকিয়ে থাকার চেষ্টায় রুটকিট স্ট্যান্ডার্ড পরীক্ষায় উপস্থাপিত কিছু ডেটা পরিবর্তন করতে পারে। হাই এবং লো-লেভেল সিস্টেম কলের ফেরত ফলাফল রুটকিটের উপস্থিতি প্রকাশ করতে পারে। সফ্টওয়্যারটি র্যামে লোড করা প্রসেস মেমরির সাথে হার্ড ডিস্কের ফাইল কন্টেন্টের তুলনাও করতে পারে।
- ইন্টিগ্রিটি চেক – প্রতিটি সিস্টেম লাইব্রেরির একটি ডিজিটাল স্বাক্ষর থাকে যা সিস্টেম "পরিষ্কার" বিবেচিত হলে তৈরি হয়। ভালো সিকিউরিটি সফ্টওয়্যার লাইব্রেরিগুলো চেক করে ডিজিটাল স্বাক্ষর তৈরি করতে ব্যবহৃত কোডে কোন পরিবর্তন হয়েছে কিনা।
- রেজিস্ট্রি তুলনা – অধিকাংশ অ্যান্টিভাইরাস সফ্টওয়্যার প্রোগ্রামের এই প্রিসেট শিডিউলে থাকে। একটি পরিষ্কার ফাইল রিয়েল-টাইমে একটি ক্লায়েন্ট ফাইলের সাথে তুলনা করা হয় যাতে নির্ধারণ করা যায় ক্লায়েন্টে অনুরোধ করা নয় এমন কোনো এক্সিকিউটেবল (.exe) আছে কিনা।
রুটকিট স্ক্যান সম্পাদন করা
রুটকিট স্ক্যান সম্পাদন করা রুটকিট ইনফেকশন সনাক্ত করার সেরা প্রচেষ্টা। অধিকাংশ সময় আপনার অপারেটিং সিস্টেম নিজে থেকে রুটকিট সনাক্ত করতে বিশ্বস্ত নয় এবং এর উপস্থিতি নির্ধারণ করা একটি চ্যালেঞ্জ পেশ করে। রুটকিট 이들은 মাস্টার জাসूस, প্রায় প্রতিটি মোড়েই তাদের ট্র্যাক ঢেকে রাখে এবং স্পষ্ট দৃষ্টিতে লুকিয়ে থাকতে সক্ষম।
যদি আপনি মনে করেন আপনার মেশিনে রুটকিট ভাইরাস আক্রমণ হয়েছে, তবে সনাক্তকরণের জন্য একটি ভালো কৌশল হবে কম্পিউটারটি পাওয়ার অফ করে একটি পরিচিত পরিষ্কার সিস্টেম থেকে স্ক্যান চালানো। আপনার মেশিনের ভেতরে রুটকিট অবস্থান নির্ধারণ করার নিশ্চিত উপায় হল মেমরি ডাম্প বিশ্লেষণ। একটি রুটকিট মেশিনের মেমরিতে এটি যে ইনস্ট্রাকশন দিয়ে এক্সিকিউট করে সেগুলো লুকাতে পারে না।
ম্যালওয়্যার বিশ্লেষণের জন্য WinDbg ব্যবহার করা
মাইক্রোসফট উইন্ডোজ তার নিজস্ব মাল্টি-ফাংশন ডিবাগিং টুল প্রদান করেছে যা অ্যাপ্লিকেশন, ড্রাইভার বা অপারেটিং সিস্টেম নিজের ওপর ডিবাগিং স্ক্যান করতে ব্যবহার করা যেতে পারে। এটি কার্নেল-মোড এবং ইউজার-মোড কোড ডিবাগ করতে সাহায্য করে, ক্র্যাশ ডাম্প বিশ্লেষণ করতে সাহায্য করে এবং CPU রেজিস্টার পরীক্ষা করতে দেয়।
কিছু উইন্ডোজ সিস্টেমে WinDbg ইতিমধ্যে বান্ডেল করা থাকে। যাদের নেই তারা মাইক্রোসফট স্টোর থেকে ডাউনলোড করতে পারবে। WinDbg Preview হল WinDbg-এর আরও আধুনিক সংস্করণ, যা সহজ দৃষ্টিগোচর ভিজ্যুয়াল, দ্রুত উইন্ডো, সম্পূর্ণ স্ক্রিপ্টিং এবং মূল সংস্করণের মতোই কমান্ড, এক্সটেনশন এবং ওয়ার্কফ্লো প্রদান করে।
সর্বনিম্নভাবে, আপনি WinDbg ব্যবহার করে একটি মেমরি বা ক্র্যাশ ডাম্প বিশ্লেষণ করতে পারেন, যার মধ্যে ব্লু স্ক্রিন অফ ডেথ (BSOD) রয়েছে। ফলাফল থেকে আপনি ম্যালওয়্যার আক্রমণের ইন্ডিকেটর খুঁজে বের করতে পারেন। যদি আপনি মনে করেন আপনার একটি প্রোগ্রাম ম্যালওয়্যারের উপস্থিতি দ্বারা বাধা পাচ্ছে, বা প্রয়োজনের চেয়ে বেশি মেমরি ব্যবহার করছে, তবে আপনি একটি ডাম্প ফাইল তৈরি করতে পারেন এবং WinDbg ব্যবহার করে তা বিশ্লেষণ করতে পারেন।
একটি সম্পূর্ণ মেমরি ডাম্প উল্লেখযোগ্য ডিস্ক স্পেস নিতে পারে তাই কার্নেল-মোড ডাম্প বা স্মল মেমরি ডাম্প করা ভালো হতে পারে। একটি কার্নেল-মোড ডাম্প ক্র্যাশের সময় কার্নেল দ্বারা সমস্ত মেমরি ব্যবহারের তথ্য ধারণ করে। একটি স্মল মেমরি ডাম্প ড্রাইভার, কার্নেল এবং আরও বিভিন্ন সিস্টেমের মৌলিক তথ্য ধারণ করে, কিন্তু আকারে খুব ছোট।
স্মল মেমরি ডাম্প BSOD কেন হয়েছে তা বিশ্লেষণ করার জন্য বেশি উপযোগী। রুটকিট সনাক্ত করার জন্য সম্পূর্ণ বা কার্নেল সংস্করণ আরও সহায়ক হবে।
কার্নেল-মোড ডাম্প ফাইল তৈরি করা
একটি কার্নেল-মোড ডাম্প ফাইল তিনভাবে তৈরি করা যায়:
- কন্ট্রোল প্যানেল থেকে ডাম্প ফাইল সক্ষম করে সিস্টেমকে স্বয়ংক্রিয়ভাবে ক্র্যাশ করার অনুমতি দেওয়া
- কন্ট্রোল প্যানেল থেকে ডাম্প ফাইল সক্ষম করে সিস্টেমকে জোরপূর্বক ক্র্যাশ করা
- একটি ডিবাগার টুল ব্যবহার করে একটি তৈরি করা
আমরা তৃতীয় পদ্ধতিটি বেছে নেব।
আবশ্যক ডাম্প ফাইল সম্পাদন করতে আপনাকে শুধু WinDbg-এর কমান্ড উইন্ডোতে নিচের কমান্ডটি প্রবেশ করাতে হবে:
FileName-কে ডাম্প ফাইলের জন্য উপযুক্ত একটি নাম দিয়ে প্রতিস্থাপন করুন এবং "?"-কে একটি f দিয়ে প্রতিস্থাপন করুন। নিশ্চিত করুন যে "f" ছোট হাতের অক্ষর (lowercase) নাহলে আপনি একটি ভিন্ন ধরনের ডাম্প ফাইল তৈরি করবেন।
একবার ডিবাগার তার কাজ শেষ করলে (প্রথম স্ক্যানে قابل kể মিনিট লাগবে), একটি ডাম্প ফাইল তৈরি হবে এবং আপনি আপনার ফলাফল বিশ্লেষণ করতে পারবেন।
ভোলাটাইল মেমরি (র্যাম) ব্যবহার ইত্যাদি যেন রুটকিটের উপস্থিতি নির্ধারণ করা যায় সেটি বুঝতে অভিজ্ঞতা এবং পরীক্ষা দরকার। একটি লাইভ সিস্টেমে ম্যালওয়্যার আবিষ্কারের কৌশল পরীক্ষা করা সম্ভব, যদিও Новиসের জন্য সুপারিশ করা হয় না। এটি করতে WinDbg-এর কাজকর্ম সম্পর্কে দক্ষতা এবং গভীর জ্ঞান দরকার যাতে ভুলেও আপনার সিস্টেমে একটি লাইভ ভাইরাস ডিপ্লয় না হয়।
আমাদের ভালোভাবে লুকানো এই শত্রুকে আবিষ্কার করার আরও নিরাপদ, বেগিনার-বান্ধব উপায় রয়েছে।
অতিরিক্ত স্ক্যানিং পদ্ধতি
ম্যানুয়াল সনাক্তকরণ এবং আচরণগত বিশ্লেষণও রুটকিট সনাক্ত করারเชื่อযোগ্য পদ্ধতি। একটি রুটকিটের অবস্থান আবিষ্কার করার চেষ্টা করা বড় কষ্টের কাজ হতে পারে, তাই রুটকিটকে সরাসরি লক্ষ্য করার বদলে, আপনি রুটকিট-সদৃশ আচরণ খুঁজে বের করতে পারেন।
আপনি অ্যাডভান্সড বা কাস্টম ইনস্টল অপশন ব্যবহার করে ডাউনলোড করা সফ্টওয়্যার বান্ডেলে রুটকিট খুঁজে বের করতে পারেন। আপনার খুঁজে বের করতে হবে ডিটেইলসে তালিকাভুক্ত যেকোনো অপরিচিত ফাইল। এই ফাইলগুলো বাতিল করা উচিত, অথবা আপনি দ্রুত অনলাইনে সার্চ করে কোনো ম্যালিশিয়াস সফ্টওয়্যারের রেফারেন্স আছে কিনা দেখতে পারেন।
ফায়ারওয়াল এবং তাদের লগিং রিপোর্ট রুটকিট আবিষ্কারের অত্যন্ত কার্যকর উপায়। সফ্টওয়্যারটি আপনাকে জানাবে যদি আপনার নেটওয়ার্ক পর্যবেক্ষণাধীন থাকে, এবং ইনস্টলেশনের আগে যেকোনো অপরিচিত বা সন্দেহজনক ডাউনলোড কোয়ারান্টাইন করবে।
যদি আপনি মনে করেন আপনার মেশিনে ইতিমধ্যে একটি রুটকিট থাকতে পারে, তবে আপনি ফায়ারওয়াল লগিং রিপোর্টে গোতা দিয়ে যেকোনো অস্বাভাবিক আচরণ খুঁজে বের করতে পারেন।
ফায়ারওয়াল লগিং রিপোর্ট পর্যালোচনা করা
আপনি আপনার বর্তমান ফায়ারওয়াল লগিং রিপোর্ট পর্যালোচনা করতে চান, ফায়ারওয়াল লগ ফিল্টারিং ক্ষমতা সহ IP Traffic Spy মত একটি ওপেন-সোর্স অ্যাপ্লিকেশন এখানে খুবই উপকারী টুল। রিপোর্টগুলো আপনাকে দেখাবে আক্রমণ ঘটলে কী কী দেখতে পাবেন।
যদি আপনার একটি বড় নেটওয়ার্ক থাকে একটি স্বতন্ত্র ইগ্রেস ফিল্টারিং ফায়ারওয়ালের সাথে, তবে IP Traffic Spy প্রয়োজন নেই। বরং, আপনি ফায়ারওয়াল লগের মাধ্যমে নেটওয়ার্কের সমস্ত ডিভাইস এবং ওয়ার্কস্টেশনের ইনবাউন্ড এবং আউটবাউন্ড প্যাকেট দেখতে পারবেন।
আপনি হোম বা স্মল বিজনেস সেটিং-এ আছেন কিনা, আপনি আপনার ISP দ্বারা প্রদত্ত মডেম বা, আপনার যদি নিজস্ব ফায়ারওয়াল বা রাউটার থাকে, সেটি ব্যবহার করে ফায়ারওয়াল লগ উপস্থাপন করতে পারেন। আপনি একই নেটওয়ার্কে সংযুক্ত প্রতিটি ডিভাইসের ট্রাফিক সনাক্ত করতে পারবেন।
উইন্ডোজ ফায়ারওয়াল লগ ফাইল সক্ষম করাও উপকারী হতে পারে। ডিফল্টভাবে, লগ ফাইল অক্ষম থাকে অর্থাৎ কোনো তথ্য বা ডেটা লেখা হয় না।
- একটি লগ ফাইল তৈরি করতে, Windows key + R চাপে Run ফাংশন খুলুন।
- বক্সে wf.msc টাইপ করুন এবং Enter চাপুন।
- Windows Firewall and Advanced Security উইন্ডোতে বাম পাশের মেনুতে "Windows Defender Firewall with Advanced Security on Local Computer" হাইলাইট করুন। ডান পাশের মেনুর "Actions" অধীনে Properties ক্লিক করুন।
- নতুন ডায়লগ উইন্ডোতে, "Private Profile" ট্যাবে যান এবং "Logging" সেকশনে থাকা Customize সিলেক্ট করুন।
- নতুন উইন্ডোতে আপনি লগ ফাইলের আকার, ফাইল কোথায় পাঠাতে চান, এবং শুধু ড্রপ করা প্যাকেট, সফল সংযোগ, বা উভয়ই লগ করা উচিত কিনা সেটি নির্বাচন করতে পারবেন।
- ড্রপ করা প্যাকেট হল সেগুলো যা উইন্ডোজ ফায়ারওয়াল আপনার পক্ষ থেকে ব্লক করেছে।
- ডিফল্টভাবে, উইন্ডোজ ফায়ারওয়াল লগ এন্ট্রি শুধু শেষ ৪MB ডেটা সংরক্ষণ করে এবং এটি পাওয়া যায় %SystemRoot%\System32\LogFiles\Firewall\Pfirewall.log-এ
- মনে রাখবেন যে লগের জন্য ডেটা ব্যবহারের সাইজ লিমিট বাড়িয়ে দেওয়া আপনার কম্পিউটারের পারফরম্যান্স প্রভাবিত করতে পারে।
- সমाप्त হলে OK চাপুন।
- এখন "Private Profile" ট্যাবে আপনি যেই ধাপগুলো অনুসরণ করেছেন সেগুলো "Public Profile" ট্যাবেও পুনরাবৃত্তি করুন।
- এখন পাবলিক এবং প্রাইভেট উভয় সংযোগের জন্য লগ জেনারেট হবে। আপনি নোটপ্যাড মত টেক্স्ट এডিটরে ফাইলগুলো দেখতে পারেন বা স্প্রেডশীতে ইম্পোর্ট করতে পারেন।
- আপনি এখন লগের ফাইলগুলো IP Traffic Spy মত একটি ডাটাবেস পার্সার প্রোগ্রামে এক্সপোর্ট করতে পারেন যাতে ট্রাফিক ফিল্টার ও সোর্ট করা সহজ হয়।
লগ ফাইলগুলিতে যেকোনো অস্বাভাবিক বিষয়ের ওপর চোখ রাখুন। সিস্টেমের সামান্য ফল্টও রুটকিট ইনফেকশনের ইন্ডিকেটর হতে পারে। যেমন আপনি কিছু ডিমান্ডিং চালাচ্ছেন না বা একদমই কিছু চালাচ্ছেন না তবুও অতিরিক্ত CPU বা ব্যান্ডউইথ ব্যবহার একটি বড় सुरাগ হতে পারে।