170 likes | 377 Views
Step by Step – Internet Download Manager Cracking. Author : CODE CRACKER Our Team : Myanmar Cracking Team w ww.mmcrackingteam.org. Information – IDMan.exe. Internet Download Manager ကို Visual C++ 6.0 ဖြင ့် ရေးသားထားပါသည ်။
E N D
Step by Step –Internet Download Manager Cracking Author : CODE CRACKER Our Team : Myanmar Cracking Team www.mmcrackingteam.org
Information – IDMan.exe • Internet Download Manager ကို Visual C++ 6.0 ဖြင့် ရေးသားထားပါသည်။ • Protector ဆော့ဖ္ဝဲလ်တစ်ခုခုဖြင့် Protect လုပ်ထားခြင်းမရှိပါ။ • Registry Setting တွင် Registered တစ်ကြိမ်ဖြစ်ခဲ့ သည်ရှိသော် နောက်ပိုင်း Version များတွင်လည်း Register လုပ်ထားသည်ဟုIDM ကိုလှည့်စားနိုင်ခြင်း။
Info - IDMan.exe • Internet Download Manager ကိုမည်သည့် Serial Number နဲ့ပဲRegister လုပ်လုပ် Online ချိတ်ဆက်ထားတဲ့အချိန်မှာသူ့ရဲ့ Database ထဲမှာရှိတဲ့ Registerလုပ်ထားတဲ့Serial နဲ့ တိုက်စစ်ပါတယ်။ မမှန်ခဲ့ရင်တော့ အောက်ပါ MessageBoxကိုပြပါ လိမ့်မည်။ • “Internet Download Manager has been registered with a fake Serial Number. IDM is exiting… ”
Step-1 (Online စစ်ဆေးခြင်းကိုဖယ်ရှားခြင်း) • Presentation မှာ Internet Download Manager v6.08 Build 9 ကိုဥပမာထား၍ ရှင်းပြထားခြင်းဖြစ်ပါသည်။ • Internet Download Manager ရဲ့ Registered ဟာ Online ချိတ်ဆက်ထားတဲ့အချိန် သူ့ရဲ့ Database နဲ့တိုက်စစ်တဲ့ခါ မတူရင် MessageBoxပေါ်လာပီး IDM ဟာ Exit ဖြစ်ပါတယ်။ ဒါ့ကြောင့် ဒီလိုမဖြစ်အောင် Online စစ်ဆေးတာကိုကျော်လွှားဖို့ လိုအပ်ပါတယ်။
Step-2 (Offline Fake Serial စစ်ဆေးခြင်းကိုဖယ်ရှားခြင်း) • Internet Download Manager ဟာ CALL 0043BB30 မှာ Fake Serial ဖြစ်လား၊ မဖြစ်လားဆိုတာကိုစစ်ဆေးပါတယ်။ ဒီအချိန်မှာတော့ အွန်လိုင်းမှာတိုက်စစ်တာမဟုတ်သေးပါဘူး။ နောက်တစ်ကြိမ်မှ အွန်လိုင်းမှာတိုက်စစ်မှာဖြစ်ပါတယ်။ • JMP DWORD PTR DS:[EAX*4 + 43BAF8] မှာ EAX တန်ဖိုး 0 ဖြစ်ခဲ့မယ်ဆိုရင် DS:[0043BAF8] = 0043B1F2 ကိုဆက်သွားမှာဖြစ်ပါတယ်။ ဆိုလိုသည်မှာ EAX တန်ဖိုးဟာ 0 ဆိုရင် Program ဟာပုံမှန်လုပ်ဆောင်သွားမှာပါ။ အဲဒီတော့ EAX တန်ဖိုးဟာ 0 ဖြစ်ဖို့ လိုပါတယ်။ • အကယ်၍များ EAX တန်ဖိုး 1 ဖြစ်ခဲ့ပါက DS:[0043BAFC] = 0043B2B0 ကိုရောက်ရှိပြီးMessageBox “Internet Download Manager has been registered with a fake Serial Number. IDM is exiting…” ကိုပြမှာဖြစ်ပါတယ်။
Step-3 (Online စစ်ဆေးခြင်းကိုဖယ်ရှားခြင်း) • EDI တန်ဖိုးဟာ 0 ဖြစ်ကိုဖြစ်ရမှဆိုတော့ ကျွန်တော်တို့ VA 0043B1CAမှာMOV EDI,EAXကိုXOR EDI, EDI လို့ ပြင်ရပါမယ်။ အရင် Version တွေမှာဆိုရင်VA 0043B24B မှာရှိတဲ့TEST EDI, EDI ကိုXOR EDI, EDI လို့ ပြင်ရပါတယ်။ထို့နောက် VA 00444583 မှာရှိတဲ့ JE SHORT 004445F2ကိုJMP 004445F2 လို့ ပြင်ရပါမယ်။ ထို့နောက် VA 00444583 နဲ့ ကပ်လျက်မှာရှိတဲ့ VA 00444585 နေရာကPUSH 0နေရာဟာ Nag MessageBoxတွေကို Encrypt လုပ်ပြီးရင် ရောက်ရှိလာမယ့်နေရာဖြစ်တဲ့အတွက် ၄င်း PUSH 0နေရာမှာJMP00444583 လို့ပြင်ပေးရပါမယ်။
Step -4 (Step -3 အားရှင်းလင်းချက်) • VA 0043B1CA မှာပြင်ဆင်ခြင်းဟာယခုနောက်ပိုင်းထွက်ရှိတဲ့ IDM v6.08 Build 8 မှာစတင်ပါရှိလာတာဖြစ်ပါတယ်။ • VA 0043B24Bမှာပြင်ဆင်ခြင်းဟာ IDM v6.01 - v6.08 Build 7 အတွက် ပြင်ဆင်ခြင်းဖြစ်ပါတယ်။ • VA 00444583မှာပြင်ဆင်ခြင်းဟာ June 2011 နောက်ပိုင်းထွက်ရှိတဲ့ IDM Version မှာစတင်ပါရှိလာတာဖြစ်ပါတယ်။ ၄င်းနေရာမှာ Nag MessageBoxတွေကို encrypt လုပ်ထားတာဖြစ်တဲ့အတွက် ပြင်ဆင်ရခြင်းဖြစ်ပါတယ်။ JE SHORT ဖြစ်ခဲ့ရင် encrypt လုပ်ထားခြင်းကို decrypt လုပ်ပြီး Nag MessageBoxပေါ်လာမှာဖြစ်ပါတယ်။
Step -4 (Step -3 အားရှင်းလင်းချက်) • VA 00444585 မှာပြင်ဆင်ခြင်းဟာ VA 004497F0, Hex C685 38FFFFFF, Disassembly MOV BYTE PTR SS:[EBP-C8],0 နေရာမှာ Encrypt လုပ်ထားပါတယ်။ JE xxx + Push 0 ဖြစ်ခဲ့မယ်ဆိုရင် အပေါ်က string တွေကို decrypt လုပ်ပြီး VA 004498E1, Hex FF15 84875D00, Disassembly CALL DWORD PTR DS:[5D8784] ; MessageBoxAမှာရှိတဲ့ Nag MessageBoxနှင့်အတူ Fake Serial … ဆိုတဲ့ Nag တွေပေါ်လာမှာဖြစ်တဲ့အတွက် JMP + JMP ဆိုပြီးပြင်ဆင်ပေးခြင်းဖြစ်ပါတယ်။ ကျွန်တော်တို့ရဲ့ serial ဟာ fake serial ဖြစ်တဲ့အတွက် PUSH 0 ဆိုတဲ့နေရာကိုအမြဲရောက်ရှိလာမှာဖြစ်ပြီးExitProcess API ကိုလုပ်ဆောင်ပြီးပရိုဂရမ်ဟာပြီးဆုံးသွားမှာဖြစ်ပါတယ်။ ဒါကြောင့် PUSH 0 နေရာကိုရောက်လာတဲ့အခါ ExitProcess API ကိုကျော်လွှားနိုင်ဖို့ PUSH 0 အပေါ်က jump ဆီပြန်ညွှန်းတာဖြစ်ပါတယ်။ ဒါပေမယ့် PUSH 0 အပေါ်က jump ဟာ JE ဖြစ်တဲ့အတွက် jump ဖြစ်မယ်၊ မဖြစ်ဘူးမသေချာပါ။ ဒါကြောင့် သေချာပေါက် jump ဖြစ်အောင်လို့ unconditional jump ဖြစ်တဲ့ JMP instruction ကိုသုံးရတာဖြစ်ပါတယ်။
Address 0043B1CA (အားပြင်ဆင် ခြင်း)
Address 0043B24B (အားပြင်ဆင် ခြင်း)
Address 00444583 (အားပြင်ဆင် ခြင်း) • 00444583 မှာရှိနေတဲ့ Disassembly တန်ဖိုး JE SHORT 004445F2 နေရာတွင် JMP SHORT 004445F2 ဟုပြင်ပါသည်။
Address 00444585 (အားပြင်ဆင် ခြင်း) • 00444585 မှာရှိတဲ့ Disassembly တန်ဖိုး PUSH 0 နေရာတွင် JMP SHORT 00444583 ဟုပြင်ပါသည်။
ပြင်ဆင်ထားသောIDMan.exe ကိုExecutable file ထုတ်ယူခြင်း
IDM.exe ကိုလှည့်စားခြင်း • Internet Download Manager အတွက် Registry Editor မှာFName, LName, Email, Serial တွေထည့်ပေးရပါသေးတယ်။ ဘာကြောင့်လဲဆိုတော့ IDM.exe ဟာRegQueryValueExA Function ကိုအသုံးပြုပြီးIDM အတွက် Registered လုပ်ထားတဲ့ Name, Email, Serial တွေရှိ၊ မရှိဆိုတာတွေကိုစစ်ဆေးတဲ့အတွက်ကြောင့် ဖြစ်ပါ တယ်။