स्कैनर इस सवाल का जवाब देता है कि «इस कोड में क्या ग़लत है»। लॉन्च से पहले आप जो सवाल पूछते हैं वह अलग है: इनमें से हमलावर सचमुच किसे इस्तेमाल कर सकता है? यह टूल स्कैन से निकली फ़ाइंडिंग्स लेकर उन्हें एक चलते हुए रास्ते में पिरोने की कोशिश करता है — और जो भी रास्ता बनाता है, उसके लिए बताता है कि कितना सिद्ध है और कितना अनुमान।
नीचे की संख्याएँ सिमुलेटर की अपनी पैटर्न-तालिका से, इस पेज के बनते समय मापी जाती हैं। अगर कोई परिवार ख़ाली हो जाता, तो पेज उसका प्रचार जारी रखने के बजाय बनते समय ही ग़लती दे देता।
अधिकार देने वाला फ़ंक्शन यह जाँचना ही भूल जाए कि बुलाने वाला कौन है। सबसे आम परिवार और सबसे सस्ते में बंद होने वाला।
कॉन्ट्रैक्ट आपने जो लिया उसे बहीखाते में दर्ज करना पूरा करे उससे पहले ही भीतर दोबारा घुस जाना।
ऐसे हमले जिनमें पूँजी चाहिए ही नहीं: पूँजी एक ही ट्रांज़ैक्शन के भीतर उधार ली और चुका दी जाती है।
कॉन्ट्रैक्ट किसी चीज़ का मूल्य किसी और से पूछता है, और वह जवाब चुना जा सकने लायक़ बन जाता है।
जिस बाज़ार से कॉन्ट्रैक्ट क़ीमत लेता है उसे हिला देना, या क़ीमत हिलाने वाले के आगे और पीछे लेन-देन कर लेना।
जिस हस्ताक्षर को एक ही बार चलना था वह कई बार चल जाए, कई नेटवर्कों पर चल जाए या कई कामों के लिए चल जाए।
पते के पीछे का कोड वह कोड नहीं है जिसका ऑडिट हुआ था। रिपोर्ट की हर फ़ाइंडिंग अब उस कोड के बारे में थी जो वहाँ रहा ही नहीं।
आम बुलाने वाले से मालिक तक, और मालिक से मालिक-से-भी-ज़्यादा तक जाने वाला रास्ता।
हर पंक्ति सही है, पर वे मिलकर जो नियम बनाती हैं वह ग़लत है। यहीं स्टैटिक विश्लेषण सबसे कमज़ोर और इंसान सबसे मज़बूत होता है।
कुछ भी टूटा हुआ नहीं है। प्रोत्साहन हमलावर को आपसे ज़्यादा चुका रहे हैं।
टूल स्वयं (स्कैनर, कंट्रोल पैनल, SAFI वर्कस्पेस) फ़िलहाल अंग्रेज़ी इंटरफ़ेस में चलते हैं। ये पेज वहाँ जाने से पहले हर चीज़ हिन्दी में समझाते हैं।
तीन क़दम: स्कैन आपके ब्राउज़र में, सिर्फ़ फ़ाइंडिंग्स का भेजा जाना, और हर कड़ी के लिए साफ़-साफ़ लिखा हुआ प्रमाण-स्तर।
सोर्स कोड या तो वह पाठ है जो आपने पेस्ट किया, या एक्सप्लोरर से पढ़ा गया वेरिफ़ाइड कोड; विश्लेषण इसी ब्राउज़र में चलता है। कोई ट्रांज़ैक्शन न बनाया जाता है, न उस पर हस्ताक्षर होते हैं, न वह भेजा जाता है।
फिर भी पेज आपसे यह पुष्टि माँगता है कि आप अधिकृत हैं। यह ख़ाना अकेले में कुछ सिद्ध नहीं करता — पर यह इरादे को रिकॉर्ड कर देता है, और किसी अजनबी के कॉन्ट्रैक्ट पर माँगने भर से हमले का नक़्शा खींच देने वाले टूल और इस टूल के बीच फ़र्क़ ठीक यही है।
201 डिटेक्टरों वाला इंजन आपके ब्राउज़र में चलता है और आपका सोर्स वहाँ से बाहर नहीं जाता। शृंखलाएँ बनाने के लिए सर्वर तक सिर्फ़ वह ढाँचा जाता है जो स्कैन ने बनाया: डिटेक्टर आईडी, फ़ंक्शन तालिका और एक्सेस कंट्रोल के झंडे।
इसे जाँचने के लिए आपको हम पर भरोसा करने की ज़रूरत नहीं — अपने ब्राउज़र का नेटवर्क टैब खोलिए और जाती हुई रिक्वेस्ट का बॉडी देख लीजिए।
यह जानबूझकर लगाई गई छत है, कोई ऐसी कमी नहीं जिसे हटाना हम भूल गए। सोर्स पढ़कर यह कहा जा सकता है कि कोई रास्ता खुला है; यह नहीं कहा जा सकता कि उस रास्ते पर कोई चला भी है।
प्लेबुक की हर शृंखला ख़ुद घोषित करती है कि आपके कोड के ख़िलाफ़ दर्ज होने से पहले कौन-सी शर्तें सही होनी चाहिए। अगर «कॉन्ट्रैक्ट delegatecall करता है» और «लक्ष्य पता बुलाने वाले से प्रभावित हो सकता है» — ये दोनों एक साथ पूरी नहीं होतीं, तो वह शृंखला आपकी रिपोर्ट में जाती ही नहीं।
एक ग़लत «गंभीर» फ़ाइंडिंग उससे ज़्यादा भरोसा गँवा देती है जितना दस सही «मध्यम» फ़ाइंडिंग कमाती हैं। उत्पाद की सेटिंग इसी वाक्य के हिसाब से की गई है।
कॉन्ट्रैक्ट का पता पेस्ट करें; जोखिम में पड़ने से पहले मालिक की शक्तियाँ, लिक्विडिटी और बिक्री-सिमुलेशन का नतीजा देखें। प्रति स्कैन एक छोटा शुल्क हस्ताक्षर से पहले दिखाया जाता है — और किसी भी सदस्यता में यह असीमित रूप से शामिल है।