![]() |
|
كيف ابرمج Plugin اضافة للبرامج - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : كيف ابرمج Plugin اضافة للبرامج (/showthread.php?tid=4647) الصفحات:
1
2
|
كيف ابرمج Plugin اضافة للبرامج - ALmuhhnad - 17-10-2012 السلام عليكم ورحمة الله وبركاتة كيف ابرمجة ملفات dll تعمل على إخفاء البرنامج الذي يستعمل الـ dll التي ابرمجها مثال لمن يعرف برنامج التنقيح OllyDbg ... لديه Plugins كثير منها من يقوم بإخفاء البرنامج بشكل كامل مثل هذه الـ dll لكن لبرامج اخرى غير OllyDbg مثل Cheat Engine ..... علماً اني لا اعرف كيف ابرمج ملف dll فقط اعرف انه يتم فيه تخزين الدوال ويتم استدعائها من البرنامج الذي اربتط مع الـ dll متى ما اراد واشكر لكم حسن قرائتكم كيف ابرمج Plugin اضافة للبرامج - محمد عبد العزيز - 17-10-2012 وعليكم السلام ورحمة الله وبركاته هل للبرنامج امكانية اللإضافة أو pdk اختصارا لPlugin Development kit ؟ كمثال ذكرتOllyDbg هناك موضوع:OllyDbg Plugins+Source http://delphi4arab.net/forum/showthread.php?tid=1922 وحتما تعرف PEiD فهناك موضوع:PEiD Plugins+Sources http://delphi4arab.net/forum/showthread.php?tid=1676 اما ان كانت الإضافة لبرنامج الخاص يمكنك مراجعة: دورة دلفي للعرب- الدرس السابع: إنشاء الإضافات وبرمجة مكتبات الربط الديناميكية http://delphi4arab.net/forum/showthread.php?tid=578 تتعلم بنفس الموضوع برمجة مكتبتك الخاصة DLL بالنسبة للإخفاء الأمر متعلق بمعرفة كيفية الكشف ثم بعدها القيام بالمضاد! يمكن مراجعة: كيف اجعل بروسيس برنامجي لا يظهر في task manager -مديرالمهام http://delphi4arab.net/forum/showthread.php?tid=370 كيف اضهر كلProcesses المخفية في جهازي http://delphi4arab.net/forum/showthread.php?tid=3684 ولا تنسى موضوع: Anti-RCE & Anti-Debugger http://delphi4arab.net/forum/showthread.php?tid=2042 راجع كل ما سبق وبعدها لنا حديث ان شاء الله ![]() كيف ابرمج Plugin اضافة للبرامج - ALmuhhnad - 17-10-2012 اشكر لك ردك السريع اخي الغالي [ B.M.AbdelAziZ ] توقعت ان تجيب علي ![]() جاري متابعه ما ذكرت
كيف ابرمج Plugin اضافة للبرامج - ALmuhhnad - 19-10-2012 إقتباس : هل للبرنامج امكانية اللإضافة أو pdk اختصارا لPlugin Development kit ؟ انا اعتقد انه يوجد مثل ما يسمى بـ PDK في Cheat Engine لكن هل لك ان توضح اكثر عنها لان جميع الروابط التي وضعت لم يتكلم فيها احد عن PDK وبالنسبة للسورس كود للمكتبات اضن اني لن افهم شيء إذا ما عرفت كيف يتخفى البرنامج اصلاً ( اطلعت عليها ) والمقالة التي كتبها المبرمج Ms تعطي امثلة بالـ ASM + C وانا غير جيد البتة في C ولا افهم بالـ ASM عندما تتعلق بالنظام والتعامل معه @@" كيف ابرمج Plugin اضافة للبرامج - ALmuhhnad - 23-10-2012 انتهيت من قرائت جميع الروابط وملحقاتها وبعضها فهمت منها والآخر اشك اني فهمت شيء منها لكن الكل يتكلم ولديه خبرة وساعه في هذا المجال ولم اجد اي موضوع عربي يتكلم عن برمجة Plugin لاي برنامج حتى الاسااسيات او المفاهيم والطرق التي يجب ان نمشيء عليها ...إلخ رغم ذلك اجد المبرمجين العرب لديهم Plugin في Olly ومشهورة لدرجة وصولها إلى المنتديات الاجنبية .( ما شاء الله ). ... لكن للاسف كالمعتاد الباحث العربي آخر ما نفكر فيه ... طبعا ربما تضن او يضن اغلبكم انه كما وجدت المعلومة انت يستطيع اي احد آخر إيجادها واعتقد ان هذا من اهم الاسباب التي تجعل المجتمع العربي متأخر عن المجتمعات الآخرى الآن انتهيت من معرفة بعض الاساليب في كشف المنقح olly نأخذ على سبيل المثال ابسط طريقة وهي عن طريق استعمل الدالة FindWindow كود : procedure TForm3.Button1Click(Sender: TObject);
Var
FW_Olly: HWND;
begin
FW_Olly := FindWindow('OllyDbg','OllyDbg - [CPU]');
if FW_Olly <> 0 then
ShowMessage('OllyDbg is Run')
else
ShowMessage('OllyDbg is not Run');
end;مثال : كود : SetWindowText(FW_Olly,'Example');إذا بعد ان عرفت طريقة ومضاد لها .. كيف ابرمج لها ملف Dll يتوافق مع الـ Olly او Cheat Engine انا اعرف ان ملف الـ Dll مكون من دوال استدعيها من البرنامج الذي يستعمل هذه الـ Dll لكن ليست عندي اي فكرة عن كيفية ربطها في Olly وخصوصاً انه تظهر في قائمة الـ Plugins في Olly لاني اعرف انها دوال فقط انتظركم اخواني ولا زلت ابحث كيف ابرمج Plugin اضافة للبرامج - محمد عبد العزيز - 23-10-2012 إقتباس :لكن هل لك ان توضح اكثر عنها لان جميع الروابط التي وضعت لم يتكلم فيها احد عن PDKالPDK هو ما يعطيه صاحب البرنامج لغيره لتطوير اضافات لبرنامجه والروابط السابقة بها امثلة تحتوى ترجمة PDK لدلفي كمثال OllyDbg تجد الPDK بموقع هنا كود : http://www.ollydbg.de/pdk.htmكود : http://www.ollydbg.de/version2.html1- عليك قرأة كل ما بالPDK خاصة Plugins.hlp 2- الPDK الموجود بالموقع بلغة السي فقط وما تجده بلغات اخرى هو اجتهاد اشخاص قامو بتحويله الى لغات البرمجة المفضلة لديهم (مثل مرفقات الروابط السابقة هنا بالمنتدى) إقتباس :امثلة بالـ ASM + C وانا غير جيد البتة في C ولا افهم بالـ ASMانصحك بتعلمها، ليس شرطا ان تتقنها على الأقل لتفهم مغزاها وتحولها الى لغة البرمجة المفضلة لديك إقتباس :لم اجد اي موضوع عربي يتكلم عن برمجة Pluginالمحتوى العربي التقني صفر فاصل صفر شيئ من المائة من محتوى الأنترنت قبل ان تنتظر ان يفهم غيرك ويكتب لك مقالات بالعربية تعلم وكن انت كاتبها ان شاء الله تجد توجيه هنا او هناكذكرت برنامج Cheat Engine http://delphi4arab.net/forum/showthread.php?tid=2020 لو نظرت بموقع البرنامج أول صفحة تجد Plugin كود : http://cheatengine.org/plugins/forcedinjection.rarالPDK موجود كود : http://code.google.com/p/cheat-engine/source/browse/#svn%2Ftrunk%2FCheat%20Engine%2Fpluginنعود لمسألة الاخفاء، اخفاء ماذا وعن ماذا ؟ اخفاء المنقح OllyDbg ؟ عن ماذا (ما هي طرق الكشف)؟ يجب وضع قائمة لكل الطرق وبرمجة المضاد، يمكن الاستفادة من مما سبق كود : http://www.woodmann.com/collaborative/tools/index.php/Category:Tool_Hiding_Toolsإقتباس :نأخذ على سبيل المثال ابسط طريقة الدالة FindWindow ...و SetWindowTextحسنا مثال على السريع ليس هدفه الاخفاء بل فقط التوضيح، لضيق الوقت ناخذ مثال جاهز WinMax2 كود : http://bob.droppages.com/Projects/OllyDbg2/WinMax2كود : FW_Olly: HWND;
begin
FW_Olly := FindWindow('OllyDbg','OllyDbg - [CPU]');
if FW_Olly <> 0 then SetWindowText(FW_Olly,'Example');كود : http://www.ollydbg.de/odbg201g.zipكيف ابرمج Plugin اضافة للبرامج - ALmuhhnad - 23-10-2012 فإذا اخذت سروس كود انا لا اعرف مما يتكون واين اضع كودي ولا اعرف هذا الكود خاص بذاك الشيء ...إلخ على سبيل المثال ... انت وضعت الكود الذي يبحث عن نافذة Olly كود : Procedure Process;
Const
WM_MDIGETACTIVE = $0229;
Var
B: Bool;
H: HWnd;
FW_Olly: HWND;
begin
FW_Olly := FindWindow('OllyDbg','OllyDbg - [CPU]');
if FW_Olly <> 0 then SetWindowText(FW_Olly,'Example');
If PluginActive Then Begin
// Maximize current MDI window if not already maximized ..
H := SendMessage(HWnd(HWCLIENT^), WM_MDIGETACTIVE, 0, Integer(@B));
If (Not B) And (H > 0) Then ShowWindow(H, SW_SHOWMAXIMIZED);
End;
End;والآخر خاص بستدعائات الدوال ...إلخ اضن اتضحت الفكرة ... هل هناك اي مقالة او موضوع او معلومة بهذا الخصوص بأي لغة كانت ... اشكر لك تجاوبك وصبر علي اخي [ B.M.AbdelAziZ ] بالمناسبة لم تعمل الـ WinMax2 التي ارفقت على النسخة OllyDbg2.01g لا اعرف ما السبب ( اضفتها في مجلد الـPlugins وحددت مساره من برنامج olly ) كيف ابرمج Plugin اضافة للبرامج - محمد عبد العزيز - 23-10-2012 لم تنتبه للملاحظة 1: تجد كل شيئ بالملف Plugins.hlp ان لم يعمل المرفق السابق عندك فهناك سبب، فكر! في عالم البرمجة تحتاج دائما لخلفية ما للقيام بعمل ما، مثل الذي يسال عن التجميع Assembly في x86 ولم يطلع على كتب Intel كيف ابرمج Plugin اضافة للبرامج - STRELiTZIA - 23-10-2012 السلام علكيم و رحمة الله إقتباس :بالمناسبة لم تعمل الـ WinMax2 التي ارفقت على النسخة OllyDbg2.01g لا اعرف ما السبب ( اضفتها في مجلد الـPlugins وحددت مساره من برنامج olly )المرفق يعمل و الـــ Plugin يتم تحميله في اوللي بدون مشاكل... Windows Xp SP3 - Delphi 7 ايضا، يوجد ملف Header كامل تم تحويله من cpp الي الــ pascal من طرف الأخ phpbb3 يدعم النسخة OllyDbg 2.00 كيف ابرمج Plugin اضافة للبرامج - ALmuhhnad - 24-10-2012 كود : المرفق يعمل و الـــ Plugin يتم تحميله في اوللي بدون مشاكل... Windows Xp SP3 - Delphi 7والنتيجة كانت لم تعمل المكتبة لكن بعد ما فتحت المكتبة بالدلفي 7 لم تظهر لي ايت اخطاء وبعد عمل كومبلير عملت المكتبة بدون مشاكل ---- إقتباس : لم تنتبه للملاحظة 1: تجد كل شيئ بالملف Plugins.hlpللاسف الشديد اني لا اجيد إلا القليل من الانجليزية ( اعتقد اني يجب ان اتقنها اولاً ) إقتباس : في عالم البرمجة تحتاج دائما لخلفية ما للقيام بعمل ما، مثل الذي يسال عن التجميع Assembly في x86 ولم يطلع على كتب Intelنعم انا معك في هذا ... لذلك قلت إقتباس :لكن الكل يتكلم ولديه خبرة وساعه في هذا المجال ولم اجد اي موضوع عربي يتكلم عن برمجة Plugin لاي برنامج حتى الاسااسيات او المفاهيم والطرق التي يجب ان نمشيء عليها ...إلخواعطني من خبرتك اخي في الكتب التي تتكلم عن إنشاء ملفات dll او كتاب يتكلم عن الـ" Plugin Development kit " حتى وان كانت باللغة الانجليزية واعرف اني جاهل في الكثير من الامور لذلك المعذر ان ازعجتك ![]() واشكرك مره آخرى |