
CVE-2025-11001 (7-zip) का एक स्कैनर और परीक्षक
एक शानदार, इंटरैक्टिव वेब एप्लिकेशन जो 7-Zip अभिलेखागार में महत्वपूर्ण CVE-2023-52169 सिमलिंक ट्रैवर्सल भेद्यता को प्रदर्शित और पहचानने में मदद करता है।
../, ..\\)/, C:\\)रिपॉजिटरी क्लोन करें
git clone <repository-url>
cd Se7enSlip
निर्भरताएँ स्थापित करें
npm install
विकास सर्वर प्रारंभ करें
npm start
अपना ब्राउज़र खोलें
http://localhost:3000 पर नेविगेट करें
# ऑटो-रिलोड के साथ विकास
npm run dev
# एक परीक्षण भेद्य ZIP फ़ाइल बनाएं
npm run create-test-zip
# उत्पादन निर्माण
npm run build
यह भेद्यता हमलावरों को दुर्भावनापूर्ण ZIP अभिलेखागार बनाने की अनुमति देती है, जो भेद्य 7-Zip संस्करणों द्वारा निकाले जाने पर, इच्छित निष्कर्षण निर्देशिका के बाहर फ़ाइलें लिख सकते हैं। यह निम्न के माध्यम से प्राप्त किया जाता है:
../ अनुक्रमों का उपयोग करना┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ दुर्भावनापूर्ण ZIP │───▶│ भेद्य 7-Zip │───▶│ सिस्टम समझौता │
│ │ │ < v23.01 │ │ │
│ • ../../../etc/ │ │ │ │ • फ़ाइल अधिलेखन │
│ • /tmp/evil.sh │ │ निष्कर्षण पथों को │ │ • कोड निष्पादन │
│ • सिमलिंक │ │ सत्यापित करने में │ │ • विशेषाधिकार वृद्धि│
│ │ │ विफल │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
POST /api/scanभेद्यताओं के लिए ZIP फ़ाइल अपलोड और स्कैन करें।
अनुरोध: zipfile फ़ील्ड के साथ मल्टीपार्ट फॉर्म डेटा
प्रतिक्रिया:
{
"filename": "test.zip",
"totalEntries": 10,
"suspicious": [...],
"riskLevel": "HIGH",
"recommendations": [...],
"metadata": {
"totalSize": 12345,
"suspiciousPatterns": {...}
}
}
GET /api/vulnerability-infoCVE-2023-52169 के बारे में विस्तृत जानकारी प्राप्त करें।
प्रतिक्रिया:
{
"cve": "CVE-2023-52169",
"cvssScore": 7.8,
"downloadUrl": "https://www.7-zip.org/download.html",
"references": [...]
}
POST /api/create-test-zipविभिन्न भेद्यता पैटर्न वाली एक परीक्षण ZIP फ़ाइल उत्पन्न करें।
प्रतिक्रिया: परीक्षण के लिए दुर्भावनापूर्ण प्रविष्टियों के साथ ZIP फ़ाइल डाउनलोड
public/css/
├── styles.css # CSS कस्टम गुणों के साथ मुख्य स्टाइलशीट
├── animations/ # एनिमेशन कीफ्रेम और संक्रमण
├── components/ # घटक-विशिष्ट स्टाइल
└── responsive/ # मीडिया क्वेरी और रिस्पॉन्सिव डिज़ाइन
:root {
--primary: #00ff88; /* नियॉन हरा */
--secondary: #ff4757; /* खतरा लाल */
--accent: #3742fa; /* इलेक्ट्रिक नीला */
--bg-primary: #0a0a0a; /* गहरा काला */
--text-primary: #ffffff; /* शुद्ध सफेद */
}
PORT=3000 # सर्वर पोर्ट
NODE_ENV=production # पर्यावरण मोड
UPLOAD_LIMIT=52428800 # फ़ाइल आकार सीमा (50MB)
RATE_LIMIT_WINDOW=900000 # रेट लिमिटिंग विंडो (15 मिनट)
RATE_LIMIT_MAX=50 # प्रति विंडो अधिकतम अनुरोध
एप्लिकेशन में कई सुरक्षा परतें शामिल हैं:
// सामग्री सुरक्षा नीति
helmet({
contentSecurityPolicy: {
directives: {
defaultSrc: ["'self'"],
styleSrc: ["'self'", "'unsafe-inline'"],
// ... अतिरिक्त निर्देश
}
}
})
# भेद्यताओं के साथ एक परीक्षण ZIP बनाएं
npm run create-test-zip
# उत्पन्न फ़ाइल में शामिल होगा:
# - पाथ ट्रैवर्सल प्रविष्टियाँ (../)
# - निरपेक्ष पथ (/tmp/, C:\)
# - सिमलिंक प्रविष्टियाँ
# - लंबे पथ नाम
# - निष्पादन योग्य फ़ाइलें
NODE_ENV=production सेट करेंFROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
version: '3.8'
services:
se7enslip:
build: .
ports:
- "3000:3000"
environment:
- NODE_ENV=production
volumes:
- ./uploads:/app/uploads