मेनू

Star on GitHub · 3.2k

एजेंटिक पेनटेस्टिंग

एक AI एजेंट टेस्टर की कुर्सी संभालता है: किसी इंसान की तरह लक्ष्य पर योजना बनाता, जाँचता और ढलता है, फिर सत्यापित निष्कर्षों की एक छोटी सूची किसी व्यक्ति को सौंपता है। यह व्यवहार में क्या मायने रखता है, कैसे काम करता है, और लूप में कहाँ अब भी इंसान चाहिए — यहाँ देखें।

यह क्या है

एजेंट एक ऐसा प्रोग्राम है जो किसी तयशुदा स्क्रिप्ट को चलाने के बजाय लक्ष्य की ओर तर्क करता है। इसे एक लक्ष्य और उद्देश्य दें — “यहाँ हमलावर असल में किस तक पहुँच सकता है, वह खोजो” — और यह पहले से देखे के आधार पर तय करता है कि आगे क्या आज़माना है: सतह का नक्शा बनाना, परिकल्पना गढ़ना, परखना, प्रतिक्रिया पढ़ना, सुधारना, आगे बढ़ना। एजेंटिक पेनटेस्टिंग वही लूप है, जो आक्रामक सुरक्षा की ओर मोड़ा गया है।

यह तर्क करता है, स्क्रिप्ट नहीं चलाता: तयशुदा सेट नहीं, लक्ष्य की ओर तर्क

यह आज इस्तेमाल होने वाली दो चीज़ों के बीच बैठता है। स्कैनर जाँचों का एक तयशुदा समूह चलाता है और सिग्नेचर से मेल खाने वाली हर चीज़ बताता है — तेज़, पर संदर्भ के प्रति अंधा और झूठे अलार्म से शोरभरा। मानव पेनटेस्टर किसी विशिष्ट ऐप और उसकी व्यापार-तर्क पर सोचता है — धीमा, महँगा, और एक सप्ताह का स्नैपशॉट। एजेंट स्कैनर जैसी पहुँच के साथ पेनटेस्टर जैसा तर्क लक्ष्य करता है, और निर्णय वाले फ़ैसले इंसान पर छोड़ता है।

आक्रामक सुरक्षा क्यों ठहर गई

सुरक्षा का अधिकांश आधुनिक हुआ — सतत एकीकरण, क्लाउड, स्वचालित बचाव। आक्रामक सुरक्षा काफ़ी हद तक नहीं। यह अब भी मुख्यतः हाथ से, एक सेवा के रूप में दी जाती है, और तीन समस्याएँ ढोती है जो कभी नहीं गईं:

  • समय-बिंदु। पेनटेस्ट ऐप को उस सप्ताह जैसा बताता है जब परीक्षण हुआ। अगली तैनाती रिपोर्ट को बेकार कर सकती है।
  • पैमाने पर मुश्किल। अच्छे टेस्टर दुर्लभ और महँगे हैं, इसलिए गहराई राशन की जाती है। कई काम जूनियर या आउटसोर्स पर टिके रहते हैं और गुणवत्ता नहीं, निष्कर्षों की संख्या अनुकूलित करते हैं।
  • सुरक्षा से ऊपर अनुपालन। परीक्षण अक्सर सिस्टम को सचमुच तोड़ने की कोशिश नहीं, बल्कि ऑडिट के लिए एक टिक-बॉक्स बन जाता है।

अब तक स्वचालन की सीमाएँ

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

यह वही दीवार है जिससे पुरानी DAST श्रेणी टकराई: वह किसी पैटर्न को चिह्नित तो कर सकती थी, पर यह तर्क नहीं कर सकती थी कि वह यहाँ मायने रखता है या नहीं, और आगे क्या करना है। इसलिए टीमें मानव परीक्षण के लिए भुगतान करती रहीं — इसलिए नहीं कि औज़ार चले नहीं, बल्कि इसलिए कि वे सोच नहीं पाए।

एजेंट क्या बदलता है

भाषा मॉडलों ने लापता टुकड़े को व्यावहारिक बनाया: एक ऐसी प्रणाली जो किसी ऐप का संदर्भ थाम सके और उसी अनुसार परीक्षण ढाल सके। सावधानी से इस्तेमाल करने पर यह तीन ऐसी चीज़ों को, जो पहले आपस में टकराती थीं, एक साथ पाई जा सकने वाली विशेषताओं में बदल देता है:

  • सालाना नहीं, सतत। परीक्षण हर बदलाव पर चल सकता है, इसलिए नतीजा पिछली तिमाही के संस्करण का वर्णन करने के बजाय ऐप का अनुसरण करता है।
  • सिग्नेचर-मिलान नहीं, संदर्भ-सजग। एजेंट ऐप के असली व्यवहार से शुरू करता है: कौन-से ऑब्जेक्ट हैं, कौन-सी भूमिकाएँ उन तक पहुँचती हैं, कोई कॉल किसलिए है।
  • बैकलॉग नहीं, एक छोटी सत्यापित सूची। आउटपुट वही मुट्ठीभर सचमुच शोषण-योग्य समस्याएँ होनी चाहिए, पुनरुत्पादन के चरणों के साथ — न कि हज़ारों बिना छाँटे “संभावित” निष्कर्ष।

