एक नवीन दृष्टिकोन LLM-चालित (LLM-driven) पेन्टेस्ट एजंटला केवळ उल्लंघन झाल्याचा दावा करण्याऐवजी ते सिद्ध करण्यास भाग पाडतो, ज्यामध्ये 'चॅलेंज-रिस्पॉन्स नॉनसेस' (challenge-response nonces) वापरले जातात जे चुकीचे पॉझिटिव्ह (false positives) काढून टाकतात. HALO फ्रेमवर्कमध्ये प्रदर्शित केलेली ही पद्धत “आम्हाला शेल मिळाल्यासारखे वाटते” याला “आम्हाला खरोखरच शेल मिळाले आहे” मध्ये बदलते.
चुकीचे पॉझिटिव्ह (false-positive) उल्लंघन का महत्त्वाचे आहेत
लार्ज लँग्वेज मॉडेल्सवर आधारित स्वयंचलित एक्सप्लॉइटेशन इंजिन्स एकाच रनमध्ये डझनभर "यशस्वी" पोर्ट कॉम्प्रमाइज (port compromises) देऊ शकतात. अनेक सेवा त्यांच्या बॅनरमध्ये “uid=0” सारख्या स्ट्रिंग्स दाखवतात, आणि एक तयार केलेले टार्गेट अटॅकरचा कोड कधीही कार्यान्वित न करता त्या आउटपुट्सची नक्कल करू शकते. जेव्हा एजंट अशा प्रतिसादांवर विश्वास ठेवतो, तेव्हा त्यानंतरचा प्रत्येक निर्णय—मग तो पिव्होट (pivot) करणे असो, डेटा एक्सफिल्ट्रेट (exfiltrate) करणे असो किंवा लॅटरली मूव्ह (move laterally) करणे असो—तो एका खोट्यावर आधारित असतो. सुरक्षा पथके काल्पनिक प्रवेशांचा (phantom footholds) पाठलाग करण्यात तासनतास वाया घालवतात आणि इन्सिडेंट रिस्पॉन्डर्स वास्तविक धोक्यांना चुकीची प्राथमिकता देऊ शकतात.
दाव्याचे पुराव्यात रूपांतर करणे
हे निराकरण क्लासिक ऑथेंटिकेशन ट्रिक्समधून घेतले आहे. एक्सप्लॉइट सुरू करण्यापूर्वी, अटॅकरची सिस्टम एक युनिक टोकन किंवा 'नॉन्स' (nonce) तयार करते आणि ते पेलोडमध्ये (payload) एम्बेड करते. कंट्रोलरने निकाल खरा उल्लंघन म्हणून स्वीकारण्यासाठी एक्सप्लॉइटने ते नेमके टोकन परत करणे आवश्यक आहे. बनावट बॅनर नॉनसचा अंदाज लावू शकत नाही; प्रतिसादात टोकन एम्बेड करण्यासाठी त्याला अटॅकरचा कोड कार्यान्वित करावाच लागेल. जर परत आलेल्या डेटामध्ये जुळणारा नॉनस नसेल, तर तो प्रयत्न 'फॉल्स पॉझिटिव्ह' म्हणून बाद केला जातो.
हा बदल पडताळणी मॉडेलला “आउटपुट बरोबर वाटते” कडून “आउटपुट अंमलबजावणी सिद्ध करते” कडे वळवतो. यामुळे स्वायत्त ऑफेन्स टूल्सना (autonomous offense tools) ग्रासणाऱ्या 'ऑप्टिमिझम बायस' (optimism bias) मुक्ती मिळते.
एक विश्वसनीय डिलिव्हरी लॅडर (delivery ladder) तयार करणे
पेलोड टार्गेटपर्यंत पोहोचवण्यासाठी अजूनही एका भक्कम डिलिव्हरी चेनची आवश्यकता असते. HALO तीन सामान्य मार्ग वर्गीकृत करते:
- Reverse shells – कॉम्प्रमाइज झालेला होस्ट अटॅकरच्या नियंत्रणाखालील लिसनरला (listener) परत कनेक्शन सुरू करतो. जेव्हा इनबाउंड ट्रॅफिक ब्लॉक केलेले असते तेव्हा हे उपयुक्त ठरते.
- Bind shells – अटॅकर टार्गेटवरील लिसनिंग सर्व्हिसला थेट कनेक्ट होतो. जेव्हा आउटबाउंड फिल्टर्स शिथिल असतात तेव्हा हे काम करते.
- Blind callbacks – एक-मार्गी सिग्नल (उदा. DNS विनंती) जो अत्यंत प्रतिबंधित वातावरणात अंमलबजावणीची पुष्टी करतो, जिथे कोणताही थेट चॅनेल उघडता येत नाही.
या लॅडरमधील प्रत्येक पायरीने नॉनस जतन करणे आवश्यक आहे, अन्यथा पुढील प्रक्रियेत पुराव्याची पायरी अयशस्वी होईल.
सेल्फ-कंटेन्ड (self-contained) एक्सप्लॉइट्स सुनिश्चित करणे
चुकीच्या आत्मविश्वासाचा दुसरा स्रोत म्हणजे बाह्य लायब्ररींवर अवलंबून राहणे, ज्या टार्गेटवर उपलब्ध नसतील. HALO शिपिंगपूर्वी प्रत्येक आवश्यक घटक एका सिंगल फाईलमध्ये बंडल करते. त्यानंतर हे बंडल अशा सँडबॉक्समध्ये (sandbox) टेस्ट केले जाते जिथे मुद्दाम मूळ डिपेंडेंसीज (dependencies) नसतात. जर एक्सप्लॉइट तरीही चालला, तर तो आर्टिफॅक्ट खरोखरच सेल्फ-कंटेन्ड आहे आणि लॉक-डाऊन सिस्टमवर त्यावर विश्वास ठेवता येतो.
डेव्हलपमेंट ट्रेल (development trail) स्वच्छ करणे
सार्वजनिक रिलीजसाठी तयारी करताना, लेखकाला Git हिस्ट्रीमध्ये वास्तविक IP पत्ते असल्याचे आढळले. क्लीन वर्किंग ट्री (clean working tree) ते रेकॉर्ड्स पुसून टाकत नाही; Git प्रत्येक कमिट (commit) जतन करते. लेखकाने रिपॉझिटरी पुन्हा लिहून एक सिंगल क्लीन कमिट केली आणि लीक झालेल्या पत्त्यांच्या जागी RFC 5737 द्वारे परिभाषित केलेले केवळ डॉक्युमेंटेशनसाठी वापरले जाणारे रेंज (उदा. 192.0.2.0/24) वापरले. यामुळे टूल शेअर करताना प्रोडक्शन इन्फ्रास्ट्रक्चरचा चुकून उघड होण्याचा धोका टळतो.
सिक्युरिटी टूलिंगसाठी व्यावहारिक नियम
- प्रत्येक टेस्ट फिक्स्चरमध्ये केवळ डॉक्युमेंटेशनसाठी वापरले जाणारे IP रेंज वापरा.
- सुरुवातीच्या कमिटमधून सीक्रेट्स (secrets) आणि स्कोप फाइल्स काढून टाका.
- कोणत्याही कथित उल्लंघनाची पडताळणी करण्यासाठी चॅलेंज-रिस्पॉन्स नॉनसेस वापरा.
- केवळ सैलपणे संबंधित असलेल्या स्क्रिप्टची नाही, तर प्रत्यक्षात शिप केली जाणारी नेमकी फाईल व्हॅलिडेट करा.
पुरावा हा आशेपेक्षा (optimism) श्रेष्ठ आहे. स्वायत्त पेन्टेस्ट एजंटला पडताळण्यायोग्य टोकन सादर करण्यास भाग पाडून, HALO हे दाखवून देते की उल्लंघन तेव्हाच उल्लंघन असते जेव्हा टार्गेट अटॅकरचा कोड कार्यान्वित केल्याचे सिद्ध करू शकते. आधी गेट (gate) बांधले जाते; त्यानंतर इतर सर्व गोष्टी येतात.
