Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2017-5941 PoC — Joyent Node.js 代码问题漏洞

Source
Associated Vulnerability
Title:Joyent Node.js 代码问题漏洞 (CVE-2017-5941)
Description:Joyent Node.js是美国Joyent公司的一套建立在Google V8 JavaScript引擎之上的网络应用平台。该平台主要用于构建高度可伸缩的应用程序,以及编写能够处理数万条且同时连接到一个物理机的连接代码。 Joyent Node.js中的node-serialize模块的unserialize()函数存在代码问题漏洞,该漏洞源于该函数未对外部调用的代码进行有效检测。远程攻击者可通过将恶意数据传入该函数利用该漏洞执行任意代码。
Description
Exploit Title: Node.JS - 'node-serialize' Remote Code Execution (2), Version: 0.0.4, CVE: CVE-2017-5941
Readme
# node-serialize — CVE-2017-5941

**Eslatma:** Bu hujjat faqat mudofaa va taʼlimiy maqsadlarda. Eksploitlar yoki RCE yaratish bo‘yicha ko‘rsatma mavjud emas.

**Xulosa:** `node-serialize` (0.0.4 va o‘xshash eskirgan versiyalar) noishonlangan deserializatsiya tufayli xavf tug‘dirishi mumkin — kiruvchi maʼlumotni `unserialize()` qilishdan oldin har doim tekshiring.

**Aniqlash:** kodda `serialize.unserialize()` yoki `node-serialize` borligini qidiring. Dekodlangan base64 cookie/parametrlarni `_$$ND_FUNC$$_`, `function(` yoki `eval(` uchun tekshiring.

**Bartaraf etish (tez):**
- `node-serialize` dan voz keching; `JSON.parse`/`JSON.stringify` ishlating.
- Kiruvchi maʼlumotni qatʼiy schema bilan validatsiya qiling (ajv/joi).
- `eval` va dinamik kod ijrosini olib tashlang.
- Node jarayonini kam huquq bilan ishga tushiring va tarmoqli egressni cheklang.

**Sinov (harmless):** faqat benign base64-JSON yuboring (hech qanday funksiyalar yoki shell-komandalar yo‘q) — faqat ruxsat bilan test qiling.

**Kontakt / Qo‘shimcha:** kerak bo‘lsa CI skript, Express middleware yoki incident-playbook qismini tayyorlab beraman.
File Snapshot

[4.0K] /data/pocs/f1ffeacabb214d6106d3d043a9da681b29eaf809 ├── [ 27] exploit.js ├── [ 855] exploit.py └── [1.1K] README.md 1 directory, 3 files
Shenlong Bot has cached this for you
Remarks
    1. It is advised to access via the original source first.
    2. If the original source is unavailable, please email f.jinxu#gmail.com for a local snapshot (replace # with @).
    3. Shenlong has snapshotted the POC code for you. To support long-term maintenance, please consider donating. Thank you for your support.