sarabic
10-10-2003, 01:59 PM
http://www.harrythecat.com/graphics/w/flower3.gif
(هُوَ الَّذِي أَرْسَلَ رَسُولَهُ بِالْهُدَى وَدِينِ الْحَقِّ لِيُظْهِرَهُ عَلَى الدِّينِ كُلِّهِ وَلَوْ كَرِهَ الْمُشْرِكُونَ) (الصف:9)
http://www.harrythecat.com/graphics/w/flower3.gif
السلام عليكم ورحمة الله وبركاته :قبل الحديث أحب أن أطلب منكم أيها الأخوة الكرام ... مساندتي
في هذا العمل وفي هذه السلسلة وتقديم المساعدة لي والنصيحة ... حتى يرقى العلم إلى القمة ...
فهذه دعوة إليكم لتشاركونا في هذه السلسلة لتعم الفائدة ....
وكما وعدتكم أحب دائماً أن أقدم لكم ما يوضح لكم بعض البرامج حسب طاقتي ومعرفتي بالبرنامج ...
وحسب التجارب التي حدثت معي مع البرنامج .
برنامجنا اليوم : أخي الفاضل أنت بحاجة إلى أدوات حتى تكسر حماية برنامج ما وأول هذه الأدوات هذه الأدارة ويليها بعض المحررات ....
You need a few tools to follow these tutorials. The first one is w32dasm. A disassembler.
You can find it all over the internet. The second one is Hiew. A freeware editor. You can
download it from public ftp's.
وسوف تجد رابط البرنامج تستطيع تحميل ابرنامج ..........
W32Dasm ver 8.9
وهو برنامج ضروري في كسر حماية البرامج من خلال معرفة الشرط البرمجي للبرنامج المراد
كسره ...
رابط البرنامج :
http://www/expage.com/page/w32dasm
وهو يلائم كل إصدرات الويندوز ..
ولن أطيل الكلام عن مواصفاته وسوف أدخل بما يهم الموضوع :
أولاً واجهة البرنامج
http://krobars.reverse-engineering.info/beginner/w32dasm1.jpg
في هذا الدرس لن نتعلم سوى فقط شيء بسيط يفيد الجميع ..وكل ما يجب عليك أخي أن لاتخاف من
هذا البرامج فإنها عادية ...حتى ولو أنك أخطأت في التعامل معها لن يحدث لجهازك ما يضره
حتى ولو تضرر فالأمر بسيط في تصليح ما حدث من خلال ...
ففي هذا البرنامج أوامر كثيرة ومهمة ولكن نحن يهمنا فقط بعض منها حالياً ....
http://www.harrythecat.com/graphics/w/flower3.gif
فأخي الكريم نحن العرب للأسف الشديد لا نستطيع صنع البرامج فهلا عملنا أولادنا كيف تعلم هذه البرامج
فعلاً شيء مؤسف جداً وخاصة وقد قرأت بعض الصحف بأن هناك طفلاً أجنبياً قام بعملية إختلاس إلكترونية عن
طريق الإنترنت ...فمتى نعلم أولادنا هذه المهارة .. ( تظن بي السوء ) فأنا لا أدعو إلى السرقة
فكلما أقصد هو تعليم أولادنا هذه البرامج إذا كنا عاجزين غير قادرين على صنعها .. والله تبارك وتعالى
هو وحده الموفق .
http://www.harrythecat.com/graphics/w/flower3.gif
أخي القارئ دائماً إي برنامج يكون فيه هناك شريط أدوات وهي عبارة عن إيقونات لتسهيل الوصول السريع
إلى الأمر المارد تنفيذه ...بالإضافة إلى القوائم الموجودة مع كل البرامج ..
فأنت مثلاً تستطيع فتح البرنامج سواء عن طريق القوائم أو عن طريق الإيقونة الخاصة بهذا الأمر من شريط الأدوات ..
http://krobars.reverse-engineering.info/beginner/w32dasm4.jpg
في برنامجنا هذا قم بفتح البرنامج المراد من :
الضغط على : Disassembler
ثم اضغط على Open File to Disassemble
أخي الكريم عند فتح البرنامج تستغرب من كيف قام البرنامج بقراءة بيانات البرنامج ...
ويجب عليك الإنتظار قليلاً ريثما يت قراءة البيانات ...
والآن وبعد أن فتح البرنامج تستطيع تعديل خط القراءة بما يتناسب معك عن طريق :
الضغط على Disassembler
ومن ثم FONT...
ومن ثم تحيد الخط SELECT FONT
ومن ثم اختيار الخط المناسب ............
http://krobars.reverse-engineering.info/beginner/w32dasm2.jpg
ثالثاً :
open up
the string references by choosing: Refs->String Data Reference from the Menu. When the String References Dialog
opens, you will see all the strings that were used in this program. And of course you will find our two little strings:
"REGISTERED" and "*UN*REGISTERED !!!" back in the disassembly. Now double click on "REGISTERED" and
close the string references dialog box. You will land here in the disassembly:
الأمر لهام الذي يجب أن نتعلمه في درسنا هذا هو (REFC)
Data String Data References
وهو الأهم في موضوعنا حيث تستطيع من خلالها رؤية بعض الأوامر التي تظهر عندو حدوث خطأ ....
مثلاً كلمة المرور غير صحيحة
أو الكود ...
أو شكر لتسجيلك ......
أو غير مسجل ......
الكلمات الشائعة عند التسجيل سواء بنجاح أو بفشل.......
please password
input password
incorrect password
congratulations وغيــــــــــــــــــــــــــــــــــــــــــــــــرهاااااااااااااااااااا
وهذه النافذة مفيدة في البحث عن رسالة الخطأ مثل :
الرسالة التي تظهر لك عندما تحاول فتح ملف عليه كلمةسر التي هي sorry! the password is not correct
وغيرها من الكلمات الشائعة ..
http://krobars.reverse-engineering.info/beginner/w32dasm3.jpg
الآن ما عليك سوى قبل فتح البرنامج الضحية رؤية الرسالة التي يظهر أمامك عندما تدخل الكود
الخطأ أو التسجيل الخطأ ....... ومن ثم التوجه إلى البرنامج هذا W32Dasm ver 8.9
وفتح البرنامج المطلوب ومن ثم الغضط على (REFC) في شريط القوائم ومن ثم إختار
الأمر String Data References
ومن ثم البحث عن الكلمة التي ظهرت عند إدخال الكود الخاطئ ........
وعندما تجدها قم بالنقر عليها نقرتين وعندها سوف تنتقل إلى سطر الأمر الخاص بها ...
حيث سوف تجد الشرط البرمجي لهذا البرنامج والآن وقد حددت نقطة الشرطة البرمجية ...
ما عليك سوى كتابة هذه نقطة الشرطة البرمجية هذه في ورقة ... وللإطلاع يجب عليك البحث عن
أقرب شرط برمجي يقوم بالقفز إلى هذه الأمر ...أي أرفع قليلاً لتصل غلى أقرب شرط برمجي
يقومبإعطاء الأمر بالقفز إلى هذه النقطة عندما يكون الكود صحيح ....
والعكس صحيح أيضاً ..........
مثلاً الكود :
////////////////////// Code ///////////////////////////
ADDRESS MACHINE CODE ASSEMBLER INSTRUCTIONS
:0040106E E88DFFFFFF call 00401000
:00401073 85C0 test eax, eax
:00401075 741F je 00401096
* Possible StringData Ref from Data Obj ->"REGISTERED"
لاحظ أخي القارئ نقطة الإستدعاء وهي call 00401000 حيث يقوم البرنامج بعدها مباشرة بالمقارنة بين الكود المدخل والكود الأصلي :
test eax, eax
ركز معي قليلاً انظر كيف يقوم بالقفز إلى نقطة التسجيل إذا كانت المقارنة صحيحة je 00401096 هو أمر القفز ...
إنها عملية سهلة بعض البرامج وصعبة مع برامج آخرى ... فقط قم بكتابة نقطة الإدخال مثلاً Code Data @:00401075 @Offset 00000475h in File.
ومن ثم تعديل بالأمر المعاكس jne عن طريق البرنامج HIEW
http://krobars.reverse-engineering.info/beginner/w32dasm5.jpg
وإليك أخي الكريم الأوامر في هذه اللغة ( لغة التجميع ) وهي سهلة الحفظ :
90 nop no operation
EB jmp jump directly to
70 jo jump if overflow
71 jno jump if not overflow
0F82 or 72 jnae jump if not above or equal
0F82 or 72 jb jump if below
0F83 or 73 jae jump if above or equal
0F83 or 73 jnb jump if not below
0F84 or 74 je jump if equal
0F84 or 74 jz jump if zero
0F85 or 75 jne jump if not equal
0F85 or 75 jnz jump if not zero
0F86 or 76 jna jump if not above
0F86 or 76 jbe jump if below or equal
0F87 or 77 jbe jump if above
0F87 or 77 jnbe jump if not below or equal
78 js jump if
79 jns jump if not
0F8C or 7C jnge jump if not greater or equal
0F8C or 7C jl jump if less
0F8D or 7D jge jump if greater or equal
0F8D or 7D jnl jump if not less
0F8E or 7E jng jump if not greater
0F8E or 7E jle jump if less or equal
0F8F or 7F jg jump if greater
0F8F or 7F jnle jump if not less or equal
XOR eax,eax 33 C0
INC EAX 66 40
PUSH 00000001 6A 01
POP EAX 66 58
RET C3
INT 3 CC
PUSH EAX 50
POP EAX 58
TEST EAX,EAX 85 C0
MOV EAX, 01CC02BB B8 BB 02 CC 01
http://krobars.reverse-engineering.info/beginner/w32dasm5.jpg
فمثلاً أخي الكريم الأمر ( JE) يعني القفز إلى هنا وعكس هذا الأمر هو (JNE)وهو عدم القفز ...
وكما ذكرت الأمر (JE) يأخذ رقم 74
وكذلك الأمر ( JNE) يأخذ رقم 75
فأنت أخي الكريم عندما معرفة نقطة القفز والشرط البرمجي ما عليك سوى البحث عن هذه النقطة البرمجية
وتحريرها من خلال محرر خاص وهي كثيرة جداً منها (HIEW 5.92) ...
فأنا كنت أظن أنا الأمر صعب ولكن تبين لي أن الأمر بسيط إذا كانت هذه الحماية فكها طبعاً عن طريق
البرنامج (W32Dasm ver 8.9) والبرنامج (HIEW 5.92)
حيث انه كلنا يعلم أن كل برنامج أدوات خاصة به حسب نوعية الحماية فبعضها لا يحتاج سوى
البرنامج الذي قمت بشرحه هو (OllyDbg v1.09b) ..
أخي الفاضل القارئ لمقالتي ............
إليك بعض الأوامر التي سوف تشاهدها بكثرة وتكرر دائماً معك في هذه اللغة المعقدة ::
Frequently seen Assembler instructions:
cmp xxx, yyy This instruction compares value xxx with value yyy.
if they are equal, the zero flag is set.
test xxx, xxx Compares if value xxx is equal to zero. If it is, the zero
flag is set.
jmp <address> Unconditional jump. Jumps always. Not important for crackers
jz <address> jump if Zero flag is set. Same as je
jnz <address> jump if Zero flag is Not set. same as jne
jxx <address> jump if <condition>greater, less, greater or equal, less or
equal.
call <address> The Processor saves the address of the next instruction, then
it jumps to address <address>.
Executes all lines until it counters a ret instruction. After
the ret instruction it returns to the line of next instruction
These are subroutines / procedures / functions.
push <variable> This moves a value into the memory the processor uses. This is
usually done before a call is executed. The parameters of the
function are 'pushed'. The values are moved into memory so that the subroutine can access them easily.
ثق بأنك لن تحصل عليها إلا من مقالتي هذه فحفظها ............
وهناك بعض البرامج تتطلب أكثر من أداة لكسر حمايتها ......
وإليك صور منوعة عن البرنامج :
http://krobars.reverse-engineering.info/beginner/laz_01.gif
http://krobars.reverse-engineering.info/beginner/laz_02.gif
http://krobars.reverse-engineering.info/beginner/laz_03.gif
http://krobars.reverse-engineering.info/beginner/laz_04.gif
وأكتفي بهذا القدر من الكلام ........وللكلام بقية ... وإن شاء الله تبارك وتعالى ...
قريباً تطبيق هذا الكلام عملياً على أحدى البرامج حسب قدرتي وطاقتي ....
واتمنى من جميع الأخوة تقديم يد العون في سلسلة هذه لأني والله كل هذه الخطوات عن طريق
التجارب والقراءة البسيطة لبعض الكتب ...والله تعالى هو الموفق ....
قد تعبت من هذااااااااااااااااااااااااااااااااا اكتفي بهذا القدر وأني عازم تعليم الناس حسب طاقتي هذا العالم ( عالم الكراك )المليء بالجريمة والوحوش إن شاء الله قريباً ...
أخوكم
أبو عبد الله
من يعشق صعود القمم لا يهاب المصاعب ................&&&&.........&&&&&&..............&&&&&&&
http://members.lycos.co.uk/nsoooori6/upload/uploading/sarabic.gif
http://www.harrythecat.com/graphics/w/flower3.gif
(يُرِيدُونَ أَنْ يُطْفِئُوا نُورَ اللَّهِ بِأَفْوَاهِهِمْ وَيَأْبَى اللَّهُ إِلَّا أَنْ يُتِمَّ نُورَهُ وَلَوْ كَرِهَ الْكَافِرُونَ) (التوبة:32)
http://www.harrythecat.com/graphics/w/flower3.gif
(هُوَ الَّذِي أَرْسَلَ رَسُولَهُ بِالْهُدَى وَدِينِ الْحَقِّ لِيُظْهِرَهُ عَلَى الدِّينِ كُلِّهِ وَلَوْ كَرِهَ الْمُشْرِكُونَ) (الصف:9)
http://www.harrythecat.com/graphics/w/flower3.gif
السلام عليكم ورحمة الله وبركاته :قبل الحديث أحب أن أطلب منكم أيها الأخوة الكرام ... مساندتي
في هذا العمل وفي هذه السلسلة وتقديم المساعدة لي والنصيحة ... حتى يرقى العلم إلى القمة ...
فهذه دعوة إليكم لتشاركونا في هذه السلسلة لتعم الفائدة ....
وكما وعدتكم أحب دائماً أن أقدم لكم ما يوضح لكم بعض البرامج حسب طاقتي ومعرفتي بالبرنامج ...
وحسب التجارب التي حدثت معي مع البرنامج .
برنامجنا اليوم : أخي الفاضل أنت بحاجة إلى أدوات حتى تكسر حماية برنامج ما وأول هذه الأدوات هذه الأدارة ويليها بعض المحررات ....
You need a few tools to follow these tutorials. The first one is w32dasm. A disassembler.
You can find it all over the internet. The second one is Hiew. A freeware editor. You can
download it from public ftp's.
وسوف تجد رابط البرنامج تستطيع تحميل ابرنامج ..........
W32Dasm ver 8.9
وهو برنامج ضروري في كسر حماية البرامج من خلال معرفة الشرط البرمجي للبرنامج المراد
كسره ...
رابط البرنامج :
http://www/expage.com/page/w32dasm
وهو يلائم كل إصدرات الويندوز ..
ولن أطيل الكلام عن مواصفاته وسوف أدخل بما يهم الموضوع :
أولاً واجهة البرنامج
http://krobars.reverse-engineering.info/beginner/w32dasm1.jpg
في هذا الدرس لن نتعلم سوى فقط شيء بسيط يفيد الجميع ..وكل ما يجب عليك أخي أن لاتخاف من
هذا البرامج فإنها عادية ...حتى ولو أنك أخطأت في التعامل معها لن يحدث لجهازك ما يضره
حتى ولو تضرر فالأمر بسيط في تصليح ما حدث من خلال ...
ففي هذا البرنامج أوامر كثيرة ومهمة ولكن نحن يهمنا فقط بعض منها حالياً ....
http://www.harrythecat.com/graphics/w/flower3.gif
فأخي الكريم نحن العرب للأسف الشديد لا نستطيع صنع البرامج فهلا عملنا أولادنا كيف تعلم هذه البرامج
فعلاً شيء مؤسف جداً وخاصة وقد قرأت بعض الصحف بأن هناك طفلاً أجنبياً قام بعملية إختلاس إلكترونية عن
طريق الإنترنت ...فمتى نعلم أولادنا هذه المهارة .. ( تظن بي السوء ) فأنا لا أدعو إلى السرقة
فكلما أقصد هو تعليم أولادنا هذه البرامج إذا كنا عاجزين غير قادرين على صنعها .. والله تبارك وتعالى
هو وحده الموفق .
http://www.harrythecat.com/graphics/w/flower3.gif
أخي القارئ دائماً إي برنامج يكون فيه هناك شريط أدوات وهي عبارة عن إيقونات لتسهيل الوصول السريع
إلى الأمر المارد تنفيذه ...بالإضافة إلى القوائم الموجودة مع كل البرامج ..
فأنت مثلاً تستطيع فتح البرنامج سواء عن طريق القوائم أو عن طريق الإيقونة الخاصة بهذا الأمر من شريط الأدوات ..
http://krobars.reverse-engineering.info/beginner/w32dasm4.jpg
في برنامجنا هذا قم بفتح البرنامج المراد من :
الضغط على : Disassembler
ثم اضغط على Open File to Disassemble
أخي الكريم عند فتح البرنامج تستغرب من كيف قام البرنامج بقراءة بيانات البرنامج ...
ويجب عليك الإنتظار قليلاً ريثما يت قراءة البيانات ...
والآن وبعد أن فتح البرنامج تستطيع تعديل خط القراءة بما يتناسب معك عن طريق :
الضغط على Disassembler
ومن ثم FONT...
ومن ثم تحيد الخط SELECT FONT
ومن ثم اختيار الخط المناسب ............
http://krobars.reverse-engineering.info/beginner/w32dasm2.jpg
ثالثاً :
open up
the string references by choosing: Refs->String Data Reference from the Menu. When the String References Dialog
opens, you will see all the strings that were used in this program. And of course you will find our two little strings:
"REGISTERED" and "*UN*REGISTERED !!!" back in the disassembly. Now double click on "REGISTERED" and
close the string references dialog box. You will land here in the disassembly:
الأمر لهام الذي يجب أن نتعلمه في درسنا هذا هو (REFC)
Data String Data References
وهو الأهم في موضوعنا حيث تستطيع من خلالها رؤية بعض الأوامر التي تظهر عندو حدوث خطأ ....
مثلاً كلمة المرور غير صحيحة
أو الكود ...
أو شكر لتسجيلك ......
أو غير مسجل ......
الكلمات الشائعة عند التسجيل سواء بنجاح أو بفشل.......
please password
input password
incorrect password
congratulations وغيــــــــــــــــــــــــــــــــــــــــــــــــرهاااااااااااااااااااا
وهذه النافذة مفيدة في البحث عن رسالة الخطأ مثل :
الرسالة التي تظهر لك عندما تحاول فتح ملف عليه كلمةسر التي هي sorry! the password is not correct
وغيرها من الكلمات الشائعة ..
http://krobars.reverse-engineering.info/beginner/w32dasm3.jpg
الآن ما عليك سوى قبل فتح البرنامج الضحية رؤية الرسالة التي يظهر أمامك عندما تدخل الكود
الخطأ أو التسجيل الخطأ ....... ومن ثم التوجه إلى البرنامج هذا W32Dasm ver 8.9
وفتح البرنامج المطلوب ومن ثم الغضط على (REFC) في شريط القوائم ومن ثم إختار
الأمر String Data References
ومن ثم البحث عن الكلمة التي ظهرت عند إدخال الكود الخاطئ ........
وعندما تجدها قم بالنقر عليها نقرتين وعندها سوف تنتقل إلى سطر الأمر الخاص بها ...
حيث سوف تجد الشرط البرمجي لهذا البرنامج والآن وقد حددت نقطة الشرطة البرمجية ...
ما عليك سوى كتابة هذه نقطة الشرطة البرمجية هذه في ورقة ... وللإطلاع يجب عليك البحث عن
أقرب شرط برمجي يقوم بالقفز إلى هذه الأمر ...أي أرفع قليلاً لتصل غلى أقرب شرط برمجي
يقومبإعطاء الأمر بالقفز إلى هذه النقطة عندما يكون الكود صحيح ....
والعكس صحيح أيضاً ..........
مثلاً الكود :
////////////////////// Code ///////////////////////////
ADDRESS MACHINE CODE ASSEMBLER INSTRUCTIONS
:0040106E E88DFFFFFF call 00401000
:00401073 85C0 test eax, eax
:00401075 741F je 00401096
* Possible StringData Ref from Data Obj ->"REGISTERED"
لاحظ أخي القارئ نقطة الإستدعاء وهي call 00401000 حيث يقوم البرنامج بعدها مباشرة بالمقارنة بين الكود المدخل والكود الأصلي :
test eax, eax
ركز معي قليلاً انظر كيف يقوم بالقفز إلى نقطة التسجيل إذا كانت المقارنة صحيحة je 00401096 هو أمر القفز ...
إنها عملية سهلة بعض البرامج وصعبة مع برامج آخرى ... فقط قم بكتابة نقطة الإدخال مثلاً Code Data @:00401075 @Offset 00000475h in File.
ومن ثم تعديل بالأمر المعاكس jne عن طريق البرنامج HIEW
http://krobars.reverse-engineering.info/beginner/w32dasm5.jpg
وإليك أخي الكريم الأوامر في هذه اللغة ( لغة التجميع ) وهي سهلة الحفظ :
90 nop no operation
EB jmp jump directly to
70 jo jump if overflow
71 jno jump if not overflow
0F82 or 72 jnae jump if not above or equal
0F82 or 72 jb jump if below
0F83 or 73 jae jump if above or equal
0F83 or 73 jnb jump if not below
0F84 or 74 je jump if equal
0F84 or 74 jz jump if zero
0F85 or 75 jne jump if not equal
0F85 or 75 jnz jump if not zero
0F86 or 76 jna jump if not above
0F86 or 76 jbe jump if below or equal
0F87 or 77 jbe jump if above
0F87 or 77 jnbe jump if not below or equal
78 js jump if
79 jns jump if not
0F8C or 7C jnge jump if not greater or equal
0F8C or 7C jl jump if less
0F8D or 7D jge jump if greater or equal
0F8D or 7D jnl jump if not less
0F8E or 7E jng jump if not greater
0F8E or 7E jle jump if less or equal
0F8F or 7F jg jump if greater
0F8F or 7F jnle jump if not less or equal
XOR eax,eax 33 C0
INC EAX 66 40
PUSH 00000001 6A 01
POP EAX 66 58
RET C3
INT 3 CC
PUSH EAX 50
POP EAX 58
TEST EAX,EAX 85 C0
MOV EAX, 01CC02BB B8 BB 02 CC 01
http://krobars.reverse-engineering.info/beginner/w32dasm5.jpg
فمثلاً أخي الكريم الأمر ( JE) يعني القفز إلى هنا وعكس هذا الأمر هو (JNE)وهو عدم القفز ...
وكما ذكرت الأمر (JE) يأخذ رقم 74
وكذلك الأمر ( JNE) يأخذ رقم 75
فأنت أخي الكريم عندما معرفة نقطة القفز والشرط البرمجي ما عليك سوى البحث عن هذه النقطة البرمجية
وتحريرها من خلال محرر خاص وهي كثيرة جداً منها (HIEW 5.92) ...
فأنا كنت أظن أنا الأمر صعب ولكن تبين لي أن الأمر بسيط إذا كانت هذه الحماية فكها طبعاً عن طريق
البرنامج (W32Dasm ver 8.9) والبرنامج (HIEW 5.92)
حيث انه كلنا يعلم أن كل برنامج أدوات خاصة به حسب نوعية الحماية فبعضها لا يحتاج سوى
البرنامج الذي قمت بشرحه هو (OllyDbg v1.09b) ..
أخي الفاضل القارئ لمقالتي ............
إليك بعض الأوامر التي سوف تشاهدها بكثرة وتكرر دائماً معك في هذه اللغة المعقدة ::
Frequently seen Assembler instructions:
cmp xxx, yyy This instruction compares value xxx with value yyy.
if they are equal, the zero flag is set.
test xxx, xxx Compares if value xxx is equal to zero. If it is, the zero
flag is set.
jmp <address> Unconditional jump. Jumps always. Not important for crackers
jz <address> jump if Zero flag is set. Same as je
jnz <address> jump if Zero flag is Not set. same as jne
jxx <address> jump if <condition>greater, less, greater or equal, less or
equal.
call <address> The Processor saves the address of the next instruction, then
it jumps to address <address>.
Executes all lines until it counters a ret instruction. After
the ret instruction it returns to the line of next instruction
These are subroutines / procedures / functions.
push <variable> This moves a value into the memory the processor uses. This is
usually done before a call is executed. The parameters of the
function are 'pushed'. The values are moved into memory so that the subroutine can access them easily.
ثق بأنك لن تحصل عليها إلا من مقالتي هذه فحفظها ............
وهناك بعض البرامج تتطلب أكثر من أداة لكسر حمايتها ......
وإليك صور منوعة عن البرنامج :
http://krobars.reverse-engineering.info/beginner/laz_01.gif
http://krobars.reverse-engineering.info/beginner/laz_02.gif
http://krobars.reverse-engineering.info/beginner/laz_03.gif
http://krobars.reverse-engineering.info/beginner/laz_04.gif
وأكتفي بهذا القدر من الكلام ........وللكلام بقية ... وإن شاء الله تبارك وتعالى ...
قريباً تطبيق هذا الكلام عملياً على أحدى البرامج حسب قدرتي وطاقتي ....
واتمنى من جميع الأخوة تقديم يد العون في سلسلة هذه لأني والله كل هذه الخطوات عن طريق
التجارب والقراءة البسيطة لبعض الكتب ...والله تعالى هو الموفق ....
قد تعبت من هذااااااااااااااااااااااااااااااااا اكتفي بهذا القدر وأني عازم تعليم الناس حسب طاقتي هذا العالم ( عالم الكراك )المليء بالجريمة والوحوش إن شاء الله قريباً ...
أخوكم
أبو عبد الله
من يعشق صعود القمم لا يهاب المصاعب ................&&&&.........&&&&&&..............&&&&&&&
http://members.lycos.co.uk/nsoooori6/upload/uploading/sarabic.gif
http://www.harrythecat.com/graphics/w/flower3.gif
(يُرِيدُونَ أَنْ يُطْفِئُوا نُورَ اللَّهِ بِأَفْوَاهِهِمْ وَيَأْبَى اللَّهُ إِلَّا أَنْ يُتِمَّ نُورَهُ وَلَوْ كَرِهَ الْكَافِرُونَ) (التوبة:32)
http://www.harrythecat.com/graphics/w/flower3.gif