
सुरक्षित विकास सीखने के लिए असुरक्षित Python एप्लिकेशन
Vulpy एक वेब अनुप्रयोग है जो Python / Flask / SQLite में विकसित किया गया है और इसके दो पहलू हैं।
अच्छा: सुरक्षित विकास की सर्वोत्तम प्रथाओं को ध्यान में रखते हुए कोड करने का प्रयास करता है।
बुरा: (संभवतः) आपकी तरह कोड करने का प्रयास करता है। :p
यह निम्नलिखित पाठ्यक्रमों के लिए प्रयोगशाला के रूप में विकसित किया गया है:
सेक्योरटिया का सुरक्षित विकास (https://www.securetia.com/cursos.html) EducaciónIT का सुरक्षित विकास (https://www.educacionit.com/curso-de-desarrollo-seguro)
लेकिन आप इसे अपनी इच्छानुसार उपयोग कर सकते हैं (MIT लाइसेंस)
"GOOD" संस्करण (अभी पूरा नहीं हुआ) OWASP ASVS का अनुपालन करेगा:
https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project
यह पायथन कोड को सर्वोत्तम सुरक्षा प्रथाओं का पालन करते हुए विकसित करने का तरीका सीखने की अनुमति देगा।
::
git clone https://github.com/fportantier/vulpy
cd vulpy
pip3 install --user -r requirements.txt
"BAD" संस्करण पर मौजूद कुछ कमजोरियाँ:
नोट: "GOOD" संस्करण (अभी पूरा नहीं हुआ) में कमजोरियाँ नहीं होनी चाहिए, लेकिन मैं एक इंसान हूँ, तो...
दोनों, "BAD" और "GOOD" संस्करण, डेटाबेस के आरंभीकरण की आवश्यकता रखते हैं।
यह प्रत्येक निर्देशिका (bad और good) के अंदर स्क्रिप्ट "db_init.py" के साथ किया जाता है।
प्रत्येक संस्करण में उपयोगकर्ताओं और पोस्ट के लिए अपनी स्वयं की sqlite फ़ाइलें हैं।
स्क्रिप्ट का निष्पादन, उदाहरण के लिए:
::
cd bad ./db_init.py
डेटाबेस आरंभीकरण के बाद, तीन उपयोगकर्ता बनाए जाते हैं:
::
Username Password
admin SuperSecret elliot 123123123 tim 12345678
आप किसी भी उपयोगकर्ता से लॉगिन कर सकते हैं, एप्लिकेशन में अनुमति प्रणाली नहीं है, इसलिए तीनों के पास समान अनुमतियाँ हैं।