यह कैसे काम करता है

इसे भरोसेमंद बनाने वाली बात ठीक यही है कि मॉडल को स्वतंत्र रूप से सुधारबाज़ी करने न दी जाए। CyberStrike में एजेंट एक नियतात्मक (डिटर्मिनिस्टिक) इंजन के ऊपर तर्क करता है, जो वह काम करता है जिसमें मॉडल कमज़ोर है: यह हर अनुरोध और प्रतिक्रिया लेता है, सैकड़ों नियम चलाता है, एक पहचान-पार नक्शा बनाता है कि किन भूमिकाओं ने किन ऑब्जेक्ट और फ़ंक्शन तक पहुँच बनाई, इंजेक्शन बिंदु जाँचता है, और सख़्त सुरक्षा सीमाओं में अनुरोध दोबारा भेजता है। यह इंजन ज़मीनी सच्चाई देता है।

एजेंट का काम यह तय करना है कि किसका पीछा करें — कौन-से सुराग शोषण-योग्य दिखते हैं, आगे कौन-सी शृंखला आज़मानी है — और क्यों, यह बताना। प्रमाण मॉडल की कल्पना से नहीं, इंजन से आते हैं; इसलिए कोई निष्कर्ष असली ट्रैफ़िक पर टिका होता है जिसे कोई व्यक्ति दोबारा चला सके। निर्णय एजेंट का है; तथ्य नियतात्मक हैं।

एजेंट अब भी क्या नहीं कर सकते

यहाँ उत्साह से अधिक ईमानदारी मायने रखती है। तकनीक पूरी नहीं हुई है, और जो इसके विपरीत कहता है वह कुछ बेच रहा है:

  • मॉडल मतिभ्रम करते हैं। भाषा मॉडल कभी-कभी ऐसी कमज़ोरी का दावा कर देता है जो है ही नहीं। इसीलिए निष्कर्षों को पुनरुत्पादन-योग्य प्रमाण से बाँधा जाना चाहिए, और एक आत्मविश्वासी ब्यौरा किसी असली बग के समान नहीं है।
  • आउटपुट नियतात्मक नहीं है। वही प्रॉम्प्ट दो बार चलाएँ तो अलग रास्ते मिल सकते हैं। पुनरुत्पादनीयता इंजन और रिकॉर्ड किए गए ट्रैफ़िक से आनी चाहिए, न कि मॉडल के ख़ुद से सहमत होने से।
  • सुरक्षा और प्राधिकरण इंसानी फ़ैसले हैं। दायरा, नियम-सगाई, और “क्या यह अनुरोध प्रोडक्शन पर भेजना सुरक्षित है” — ये किसी स्वायत्त प्रक्रिया को सौंपने वाली बातें नहीं हैं।
एजेंट जाँचता है, इंसान तय करता है: पूर्ण स्वायत्तता नहीं, human-on-the-loop

इसलिए यथार्थवादी मॉडल है human-on-the-loop: एजेंट विस्तार और श्रमसाध्य काम करता है, और एक व्यक्ति निष्कर्षों को सत्यापित करता है, जोखिम वाले फ़ैसलों का स्वामी बनता है और रिपोर्ट के पीछे खड़ा रहता है। यही जोड़ी — पूर्ण स्वायत्तता नहीं — आज डिलीवर करने योग्य है।

इसकी जगह

एजेंटिक पेनटेस्टिंग न मानव टेस्टरों को और न ऑडिट की मंज़ूरी को सेवानिवृत्त करती है। यह बदलती है कि इंसान समय किस पर लगाता है: हर तिमाही वही सतह दोबारा खोजने में कम, असली निष्कर्ष सत्यापित करने और जवाबदेही वाले फ़ैसले लेने में ज़्यादा। परीक्षण सतत हो जाता है; व्यक्ति क्रॉलर के बजाय समीक्षक बन जाता है।

यही पूरा दावा है, और यह जानबूझकर विनम्र है। आक्रामक सुरक्षा हमेशा असली जोखिम समझने का सबसे सीधा तरीका रही है। बस वह इतनी धीमी और दुर्लभ थी कि हर जगह इस्तेमाल न हो सके। उस अंतर को घटाना — और साथ ही स्पष्ट रहना कि कहाँ अब भी इंसान चाहिए — यही इस तकनीक का उपयोगी रूप है।

CyberStrike एक AI-संवर्धित पेनिट्रेशन टेस्टिंग प्लेटफ़ॉर्म है, फ़िलहाल अर्ली एक्सेस में। इसके पीछे का एजेंट और इंजन देखना चाहेंगे? प्लेटफ़ॉर्म देखें या प्रतीक्षा-सूची में जुड़ें।

यह कैसे चलता है, और गहराई से देखें?