<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Reverse-Engineering on P01NT</title><link>https://outofsrvc.github.io/ar/categories/reverse-engineering/</link><description>Recent content in Reverse-Engineering on P01NT</description><generator>Hugo</generator><language>ar</language><lastBuildDate>Sun, 09 Aug 2026 12:00:00 +0300</lastBuildDate><atom:link href="https://outofsrvc.github.io/ar/categories/reverse-engineering/index.xml" rel="self" type="application/rss+xml"/><item><title>The Reverse Engineer's Mindset</title><link>https://outofsrvc.github.io/ar/workshop/thinking-lab/</link><pubDate>Mon, 23 Mar 2026 10:00:00 +0300</pubDate><guid>https://outofsrvc.github.io/ar/workshop/thinking-lab/</guid><description>&lt;p>بسم الله الرحمن الرحيم.&lt;/p>
&lt;p>المهندس العكسي لا يرى الكود كأوامر برمجية معقدة فحسب، بل يراه كـ &amp;ldquo;صندوق أسود&amp;rdquo; (Black Box) له مدخلات (Inputs) ومخرجات (Outputs). لذلك، سنناقش في هذا المقال كيف يتم بناء عقلية المهندس العكسي وكيفية استنتاج المنطق البرمجي المخفي.&lt;/p>
&lt;hr>
&lt;h2 id="السيناريو-الباب-الإلكتروني-the-scenario">السيناريو: الباب الإلكتروني (The Scenario)&lt;/h2>
&lt;p>تخيل أننا أمام باب إلكتروني مغلق. هذا الباب لا يُفتح إلا إذا أدخلت &amp;ldquo;حرفاً&amp;rdquo; واحداً صحيحاً من لوحة المفاتيح. لدينا فقط لوحة المفاتيح وشاشة صغيرة تعرض رسالة واحدة عند كل محاولة إدخال.&lt;/p></description></item><item><title>Static Lab</title><link>https://outofsrvc.github.io/ar/workshop/static-lab/</link><pubDate>Tue, 24 Mar 2026 10:00:00 +0300</pubDate><guid>https://outofsrvc.github.io/ar/workshop/static-lab/</guid><description>&lt;p>بسم الله الرحمن الرحيم.&lt;/p>
&lt;p>في هذا المقال، سوف نقوم بحل تحدي (Lab) بسيط يعتمد بشكل كامل على التحليل الثابت (Static Analysis). الهدف هنا هو تطبيق المفاهيم التي تعلمناها سابقاً لفك تشفير العلم (Flag) المخفي داخل البرنامج.&lt;/p>
&lt;blockquote>
&lt;p>تجهيز بيئة العمل: يمكنك تحميل الملف التنفيذي الخاص بهذا اللاب من الرابط التالي &lt;a href="https://outofsrvc.github.io/assets/binaries/5t4t1c_cr4ckm3.7z">5t4t1c_cr4ckm3&lt;/a> في مستودع الدورة كلمة فك الضغط: &lt;strong>p01nt&lt;/strong>&lt;/p>&lt;/blockquote>
&lt;hr>
&lt;blockquote>
&lt;p>لفتح هذه الملف يجب عليك ان تفتحه داخل &lt;strong>VM&lt;/strong> مع اني انا الذي صممت هذا الملف ولكن لا تثق بالمجتمع السيبراني أبدا نقوم بعمل run للملف بالامر التالي&lt;/p></description></item><item><title>Dynamic Lab</title><link>https://outofsrvc.github.io/ar/workshop/dynamic-lab/</link><pubDate>Wed, 25 Mar 2026 10:00:00 +0300</pubDate><guid>https://outofsrvc.github.io/ar/workshop/dynamic-lab/</guid><description>&lt;p>بسم الله الرحمن الرحيم.&lt;/p>
&lt;p>في هذا المقال، سوف نقوم بحل تحدي (Lab) بسيط يعتمد بشكل كامل على التحليل الديناميكي (Dynamic Analysis) باستخدام المنقح x64dbg. سنتعلم كيف نتخطى آليات اكتشاف المنقح (Anti-Debugging) وكيف نقوم بتعديل مسار البرنامج (Patching) ليقبل أي مفتاح ندخله.&lt;/p>
&lt;blockquote>
&lt;p>تجهيز بيئة العمل: يمكنك تحميل الملف التنفيذي الخاص بهذا اللاب من الرابط التالي &lt;a href="https://outofsrvc.github.io/assets/binaries/dyn4m1c_cr4ckm3.7z">dyn4m1c_cr4ckm3&lt;/a> في مستودع الدورة كلمة فك الضغط: &lt;strong>p01nt&lt;/strong>&lt;/p>&lt;/blockquote>
&lt;hr>
&lt;h2 id="1-الاستطلاع-والملاحظة-reconnaissance">1. الاستطلاع والملاحظة (Reconnaissance)&lt;/h2>
&lt;p>بدايةً، نفتح موجه الأوامر (CMD) ونقوم بتشغيل البرنامج لنرى ما هي مخرجاته الأولية.&lt;/p></description></item><item><title>After That</title><link>https://outofsrvc.github.io/ar/workshop/after-that/</link><pubDate>Thu, 26 Mar 2026 10:00:00 +0300</pubDate><guid>https://outofsrvc.github.io/ar/workshop/after-that/</guid><description>&lt;p>بسم الله والصلاة والسلام على رسول الله، وعلى آله وصحبه ومن والاه.&lt;/p>
&lt;p>الحمد لله رب العالمين الذي بفضله وتوفيقه تم الانتهاء من ورشة &lt;strong>Entry P01NT&lt;/strong>. أسأل الله أن يكتب لكم العلم النافع والعمل الصالح بها، وأن تكون خير بداية لكم.&lt;/p>
&lt;hr>
&lt;h2 id="ماذا-بعد-الورشة-the-road-ahead">ماذا بعد الورشة؟ (The Road Ahead)&lt;/h2>
&lt;p>الهندسة العكسية ليست مجرد قراءة مقالات، بل هي ممارسة، تجربة، وبناء ذاكرة عضلية (Muscle Memory) في التعامل مع الأدوات وتحليل الأكواد. لذلك، قمت بتجهيز خارطة طريق بسيطة لكم:&lt;/p></description></item><item><title>Flare-On 2015: حل التحدي الأول</title><link>https://outofsrvc.github.io/ar/posts/flare-on15-1/</link><pubDate>Sun, 09 Aug 2026 12:00:00 +0300</pubDate><guid>https://outofsrvc.github.io/ar/posts/flare-on15-1/</guid><description>&lt;p>بسم الله الرحمن الرحيم.&lt;/p>
&lt;p>في هذا المقال، سوف نحل التحدي الأول من تحديات &lt;strong>Flare-On (2015)&lt;/strong>. سنعتمد كما هو معتاد على منهجية التعلم بالممارسة (Learning-by-Doing) ونهج التعلم في الوقت المناسب (Just-in-Time Learning).&lt;/p>
&lt;h2 id="1-تحميل-التحدي-وتشغيله">1. تحميل التحدي وتشغيله&lt;/h2>
&lt;p>أولاً، نقوم بتحميل التحدي من الموقع الرسمي: &lt;a href="https://flare-on.com/">flare-on.com&lt;/a>&lt;/p>
&lt;blockquote>
&lt;p>كلمة سر الملفات: &lt;strong>flare&lt;/strong>.&lt;/p>&lt;/blockquote>
&lt;p>بدايةً، نقوم بتشغيل الملف الظاهر أمامنا:&lt;/p>
&lt;p>&lt;img alt="تشغيل الملف لأول مرة" decoding="async" loading="lazy" src="https://outofsrvc.github.io/assets/img/flareon15/run1.png">
&lt;em>شكل (1): تشغيل الملف لأول مرة&lt;/em>&lt;/p>
&lt;p>نقوم بنسخ المسار المحدد الذي سنضع فيه ملف التحدي:&lt;/p></description></item><item><title>Flare-On 2014: حل التحدي الأول</title><link>https://outofsrvc.github.io/ar/posts/flare-on-14-1/</link><pubDate>Fri, 07 Aug 2026 00:30:00 +0300</pubDate><guid>https://outofsrvc.github.io/ar/posts/flare-on-14-1/</guid><description>&lt;p>بسم الله الرحمن الرحيم.&lt;/p>
&lt;p>في هذا المقال، سوف نحل التحدي الأول من تحديات &lt;strong>Flare-On (2014)&lt;/strong>. سنعتمد في هذا الحل — وفي غالبية التحديات القادمة — على منهجية التعلم في الوقت المناسب (Just-in-Time Learning) أو ما يُعرف بالتعلم بالممارسة (Learning-by-Doing).&lt;/p>
&lt;h2 id="لماذا-بدأنا-بتحديات-flare-on">لماذا بدأنا بتحديات Flare-On؟&lt;/h2>
&lt;p>لأن هذه التحديات مبنية على تقنيات واقعية من العالم الحقيقي (Real-World)، وليست مجرد تحديات CTF مصطنعة تُقدَّم عادةً في المسابقات.&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>ملاحظة مهمة:&lt;/strong> تحديات الـ CTF هي فقط جسرٌ بين التعلم النظري والتطبيق العملي، ولا تدل بأي شكل من الأشكال على أنك شخص قوي في المجال. الخبرة الحقيقية تُكتسب من التعامل مع البرامج الواقعية (Real-World) — سواء كانت برمجيات خبيثة (Malware) أو ألعاباً أو برامج نقوم بهندستها عكسياً.&lt;/p></description></item></channel></rss>