
Next.js और भ्रष्ट मिडलवेयर...इसे हैक करने की कोशिश करें..!
यह एक नमूना Next.js प्रोजेक्ट है जिसे [create-next-app] (https://nextjs.org/docs/app/api-reference/cli/create-next-app) का उपयोग करके बनाया गया है, जो व्यावहारिक रूप से समझाने के लिए है कि cve-2025-29927 कैसे काम करता है।
सबसे पहले, डेवलपमेंट सर्वर चलाएँ:
npm run dev
# या
yarn dev
# या
pnpm dev
# या
bun dev
अपने ब्राउज़र से http://localhost:3000 खोलें और परिणाम देखें।
अब आप Burp या अन्य ब्राउज़र एक्सटेंशन का उपयोग करके हेडर को संशोधित कर सकते हैं और पेलोड का उपयोग करके मिडलवेयर का शोषण कर सकते हैं।

जब कोई next.js एप्लिकेशन मिडलवेयर का उपयोग करता है, तो runMiddleware फ़ंक्शन का उपयोग किया जाता है, यह - अपने मुख्य उपयोगिता के अलावा - x-middleware-subrequest हेडर का मान प्राप्त करता है और इसका उपयोग यह जानने के लिए करता है कि मिडलवेयर लागू किया जाना चाहिए या नहीं। हेडर मान को कॉलम कैरेक्टर (:) का उपयोग करके एक सूची बनाने के लिए विभाजित किया जाता है और फिर जाँच की जाती है कि इस सूची में middlewareInfo.name मान शामिल है या नहीं।
इसका मतलब यह है कि यदि हम अपने अनुरोध में सही मान के साथ x-middleware-subrequest हेडर जोड़ते हैं, तो मिडलवेयर - चाहे इसका उद्देश्य कुछ भी हो - पूरी तरह से अनदेखा कर दिया जाएगा, और अनुरोध को NextResponse.next() के माध्यम से अग्रेषित किया जाएगा और बिना किसी प्रभाव/प्रभाव के अपने मूल गंतव्य तक अपनी यात्रा पूरी करेगा। हेडर और इसका मान एक सार्वभौमिक कुंजी के रूप में कार्य करते हैं जो नियमों को ओवरराइड करने की अनुमति देता है। इस बिंदु पर हम पहले से ही जानते हैं कि हमने अभी कुछ पागलपन भरा खोज निकाला है।
Uploading next-middleware-2.png…
ध्यान दें कि हम यहाँ "next": "14.0.4" का उपयोग कर रहे हैं।