Process Herpaderping: সিগনেচার স্ক্যানিং বাইপাস করতে ওএসের ফাইল মডিফিকেশন প্রসেস ব্যবহার!
Process Herpaderping কৌশলে অ্যান্টিভাইরাস স্ক্যান ফাঁকি দিয়ে ম্যালওয়্যার রান করানোর সম্পূর্ণ প্রক্রিয়া বিশ্লেষণ।
আধুনিক উইন্ডোজ অপারেটিং সিস্টেমে ম্যালওয়্যার ডিটেকশনের প্রথম স্তরই হলো সিগনেচার-ভিত্তিক স্ক্যানিং। যেকোনো এক্সিকিউটেবল ফাইল ডিস্কে লেখা মাত্রই অ্যান্টিভাইরাস ইঞ্জিন তার হ্যাশ, প্যাটার্ন এবং বিহেভিয়ারাল আর্টিফ্যাক্ট মিলিয়ে দেখে। কিন্তু গবেষক জনি শ-এর আবিষ্কৃত Process Herpaderping নামক কৌশলটি এই গোটা ডিফেন্স মডেলটিকেই কার্যকরভাবে অকার্যকর করে দিতে সক্ষম। এই কৌশলে আক্রমণকারী এমনভাবে প্রসেস তৈরি করে, যেখানে অপারেটিং সিস্টেম একটি ফাইলের পুরোনো কনটেন্ট দেখে নিরাপদ ভেবে অনুমোদন দেয়, অথচ মেমোরিতে আসলে চলে সম্পূর্ণ ভিন্ন একটি ক্ষতিকর পেলোড। এই কারণে Process Herpaderping বর্তমান EDR (Endpoint Detection and Response) প্রযুক্তির বিরুদ্ধে একটি গুরুত্বপূর্ণ চ্যালেঞ্জ হয়ে দাঁড়িয়েছে।
এই প্রবন্ধে আমরা গভীরভাবে আলোচনা করব Process Herpaderping ঠিক কীভাবে কাজ করে, এটি Process Hollowing বা Process Doppelgänging থেকে কীভাবে আলাদা, এবং কীভাবে আধুনিক ব্লু টিম ও সিকিউরিটি আর্কিটেক্টরা এই হুমকির বিরুদ্ধে প্রতিরক্ষা গড়ে তুলতে পারেন।
মূল ধারণা
Process Herpaderping-এর কেন্দ্রীয় ধারণাটি বেশ চতুর। উইন্ডোজে যখন একটি নতুন প্রসেস তৈরি করা হয়, তখন কার্নেল NtCreateProcessEx বা সমতুল্য API-এর মাধ্যমে একটি ফাইলের ইমেজ ম্যাপ করে। কিন্তু এই ম্যাপিং এবং প্রসেস নোটিফিকেশন কলব্যাক (যেমন PsSetCreateProcessNotifyRoutineEx) সক্রিয় হওয়ার মধ্যে একটি সূক্ষ্ম টাইমিং উইন্ডো থাকে। Herpaderping ঠিক এই উইন্ডোটিকে কাজে লাগায়।
প্রথমে আক্রমণকারী একটি ফাইল ডিস্কে লেখে, যা আসলে ক্ষতিকর পেলোড। তারপর সেই ফাইলের একটি সেকশন অবজেক্ট তৈরি করে এবং NtCreateProcessEx কল করে প্রসেস তৈরি করে। কিন্তু থ্রেড শুরু করার আগেই, যখন ফাইল হ্যান্ডেলটি এখনো খোলা, ঠিক তখনই সেই ফাইলের কনটেন্টকে ওভাররাইট করা হয় একটি বৈধ, পরিচিত প্রোগ্রাম (যেমন Microsoft-signed binary) দিয়ে। এর ফলে ডিস্কে এখন একটি বৈধ ফাইল আছে, কিন্তু মেমোরিতে চলছে ক্ষতিকর কোড।
যখন কার্নেল প্রসেস ক্রিয়েশন কলব্যাক ট্রিগার করে, তখন AV/EDR ডিস্ক থেকে ফাইল পড়ে স্ক্যান করে। সে দেখে একটি পরিচ্ছন্ন, স্বাক্ষরিত ফাইল। ফলে অনুমোদন দিয়ে দেয়। কিন্তু বাস্তবে মেমোরিতে এক্সিকিউট হচ্ছে আসল ম্যালওয়্যার।
Process Hollowing ও Doppelgänging থেকে পার্থক্য
Process Hollowing-এ একটি সাসপেন্ডেড প্রসেসের মেমোরি আনম্যাপ করে নতুন ইমেজ লোড করা হয়। Doppelgänging ব্যবহার করে NTFS Transactions, যেখানে একটি ট্রানজ্যাকশনের ভেতরে ফাইল লিখে প্রসেস তৈরির পর ট্রানজ্যাকশন রোলব্যাক করা হয়। Herpaderping এই দুটির চেয়ে সহজ এবং NTFS-নির্ভর নয়, যা একে আরও পোর্টেবল এবং বিশ্বস্ত করে তোলে।
বাস্তব উদাহরণ
Herpaderping-এর একটি সাধারণ পেলোড ডেলিভারি ফ্লো এমন দেখতে হতে পারে:
HANDLE hFile = CreateFileW(L"target.exe",
GENERIC_READ | GENERIC_WRITE | DELETE,
FILE_SHARE_READ | FILE_SHARE_DELETE,
NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(hFile, malicious_payload, payload_size, &written, NULL);
NtCreateSection(&hSection, SECTION_ALL_ACCESS, NULL,
NULL, PAGE_READONLY, SEC_IMAGE, hFile);
NtCreateProcessEx(&hProcess, PROCESS_ALL_ACCESS, NULL,
NtCurrentProcess(), 0, hSection, NULL, NULL, FALSE);
SetFilePointer(hFile, 0, NULL, FILE_BEGIN);
WriteFile(hFile, benign_signed_binary, benign_size, &written, NULL);
NtCreateThreadEx(...);
এই উদাহরণে দেখা যাচ্ছে, প্রসেস তৈরি এবং থ্রেড স্টার্টের মাঝখানে ফাইলটির কনটেন্ট পরিবর্তন করা হচ্ছে। যখন EDR প্রসেস নোটিফিকেশন কলব্যাকে ফাইলটি স্ক্যান করতে যায়, তখন সে পায় বৈধ বাইনারি।
বাস্তব দুনিয়ার প্রভাব
২০২০ সালে Process Herpaderping প্রথম পাবলিকলি ডিসক্লোজ হওয়ার পর Microsoft এটিকে ভালনারেবিলিটি হিসেবে বিবেচনা করেনি, বরং একে EDR ভেন্ডরদের সমস্যা হিসেবে চিহ্নিত করে। ফলে এটি দীর্ঘ সময় ধরে অনেক EDR সলিউশনের বিরুদ্ধে কার্যকর ছিল। বিভিন্ন APT গ্রুপ এবং রেড টিম অপারেটররা এই কৌশলকে তাদের ইনিশিয়াল এক্সিকিউশন ফেজে অন্তর্ভুক্ত করেছে। বিশেষত ফাইনান্সিয়াল প্রতিষ্ঠানে স্পিয়ার-ফিশিং পেলোডের মাধ্যমে Herpaderping-ভিত্তিক ড্রপার ব্যবহারের ঘটনা থ্রেট ইন্টেলিজেন্স রিপোর্টে নথিভুক্ত হয়েছে।
ফরেনসিক চ্যালেঞ্জ
ফরেনসিক বিশ্লেষণের সময় Herpaderping বিশেষ কঠিন হয়ে দাঁড়ায়। ডিস্কে যে ফাইলটি পাওয়া যায়, সেটি বৈধ এবং স্বাক্ষরিত। মেমোরি ডাম্প ছাড়া আসল পেলোড পুনরুদ্ধার করা প্রায় অসম্ভব। ফলে ইনসিডেন্ট রেসপন্ডারদের অবশ্যই মেমোরি ফরেনসিক টুল যেমন Volatility বা Rekall ব্যবহার করতে হয়।
ডিটেকশন কৌশল
Process Herpaderping ডিটেক্ট করার জন্য কয়েকটি গুরুত্বপূর্ণ ইন্ডিকেটর রয়েছে। প্রথমত, প্রসেস ক্রিয়েশন কলব্যাকে ফাইল স্ক্যান করার পরিবর্তে ইমেজ লোড নোটিফিকেশন (PsSetLoadImageNotifyRoutine) ব্যবহার করা উচিত, কারণ ইমেজ লোডের সময় কার্নেল প্রকৃত ম্যাপড ইমেজের তথ্য পায়।
দ্বিতীয়ত, ডিস্কে থাকা ফাইলের হ্যাশ এবং মেমোরিতে লোডেড ইমেজের হ্যাশ তুলনা করে পার্থক্য শনাক্ত করা যায়। যদি দুটি হ্যাশ মেলে না, তাহলে এটি Herpaderping বা অনুরূপ ম্যানিপুলেশনের শক্তিশালী ইন্ডিকেটর।
তৃতীয়ত, ফাইল হ্যান্ডেলের লাইফসাইকেল মনিটরিং গুরুত্বপূর্ণ। যদি দেখা যায় একই ফাইল হ্যান্ডেলে NtCreateProcessEx এবং WriteFile খুব কম সময়ের ব্যবধানে সংঘটিত হয়েছে, এটি সন্দেহজনক।
rule Herpaderping_Indicator {
meta:
description = "Detects suspicious sequence of file write after process creation"
strings:
$api1 = "NtCreateProcessEx"
$api2 = "NtCreateSection"
$api3 = "SEC_IMAGE"
condition:
all of them
}
এই ধরনের YARA রুল কেবলমাত্র স্ট্যাটিক ইন্ডিকেটর দেয়। বাস্তব ডিটেকশনের জন্য বিহেভিয়ারাল মনিটরিং অপরিহার্য।
প্রতিরোধ ও প্রতিকার
Process Herpaderping প্রতিরোধে সংগঠনগুলোর বহুস্তরীয় কৌশল গ্রহণ করা উচিত। প্রথমত, এন্ডপয়েন্ট সিকিউরিটি সলিউশন নির্বাচনের সময় নিশ্চিত করতে হবে যে সেটি ইমেজ লোড নোটিফিকেশন এবং মেমোরি স্ক্যানিং সাপোর্ট করে। শুধু সিগনেচার-ভিত্তিক ডিটেকশন আজকের দিনে যথেষ্ট নয়।
দ্বিতীয়ত, Windows Defender Application Control (WDAC) এবং AppLocker-এর মাধ্যমে স্ট্রিক্ট কোড ইন্টেগ্রিটি পলিসি প্রয়োগ করা গুরুত্বপূর্ণ। শুধুমাত্র স্বাক্ষরিত এবং অনুমোদিত বাইনারি চালানোর অনুমতি দিলে অনেক ক্ষেত্রে Herpaderping কার্যকর হতে পারে না।
তৃতীয়ত, ETW (Event Tracing for Windows) লগ এবং Sysmon-এর মাধ্যমে Event ID 1 (Process Create), Event ID 7 (Image Load) এবং Event ID 11 (File Create) সক্রিয়ভাবে মনিটর করতে হবে। এই ইভেন্টগুলো কোরিলেশন করে সন্দেহজনক প্যাটার্ন শনাক্ত করা যায়।
চতুর্থত, মেমোরি ফরেনসিক টুলিং প্রস্তুত রাখা জরুরি। YARA-in-memory স্ক্যানিং সক্ষম EDR সলিউশন Herpaderping ডিটেকশনে অনেক বেশি কার্যকর। উইন্ডোজের সাম্প্রতিক সংস্করণে Microsoft বেশ কিছু কার্নেল-লেভেল মিটিগেশন যুক্ত করেছে, যেমন উন্নত প্রসেস নোটিফিকেশন এবং Code Integrity Guard, যা এই কৌশলের কার্যকারিতা কমিয়ে আনছে।
পঞ্চমত, থ্রেট হান্টিং টিমকে নিয়মিত হাইপোথিসিস-ড্রিভেন হান্ট পরিচালনা করতে হবে, যেখানে তারা সক্রিয়ভাবে Herpaderping-সদৃশ আর্টিফ্যাক্ট খুঁজবে। এর মধ্যে রয়েছে অস্বাভাবিক প্যারেন্ট-চাইল্ড প্রসেস রিলেশনশিপ, সম্প্রতি লেখা এবং দ্রুত পরিবর্তিত এক্সিকিউটেবল ফাইল, এবং সিগনেচার-ভ্যালিড কিন্তু অস্বাভাবিক বিহেভিয়ারের প্রসেস।
Process Herpaderping আমাদের শেখায় যে আধুনিক ম্যালওয়্যার ডিফেন্স কেবল ফাইল-ভিত্তিক স্ক্যানিংয়ে সীমাবদ্ধ থাকতে পারে না। অপারেটিং সিস্টেমের আভ্যন্তরীণ টাইমিং উইন্ডো এবং কলব্যাক মেকানিজমকে কাজে লাগিয়ে আক্রমণকারীরা প্রচলিত ডিটেকশনকে অকার্যকর করতে পারে। সংগঠনগুলোকে অবশ্যই বিহেভিয়ারাল অ্যানালিটিক্স, মেমোরি ফরেনসিক, এবং কঠোর অ্যাপ্লিকেশন কন্ট্রোল পলিসিতে বিনিয়োগ করতে হবে। সবশেষে, সিকিউরিটি প্রফেশনালদের অবশ্যই উইন্ডোজ ইন্টারনালস সম্পর্কে গভীর জ্ঞান অর্জন করতে হবে, কারণ প্রতিরক্ষা ততটাই শক্তিশালী, যতটা প্রতিরক্ষাকারী আক্রমণের অভ্যন্তরীণ কাঠামো বোঝেন।
আপনার জ্ঞান যাচাই করতে প্রস্তুত? আজই HackCert-এ Process Herpaderping MCQ Quiz-টি দিন!
Related articles
Process Doppelganging: Advanced Malware Memory Tricks to Evade Antivirus
10 min
Process Ghosting: Executing Malicious Code via Memory File Manipulation
10 min
Process Hollowing: How Malware Hijacks Legitimate Programs to Evade Detection
8 min
Access Control: Evaluating the Security of Your Corporate System Privileges
8 min

