पहले से कॉन्फ़िगर किए गए CASA के अलावा, स्कैनिंग टूल का इस्तेमाल करना:
ऐसे डेवलपर जिन्हें SAST और DAST स्कैनिंग टूल (इंटरनल तौर पर डेवलप किए गए या कमर्शियल टूल) का इस्तेमाल करना है उन्हें यह जानकारी देनी होगी:
- OWASP बेंचमार्क के हिसाब से स्कैन का आउटपुट. उम्मीद है कि स्कैनिंग टूल, उन सभी कमजोरियों का पता लगा पाएंगे जो सीएएसए के मुताबिक हैं (नीचे दिए गए निर्देश देखें)
- स्कैन करने की नीति. यह टूल के स्कैनिंग कॉन्फ़िगरेशन का एक्सपोर्ट हो सकता है या ऐसा स्क्रीनशॉट हो सकता है जिसमें यह दिखाया गया हो कि टूल ने किन CWEs के लिए स्कैन किया है.
रनिंग बेंचमार्क
बेंचमार्क चलाने के लिए, आपके पास ये इंस्टॉल होने चाहिए:
- GIT: https://git-scm.com/ या https://github.com/
- Maven: https://maven.apache.org/; (वर्शन: 3.2.3 या इसके बाद का वर्शन काम करता है.)
- Java: https://www.oracle.com/java/technologies/javase-downloads.html (Java 7 या 8) (64-बिट)
सीएएसए के लिए, अपने DAST या SAST स्कैनिंग टूल के लिए, बेंचमार्क स्कोरकार्ड जनरेट और सबमिट करना न भूलें. कृपया ध्यान दें कि बेंचमार्क में कई टेस्ट होते हैं और इन्हें स्कैन करने में कुछ समय लग सकता है.
बेंचमार्क ऐप्लिकेशन को डाउनलोड और चलाने के लिए, ये कमांड चलाएं:
$ git clone https://github.com/OWASP-Benchmark/BenchmarkJava $ cd benchmark $ mvn compile $ runBenchmark.sh
मानदंड, https://localhost:8443/benchmark/ पर चलेगा. इसका इस्तेमाल किसी भी DAST स्कैन के लिए टारगेट के तौर पर किया जा सकता है. अब आपके पास, अपनी पसंद के टूल को बेंचमार्क सोर्स कोड और रन टाइम ऐप्लिकेशन के साथ चलाने का विकल्प है. अपने नतीजों को, बेंचमार्क डेटा स्टोर करने की जगह की /results डायरेक्ट्री में सेव करना न भूलें.
स्कोरकार्ड जनरेटर के लिए, अपनी आउटपुट फ़ाइल के नाम में ये शामिल करें:
- बेंचमार्क का वर्शन नंबर, ताकि गलत उम्मीद के मुताबिक आउटपुट को मैप होने से रोका जा सके
- आपके स्कैनिंग टूल का नाम
- आपके स्कैनिंग टूल का वर्शन
यहां दिए गए उदाहरण में, आउटपुट फ़ाइल का नाम, “toolname” के वर्शन 3.0 का इस्तेमाल करके चलाए गए स्कैन से मैप किया गया है. साथ ही, इसकी तुलना बेंचमार्क वर्शन 1.2 से की गई है.
Benchmark_1.2-toolname-v3.0.xml
बेंचमार्क स्कोर तैयार करना
ऐप्लिकेशन को चार मेट्रिक के हिसाब से बेंचमार्क किया जाता है:
- असल पॉज़िटिव – टूल, किसी असली कमजोरी की सही पहचान करता है
- फ़ॉल्स नेगेटिव – टूल किसी असल जोखिम की पहचान नहीं कर पाते
- 'सही नतीजा' – टूल, गलत चेतावनी को सही तरीके से अनदेखा करता है
- गलत नतीजा – टूल, गलत चेतावनी को अनदेखा नहीं कर पाता
बेंचमार्क स्कोरकार्ड से पता चलता है कि आपका स्कैनिंग टूल, इन डाइमेंशन में कैसा परफ़ॉर्म करता है. GitHub से Benchmark टूल डाउनलोड करने पर, इसमें एक BenchmarkScore टूल भी शामिल होता है. इस टूल को स्कैन आउटपुट के हिसाब से चलाने पर, आपके फ़ाइनल स्कोर के बारे में बताने वाला PNG ग्राफ़ जनरेट होगा. नतीजों के उदाहरण यहां देखे जा सकते हैं. अपने मानदंड के स्कोरकार्ड जनरेट करने के लिए, यह कमांड चलाएं:
sh createScorecards.sh
इससे /results डायरेक्ट्री में मौजूद हर आउटपुट के लिए स्कोरकार्ड बन जाएगा. जनरेट किया गया स्कोरकार्ड, /scorecard डायरेक्ट्री में सेव किया जाएगा. सीएएसए आकलन के हिस्से के तौर पर स्कोरकार्ड सबमिट करें.