PDA

View Full Version : سوال: کرک کردن برنامه بعد از تغییر jnz به je یا برعکس



smahdi1991
شنبه 14 فروردین 1389, 10:16 صبح
سلام به تمامی دوستان عزیز
من یه مبتدی در امر مهندسی معکوس هستم
من برنامه ها رو از طریق سرچ کردن پیام خطا و تغییر jump if not equal به jump if equal و ...
انجام می دم ولی همونطور که می دونید برنامکه ها بعد از هر بار اجرا شدن با انکه کرک میشوند دوباره باز سریال میخواهند یعنی هر بار که بر نامه رو اجرا میکنیم باید دوباره سریال بدیم
چه کنم تا اینم دیگه نیاد یعنی با اولین سریال دادن وقتی که نشون داد congrat تموم بشه و دیگه هر بار که برنامه رو دوباره بالا میارم این نگ اسکرینه دوباره نیاد؟

aryasoft2872
شنبه 14 فروردین 1389, 14:54 عصر
راستش منم یک مشکلی مشابه دارم (مبتدی هستیم دیگه:اشتباه:)

وقتی شرط رو معکوس می کنم بازم برنامه چک می کنه و پیغام خطا رو می ده.(اگه خط شرط رو پاک کنی حله)

میگم حالا که دور هم هستیم یک سوال دیگه هم بپرسم:

چرا بعضی برنامه ها رو که می خوای با ollyDbg اجرا کنی رو یک خط می مونه و سیاه می شه.

smahdi1991
یک شنبه 15 فروردین 1389, 16:38 عصر
سلام
منظورت از خط شرط کدومشون همون jnz منظورتونه که البته این کارو هم بکنی بازم درست نمیشه واسه همهی برنامه ها چون از این جا تابع هاش چک نمیشه بلکه در خط های بالاتر که تابع های مختلف با call فراخونی میشن و سریال ر.و چک می کنن به همین دلیله که باید بعد از هر بار کرک کردن به این صورت بسیار مبتدی برنامه وقتی که دوباره بالا میاد دوباره سریال میخواد تا رجیستر بشه که سریال بد رجیستر میشه ولی اگر تایم داشته باشه این کار واقعا بی فایده هستش من دیروز یه روشی رو تستید که رو ی یه برنامه ساده بود و لی کرک شد مادام العمر و لی این خیلی روش سختیه ولی بازم روش کار میکن م اگر بهتر شد بهتون میگم حتما و راستی وقتی برنا مه ها رو با انپکر آنپکشون میکنم بازم نمی تونم از همین روش کلک رشتی استفاده کنم یعنی اصلا اینطوری نیستن که بشه به همین راحتیا کرکشون کرد
ممنون میشم یه نفر با تجربه بیاد کمک کنه

Raham
دوشنبه 16 فروردین 1389, 20:17 عصر
شما فقط در واقع شرط ثانويه رو دور زدين نه الكوريتم بررسي رو. اين يعني جي؟
يعني برنامه كد ورودي رو ميده به يه تابع ميكه بررسي كن درسته يا نه اكه درسته بنويس درست اكه نبود....
حالا همينكارو موقع اجراي برنامه هم ميكنه حالا كاره شما جيه؟
اينه كه تابع بررسي سريال رو تغيير بدين

smahdi1991
سه شنبه 17 فروردین 1389, 20:20 عصر
سلام دوست عزیز مرسی از توضیحتون
خوب برای این کار باس چی کار کنم اگر میشه آموزش بدین ممنون میشم

civilm
جمعه 20 فروردین 1389, 17:00 عصر
سئوالتون به ظاهر ساده است ولي جوابش حالتهاي مختلفي داره

هر برنامه الگوريتم خاصي براي كنترل سريال داره، برنامه هدف شما سريال را در جايي نظير رجيستري يا يك فايل ذخيره ميكنه و بعد هنگام لود شدن دوباره اونو چك ميكنه

خوب بايد ببينيد كدوم حالته يعني رجيستري يا فايل بعد با توابع API مورد نظر محل كنترل را پيدا كنيد
البته ممكنه اينظور هم نباشه يعني در تابع كنترل سريال اتفاقاتي بيافته و نه بعد از پرش شرطي

اگر هدف را اينجا قرار بديد دوستان ميتونن كمكتون بكنن ولي تا وقتي هدف نباشه كاري نميشه كرد همه چي براساس حدس و گمانه است

smahdi1991
شنبه 21 فروردین 1389, 23:32 عصر
سلام
مرسی از توضیحاتتون
اینم از برنامه البته یکی از ساده هاش هستhttp://www.passwordunlocker.com/products/rpu.html
پیشاپیش ممنون: