
django भेद्यता:CVE-2020-7471 StringAgg(delimiter) के माध्यम से संभावित SQL इंजेक्शन का भेद्यता वातावरण और POC
यह रिपॉजिटरी CVE-2020-7471 Potential SQL injection via StringAgg(delimiter) कमजोरी का वातावरण और POC प्रदान करती है।
Django का कमजोर संस्करण स्थापित करें, मैंने परीक्षण के लिए उपयोग किया:
pip install django==3.0.2 -i https://pypi.tuna.tsinghua.edu.cn/simple
PostgreSQL डेटाबेस इंस्टॉल करने के लिए https://www.runoob.com/postgresql/windows-install-postgresql.html देखें
नया डेटाबेस बनाएँ
CREATE DATABASE test;
sqlvul_projects/settings.py में डेटाबेस कॉन्फ़िगरेशन बदलें। यदि पिछले चरण में आपने डिफ़ॉल्ट कॉन्फ़िगरेशन (पासवर्ड postgres सेट करना शामिल है) का उपयोग किया है, तो आपको कोई बदलाव करने की आवश्यकता नहीं है और आप इस चरण को छोड़ सकते हैं।
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'test', # 数据库名称
'USER': 'postgres',
'PASSWORD': 'postgres', # 数据库用户密码
'HOST': '127.0.0.1', # 数据库地址
'PORT': '5432',
}
}
Django के माध्यम से डेटा तालिकाएँ आरंभ करें
python3 manage.py migrate
python3 manage.py makemigrations vul_app
python3 manage.py migrate vul_app
फिर POC स्क्रिप्ट CVE-2020-7471.py चलाएँ।