Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
oss-oopssec-store — تدريب أمني للتطبيقات التي تشحنها فعليًا. افتح متصفحك وابدأ في الاختراق. | Kitploit
أدوات/GitHubGitHub/koadt/oss-oopssec-store
تحليل الثغرات الأمنيةاستغلال تطبيقات الويبأمن الويبCTFاختبار الاختراقأمن سلسلة التوريدالتعلم والتعليممسارات ودورات التعلمأمن الذكاء الاصطناعيمختبرات وتدريب عملي
GitHubkoadt/oss-oopssec-store
344572منذ 7 أيامتمت المراجعة من قبل Kitploit

oss-oopssec-store

تدريب أمني للتطبيقات التي تشحنها فعليًا. افتح متصفحك وابدأ في الاختراق.

عرض المستودعالموقع الإلكتروني

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
<div align="center">

<h1>OSS - متجر OopsSec</h1>

</div>

<div align="center">

<p>
<b>تدريب أمني للتطبيقات التي تُطلقها فعليًا.</b>
</p>
<p>
36 تحديًا عبر <b>الويب، وواجهات API، والمصادقة، ومنطق الأعمال، والتشفير، وسلسلة التوريد، ووكلاء الذكاء الاصطناعي، وMCP</b>.
</p>
<p>
اختراق تطبيق تجارة إلكترونية مصمم عمدًا ليكون معرّضًا للثغرات، مبني على <b>Next.js وReact وTypeScript وPrisma</b>.<br>
اكتشف الأخطاء. استغلها. افهم لماذا تعمل.
</p>

<p>
<a href="https://hub.docker.com/r/leogra/oss-oopssec-store">Docker Hub</a> ·
<a href="https://www.npmjs.com/package/create-oss-store">npm</a> ·
<a href="https://koadt.github.io/oss-oopssec-store/roadmap">خارطة الطريق</a> ·
<a href="https://koadt.github.io/oss-oopssec-store">أدلة الحلول</a> ·
<a href="https://github.com/kOaDT/oss-oopssec-store/blob/main/CONTRIBUTING.md">المساهمة</a> ·
<a href="https://github.com/users/kOaDT/projects/3/views/6">المشكلات المناسبة للمبتدئين</a>
</p>

[![OWASP VWAD](https://img.shields.io/badge/OWASP-VWAD-000000?style=flat-square&logo=owasp&logoColor=white)](https://vwad.owasp.org/app/oopssec-store/)
[![TryHackMe room](https://img.shields.io/badge/TryHackMe-The_Summer_Audit-212C42?style=flat-square&logo=tryhackme&logoColor=white)](https://tryhackme.com/jr/oopssecstorethesummeraudit)
![Intentionally Vulnerable](https://img.shields.io/badge/%E2%9A%A0%EF%B8%8F_Intentionally-Vulnerable-red?style=flat-square)
<br>
[![GitHub license](https://img.shields.io/github/license/kOaDT/oss-oopssec-store?style=flat-square)](https://github.com/kOaDT/oss-oopssec-store/blob/main/LICENSE)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen?style=flat-square)](https://github.com/kOaDT/oss-oopssec-store/pulls)
[![Good first issues](https://img.shields.io/badge/Good_first-issues-7057ff?style=flat-square)](https://github.com/users/kOaDT/projects/3/views/6)
<br>
[![GitHub stars](https://img.shields.io/github/stars/kOaDT/oss-oopssec-store?style=social)](https://github.com/kOaDT/oss-oopssec-store/stargazers)
[![GitHub forks](https://img.shields.io/github/forks/kOaDT/oss-oopssec-store?style=social)](https://github.com/kOaDT/oss-oopssec-store/network)

</div>

```bash

   ____  ____ ____     ____                  ____            ____  _
  / __ \/ __// __/    / __ \ ___   ___  ___ / __/ ___  ____ / __/ / /_ ___   ____ ___
 / /_/ /\ \ _\ \     / /_/ // _ \ / _ \(_-<_\ \  / -_)/ __/_\ \  / __// _ \ / __// -_)
 \____/___//___/     \____/ \___// .__/___/___/  \__/ \__//___/  \__/ \___//_/   \__/
                                /_/

# Start with Node.js
npx create-oss-store my-ctf-lab && cd my-ctf-lab && npm start

# Start with Docker
docker run -p 127.0.0.1:3000:3000 leogra/oss-oopssec-store

# Then open http://localhost:3000 and start hacking
```

<div align="center">

<table>
<tr>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-0.png"><img src="https://assets.kitploit.com/production/public/readmes/12463/2656002fea49e81bc7876fc998d1bf1ddf664257bb023c03705e322e6dada5fb/9a5c520942d272122aeba14fd7a799dfecf60a99e0990904bff05e59ba634d37-display-v1.webp" alt="واجهة متجر OopsSec Store" width="100%"></a>
<br><sub><b>واجهة المتجر</b> · تطبيق التجارة الإلكترونية الذي تهاجمه</sub>
</td>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-1.png"><img src="https://assets.kitploit.com/production/public/readmes/12463/a3edf2b1a9311abfe35c5cb956302c0e6568a5c8ba891f0d2c4056defa19b078/24355e727585878af96376d809ee68dce57dd5823691ccd00b8fb8ae424750f6-display-v1.webp" alt="لوحة تحكم اللاعب لتتبع الأعلام الملتقطة" width="100%"></a>
<br><sub><b>لوحة تحكم اللاعب</b> · التقدم ومستوى الصعوبة وتوزيع الفئات</sub>
</td>
</tr>
<tr>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-2.png"><img src="https://assets.kitploit.com/production/public/readmes/12463/05a9601b40eb202f0ef72eae225d69bfceb5a6600361408be681131a51d29da7/41e77928d6eb00585c020ca88a60f8fcef577c5741c8fba826ed8ac1982c362e-display-v1.webp" alt="مساعد دعم العملاء بالذكاء الاصطناعي OSSBot" width="100%"></a>
<br><sub><b>OSSBot</b> · مساعد الدعم بالذكاء الاصطناعي الذي تحقن فيه الأوامر</sub>
</td>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-3.png"><img src="https://assets.kitploit.com/production/public/readmes/12463/91565414292b83d7dca7b97206404d899358e7b94ae9acad9c2a30d1886b8751/beac914224c61942f48311d8d3405292def762be276cffd16400ec6b6e2ec473-display-v1.webp" alt="خريطة التحديات عبر 11 فصلاً" width="100%"></a>
<br><sub><b>خريطة الطريق</b> · الثغرات التي تُشحن في كود الإنتاج</sub>
</td>
</tr>
</table>

<sub>انقر على أي لقطة شاشة لعرضها بالحجم الكامل.</sub>

</div>

---

## البدء

<table>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/1-15803d?style=for-the-badge" alt="الخطوة 1"></td>
<td valign="top">
<b>ابدأ المختبر</b><br>
<code>npx create-oss-store my-ctf-lab &amp;&amp; cd my-ctf-lab &amp;&amp; npm start</code><br>
<sub>أو <a href="#docker">شغّله باستخدام Docker</a>. يبدأ المتجر على <a href="http://localhost:3000">localhost:3000</a>.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/2-15803d?style=for-the-badge" alt="الخطوة 2"></td>
<td valign="top">
<b>انطلق نحو التحدي رقم 1</b><br>
<a href="http://localhost:3000/vulnerabilities/public-env-variable">تسريب متغير بيئة عام</a>: سر دفع يدمجه Next.js في حزمة العميل.<br>
<sub>سهل · 15–20 دقيقة · لا تحتاج سوى أدوات مطوّر المتصفح.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/3-15803d?style=for-the-badge" alt="الخطوة 3"></td>
<td valign="top">
<b>عالق؟ اقرأ الشرح التفصيلي</b><br>
لكل تحدٍّ شرح تفصيلي، من الثغرة إلى الاستغلال إلى الإصلاح.<br>
<sub>الأول: <a href="https://koadt.github.io/oss-oopssec-store/posts/next-public-env-variable-leak/">Reading Secrets From the Browser: The NEXT_PUBLIC_ Trap in Next.js</a>.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/4-15803d?style=for-the-badge" alt="الخطوة 4"></td>
<td valign="top">
<b>تحقّق من العلم</b><br>
الصق <code>OSS{...}</code> في مدقّق الأعلام، الأداة العائمة في كل صفحة.<br>
<sub>تتبّع <a href="http://localhost:3000/player-dashboard">لوحة تحكم اللاعب</a> ما تبقّى.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/5-15803d?style=for-the-badge" alt="الخطوة 5"></td>
<td valign="top">
<b>اختر التحدي التالي</b><br>
ترتّب <a href="https://koadt.github.io/oss-oopssec-store/roadmap">خريطة الطريق</a> كل تحدٍّ عبر الفصول: الصعوبة، والوقت المقدّر، والمتطلبات المسبقة.<br>
<sub>خُذ البطاقة التالية، ثم عُد إلى الخطوة 2. ↻</sub>
</td>
</tr>
</table>

> [!TIP]
> هل التقطت كل الأعلام؟ [انضم إلى قاعة المشاهير](#hall-of-fame)، وضع نجمة على المستودع، وانشر مسارك في [اعرض حلّك](https://github.com/kOaDT/oss-oopssec-store/discussions/categories/show-your-solve).

<sub>جديد على الأمن الهجومي؟ تغلّف غرفة <a href="https://tryhackme.com/jr/oopssecstorethesummeraudit">TryHackMe</a> الأعلام الأولى في سرد موجّه.</sub>

---

## جدول المحتويات

- [الميزات](#features)
- [لماذا OopsSec Store؟](#why-oopssec-store)
- [التثبيت](#installation)
  - [البدء السريع (npm)](#quick-start)
  - [Docker](#docker)
  - [تحديث تثبيت موجود](#updating-an-existing-install)
- [لوحة الشرف](#hall-of-fame)
- [المجتمع](#community)
- [هيكل المشروع](#project-structure)
- [الاختبار](#testing)
- [إخلاء المسؤولية](#disclaimer)
- [المساهمة](#contributing)
- [مجموعة المعلّم](#-using-oopssec-store-in-a-course-or-ctf)
- [إحصاءات المشروع](#project-stats)

---

> [!WARNING]
> يحتوي هذا التطبيق على ثغرات أمنية متعمّدة ويجب ألا يُنشر أبدًا في بيئة إنتاج.

## الميزات

- تطبيق تجارة إلكترونية معرّض للثغرات بشكل متعمّد (XSS، CSRF، IDOR، هجمات JWT، اجتياز المسار، حقن SQL، وغيرها)
- مبني باستخدام Next.js (App Router) وReact وTypeScript وPrisma وSQLite
- واجهة REST API مع نواقل هجوم موثّقة
- 36 تحديًا من تحديات CTF موزّعة على 11 فصلًا، منظّمة كـ[خارطة طريق تعلّم](https://koadt.github.io/oss-oopssec-store/roadmap) منظمة
- توثيق الثغرات وأدلة مجتمعية لكل تحدي
- [غرفة TryHackMe](https://tryhackme.com/jr/oopssecstorethesummeraudit) موجّهة: _The Summer Audit_، 8 مهام و7 أعلام، كنقطة انطلاق سردية للقادمين الجدد
- اختبارات آلية تتحقق من أن الاستغلالات لا تزال تعمل (طلبات السحب التي تُصلح ثغرة عن غير قصد ستفشل في CI)

## لماذا OopsSec Store؟

تغيّر الأطر الحديثة مكان ظهور الثغرات الأمنية وكيف ينبغي إصلاحها. تضع OopsSec Store فئات الثغرات الكلاسيكية في حزمة تقنية يستخدمها كثير من المطورين اليوم: Next.js App Router وReact وTypeScript وPrisma.

تُدخل المكوّنات المُصيَّرة على الخادم والوسائط البرمجية (middleware) وأدوات ORM حدود ثقة وأنماط فشل مختلفة. كما تعيد عدة تحديات إنتاج CVEs منشورة ضد هذه الحزمة التقنية.

يغطي المنهج أيضًا سطح الهجوم الذي ظهر مع التطوير بمساعدة الذكاء الاصطناعي: حقن الأوامر (prompt injection) ضد وكيل دعم العملاء، وتسميم أدوات MCP، وملف قواعد لوكيل برمجة يحتوي على باب خلفي، وسلسلة typosquat على npm محاكاة من البداية إلى النهاية.

|                                                | OopsSec Store                                           | Juice Shop                                                       | DVWA                      |
| ---------------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------------------- | ------------------------- |
| Stack                                          | Next.js · React · TypeScript · Prisma                   | Node.js · Express · Angular                                      | PHP · MySQL               |
| Setup                                          | `npx create-oss-store` (< 1 min) / Docker               | Docker / npm                                                     | Docker / manual LAMP      |
| CTF flags                                      | ✅ Built in (static flags)                              | ✅ Opt-in, per-instance flags (`CTF_KEY`); CTFd/RootTheBox/FBCTF | ❌                        |
| Guided learning roadmap                        | ✅ 1 roadmap, 11 chapters, 36 flags                     | ❌ Score board only                                              | Partial (security levels) |
| Walkthrough for every challenge                | ✅                                                      | ✅ Companion guide                                               | Partial (hints)           |
| LLM prompt injection                           | ✅ Plug in a free API key                               | ✅ v20+, bring & configure your own LLM                          | ❌                        |
| MCP tool poisoning                             | ✅                                                      | ❌                                                               | ❌                        |
| AI coding-agent backdoor (poisoned rules file) | ✅                                                      | ❌                                                               | ❌                        |
| Supply-chain attack chain                      | ✅ Simulated end to end: npm typosquat → rules backdoor | Partial (identification only)                                    | ❌                        |
| Challenges built on real CVEs                  | ✅ Next.js / React framework CVEs                       | Partial (vulnerable npm dependencies)                            | ❌                        |
| Hall of Fame for players                       | ✅                                                      | ❌                                                               | ❌                        |

<sub>آخر تحقق في سبتمبر 2026، مقابل Juice Shop v20 وDVWA 2.x. هل لاحظت عدم دقة؟ [افتح issue](https://github.com/kOaDT/oss-oopssec-store/issues) أو [افتح PR](https://github.com/kOaDT/oss-oopssec-store/pulls).</sub>

## التثبيت

### البدء السريع

```bash
npx create-oss-store my-ctf-lab
cd my-ctf-lab
npm start
```

ثم افتح http://localhost:3000 في متصفحك.

### الإعداد اليدوي

استنسخ المستودع وشغّل سكربت الإعداد:

```bash
git clone https://github.com/kOaDT/oss-oopssec-store.git
cd oss-oopssec-store
npm run setup
```

يُنشئ هذا ملف `.env`، ويثبّت التبعيات، ويُهيّئ قاعدة بيانات SQLite، ويزرعها بأعلام CTF، ويشغّل التطبيق على المنفذ 3000.

### Docker

لا حاجة إلى Node.js. فقط [Docker](https://docs.docker.com/get-docker/).

> يُبقي `127.0.0.1:3000:3000` المختبر متاحًا فقط من جهازك. استخدم `-p 3000:3000` العادي فقط على جهاز افتراضي معزول تتحكم به.

#### من Docker Hub (الأسرع)

```bash
docker run -p 127.0.0.1:3000:3000 leogra/oss-oopssec-store
```

لحفظ البيانات عبر عمليات إعادة التشغيل:

```bash
docker run -p 127.0.0.1:3000:3000 -v oss-data:/app/data leogra/oss-oopssec-store
```

#### من المصدر (Docker Compose)

```bash
git clone https://github.com/kOaDT/oss-oopssec-store.git
cd oss-oopssec-store
docker compose up -d      # Start in background (builds the image on first run)
docker compose logs -f    # Follow container logs
docker compose down       # Stop the container
docker compose down -v    # Stop and wipe data for a fresh start
```

مع تثبيت npm، تكون الأوامر الأربعة نفسها هي `npm run docker:up` و`docker:logs` و`docker:down` و`docker:reset`.

تُهيَّأ قاعدة البيانات عند أول تشغيل. تبقى البيانات محفوظة عبر عمليات إعادة التشغيل بفضل أحجام Docker المسماة (named volumes)، بما في ذلك تقدّم الأعلام والمستخدمون وعمليات الرفع.

### تحديث تثبيت قائم

عادةً ما يجلب الإصدار الجديد تحديات جديدة، ومعها جداول وصفوف لم تشهدها قاعدة بياناتك من قبل. راجع [سجل التغييرات](https://github.com/koadt/oss-oopssec-store/blob/main/CHANGELOG.md) بحثًا عن التغييرات الكاسرة، ثم حدّث دون البدء من جديد:

```bash
npm run db:upgrade             # local clone
docker compose up -d --build   # Docker: the entrypoint upgrades on start
```

يعيد هذا إنشاء العميل، ويدفع المخطط (schema)، ثم يعيد تطبيق الصفوف التي يحتاجها كل تثبيت — الأعلام والتلميحات وأدوات كشف حقن SQL. تبقى طلباتك والأعلام الملتقطة والمستخدمون والتحميلات دون مساس؛ وتحتفظ الرموز المصدَرة مسبقًا بقيمتها.

ما لا ينتقل هو كتالوج العرض التجريبي: الصفوف المضافة إلى `prisma/seed.ts` لا تصل إلا إلى تثبيت جديد، وإعادة تشغيل البذرة الكاملة ستُعيد إنشاء طلباتك.

يرفض التطبيق بدء التشغيل مقابل قاعدة بيانات متأخرة عن المخطط بإصدار واحد، ويسمّي الأمر الواجب تشغيله. ولمسح كل شيء بدلًا من ذلك والبدء من جديد، استخدم `npm run docker:reset` (Docker) أو `npm run setup` (npm).

## قاعة المشاهير

هل وجدت كل الأعلام؟ افتح طلب سحب للانضمام إلى [قاعة المشاهير](https://github.com/koadt/oss-oopssec-store/blob/main/hall-of-fame/data.json). أضف مدخلتك إلى `hall-of-fame/data.json` وسيظهر ملفك الشخصي على صفحة `/hall-of-fame` في التطبيق.

بمجرد دمج مدخلتك، تُنشأ لك شارة وتُقدَّم من موقع التوثيق:

[![OopsSec Store Hall of Fame](https://koadt.github.io/oss-oopssec-store/badges/koadt.svg)](https://github.com/kOaDT/oss-oopssec-store#hall-of-fame)

```markdown
[![OopsSec Store Hall of Fame](https://koadt.github.io/oss-oopssec-store/badges/%3Cyour-username%3E.svg)](https://github.com/kOaDT/oss-oopssec-store#hall-of-fame)
```

توجد بطاقة اجتماعية بمقاس 1200x630 في المسار نفسه بامتداد `.png`.

[![OopsSec Store Hall of Fame](https://assets.kitploit.com/production/public/readmes/12463/0e87adf89481064ecf790a25aacedb70507511c62f6981788e470c1c9feeb330/bc3987368c521a29b3bbbc429ccb6f10e68f2c0404e1d94c51760ed75417830b-display-v1.webp)](https://github.com/kOaDT/oss-oopssec-store#hall-of-fame)

```markdown
[![OopsSec Store Hall of Fame](https://koadt.github.io/oss-oopssec-store/badges/%3Cyour-username%3E.png)](https://github.com/kOaDT/oss-oopssec-store#hall-of-fame)
```

كلاهما جاهز للنسخ واللصق من بطاقتك على صفحة `/hall-of-fame`، بصيغة Markdown أو HTML أو كرابط مباشر.

## المجتمع

الأسئلة والحلول والملاحظات تجدها في [Discussions](https://github.com/kOaDT/oss-oopssec-store/discussions).

| إلى أين تذهب                                                                                                          | لأي غرض                                                |
| --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| [🧩 عالق في تحدٍّ](https://github.com/kOaDT/oss-oopssec-store/discussions/new?category=stuck-on-a-challenge)   | الاستغلال لا يعمل، أو العلم لا يُتحقق منه |
| [🛠️ الإعداد والتثبيت](https://github.com/kOaDT/oss-oopssec-store/discussions/new?category=setup-and-install)         | مشكلات Docker أو npm أو Node في تشغيل المختبر       |
| [🏆 اعرض حلك](https://github.com/kOaDT/oss-oopssec-store/discussions/new?category=show-your-solve)             | مسار إلى العلم لا يغطيه الدليل التفصيلي    |
| [💡 أفكار التحديات](https://github.com/kOaDT/oss-oopssec-store/discussions/new?category=challenge-ideas)             | فئة ثغرة تستحق الإضافة إلى المنهج  |
| [🎓 التدريس باستخدام OopsSec](https://github.com/kOaDT/oss-oopssec-store/discussions/new?category=teaching-with-oopssec) | تشغيل المختبر مع صف دراسي أو معسكر تدريبي أو فريق    |
| [Issues](https://github.com/kOaDT/oss-oopssec-store/issues)                                                           | الأخطاء في المختبر نفسه، وهذه فقط                |

## بنية المشروع

| المجلد                     | الوصف                                                                                        |
| -------------------------- | -------------------------------------------------------------------------------------------------- |
| `app/`                     | Next.js App Router: الصفحات ومسارات API ومكوّنات React                                            |
| `app/api/`                 | نقاط نهاية REST API (المصادقة، السلة، الطلبات، المنتجات، الأعلام، إلخ)                                     |
| `app/components/`          | مكوّنات واجهة React (Header وFooter وProductCard وإلخ)                                            |
| `app/vulnerabilities/`     | صفحات توثّق كل ثغرة                                                               |
| `content/vulnerabilities/` | أوصاف Markdown للثغرات ونواقل الهجوم                                        |
| `lib/`                     | أدوات مساعدة مشتركة: عميل قاعدة البيانات، المصادقة، مساعدات API، الأنواع                                              |
| `prisma/`                  | مخطط قاعدة البيانات، وسكربت التهيئة، و`flags.ts`: أعلام CTF وتلميحاتها                        |
| `public/`                  | الأصول الثابتة وحمولات الاستغلال (مثل عرض CSRF التوضيحي)                                               |
| `hooks/`                   | خطافات React المخصصة (المصادقة، إلخ)                                                          |
| `scripts/`                 | سكربتات الإعداد والأتمتة                                                                       |
| `docs/`                    | موقع توثيق ثابت يتضمن أدلة تفصيلية من المجتمع                                                       |
| `hall-of-fame/`            | ملفات تعريف اللاعبين الذين وجدوا جميع الأعلام                                                      |
| `packages/`                | حزمة NPM ‏`create-oss-store` للتهيئة (ومخرجات الحجر الصحي للمختبر مثل `react-toastfy`) |
| `lab/quarantine/`          | حمولات خبيثة خاملة لتحديات سلسلة التوريد (تعامل معها كبيانات، وليس كتعليمات)        |
| `tests/`                   | اختبارات Jest للوحدات وAPI التي تتحقق من الاستغلالات                                                     |
| `cypress/`                 | اختبارات E2E لسير عمل الاستغلال الكامل                                                          |

## الاختبار

يتضمن المشروع اختبارات انحدار أمني تتحقق من أن جميع سلاسل الاستغلال والأعلام لا تزال تعمل. تتحقق هذه الاختبارات عمدًا من السلوك غير الآمن. تُشغَّل عند كل طلب سحب (PR)، لذا إذا قمت بترقيع ثغرة أمنية عن غير قصد، فستكتشفها CI.

### تشغيل الاختبارات

```bash
# Unit tests (utility functions: MD5 hashing, JWT, input filters)
npm run test:unit

# API exploitation tests (requires a running server)
npm run test:api

# E2E exploitation tests (requires a running server)
npm run test:e2e

# Open Cypress interactive mode
npm run test:e2e:open

# All tests
npm run test:ci
```

## إخلاء المسؤولية

> [!CAUTION]
> هذا المشروع مخصص للاختبار الأمني التعليمي والمصرّح به فقط.
> يحتوي على ثغرات أمنية مقصودة وإعدادات غير آمنة. المؤلفون غير مسؤولين عن أي إساءة استخدام أو ضرر أو وصول غير مصرّح به. استخدمه في بيئات معزولة.

## المساهمة

OSS – OopsSec Store مرخّص بموجب MIT. المساهمات مرحّب بها.

طرق المساهمة:

- إضافة تحديات أمنية جديدة
- كتابة أو تحسين الأدلة الإرشادية
- توسيع التطبيق
- الإبلاغ عن الأخطاء وإصلاحها
- تحسين التوثيق

راجع [خارطة الطريق](https://github.com/users/kOaDT/projects/3) للأعمال المخطط لها، أو اختر [good first issue](https://github.com/users/kOaDT/projects/3/views/6).

هل وجدت جميع الأعلام (flags)؟ شارك أدلتك الإرشادية على [موقع التوثيق](https://koadt.github.io/oss-oopssec-store).

للإبلاغ عن الأخطاء أو تقديم الاقتراحات، افتح [GitHub Issue](https://github.com/kOaDT/oss-oopssec-store/issues). راجع [CONTRIBUTING.md](https://github.com/koadt/oss-oopssec-store/blob/main/CONTRIBUTING.md) للإرشادات.

## 🎓 هل تستخدم OopsSec Store في دورة تدريبية أو CTF؟

اطّلع على [Educator Kit](https://github.com/koadt/oss-oopssec-store/blob/main/EDUCATORS.md) - دليل جاهز للاستخدام يتضمن شبكات تغطية OWASP، وقوالب المناهج الدراسية، والأسئلة الشائعة حول النشر، وقالب تقرير الطالب. هل تبني أدواتك الخاصة حول المنهج؟ يُنشر كل شيء كتغذية قابلة للقراءة آليًا على [`challenges.json`](https://koadt.github.io/oss-oopssec-store/challenges.json)، ويُعاد إنشاؤها عند كل نشر للتوثيق.

## إحصاءات المشروع

<div align="center">

[![OopsSec Store project stats](https://koadt.github.io/oss-oopssec-store/stats.svg)](https://koadt.github.io/oss-oopssec-store/roadmap)

<sub>مُستخرجة من المنهج نفسه ومن GitHub API، وتُحدَّث يوميًا. هل تريد صورتك الرمزية في ذلك الصف؟ اختر <a href="https://github.com/users/kOaDT/projects/3/views/6">good first issue</a>.</sub>

</div>

---

<div align="center">

المؤلف: [kOaDT](https://github.com/kOaDT)  
المشروع: [OopsSec Store](https://github.com/kOaDT/oss-oopssec-store)  
التواصل: [email protected]

الترخيص: [MIT](https://github.com/kOaDT/oss-oopssec-store/blob/main/LICENSE)

لا تحذف أو تعدّل ملف LICENSE في نسختك المتفرعة.

</div>
تنزيل الأداة