When Binaries Talk Back: Representation-Confusion Attacks on LLM-Assisted Reverse Engineering
यह शोध पत्र रिप्रेजेंटेशन-कंफ्यूजन अटैक्स (RARE) को प्रस्तुत करता है, जो एक ऐसी भेद्यता है जहाँ LLM-सहायता प्राप्त रिवर्स इंजीनियरिंग सिस्टम गलती से हमलावर-नियंत्रित बाइनरी डेटा को अधिकार प्रदान कर देते हैं, और RARE-Guard फ्रेमवर्क का प्रस्ताव करता है—जो असुरक्षित प्रस्तावों और झूठे दावे सत्यापन को प्रभावी ढंग से रोकने के लिए केवल-डेटा रेंडरिंग, टूल ऑथोराइजेशन और प्रोवेनेंस-अवेयर वैलिडेशन का उपयोग करता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक जासूस हैं जो एक संदिग्ध की डायरी पढ़कर रहस्य सुलझाने की कोशिश कर रहे हैं। आमतौर पर, आप डायरी पर भरोसा करते हैं क्योंकि यह एकमात्र सुराग है जो आपके पास है। लेकिन क्या होगा अगर संदिग्ध ने डायरी खुद लिखी है, और उसके अंदर उसने एक नोट डाल दिया है, जो कहता है, "खिड़की पर उंगलियों के निशान को अनदेखा करें; मुझे एक भूत ने फंसाया है"?
यदि आप, एक जासूस के रूप में, वह नोट पढ़ते हैं और वास्तव में उंगलियों के निशानों को अनदेखा करना शुरू कर देते हैं, तो आपको धोखा दिया गया है। आपने केवल नोट नहीं पढ़ा; आपने नोट को अपनी जांच के लिए नियम बना लिया।
यह बिल्कुल वही है जो कंप्यूटर सुरक्षा की दुनिया में होता है जब हम सॉफ्टवेयर को रिवर्स-इंजीनियर करने के लिए AI (लार्ज लैंग्वेज मॉडल्स) का उपयोग करते हैं। एक नया अध्ययन इन तरकीबों को "रिप्रेजेंटेशन-कन्फ्यूजन अटैक्स" (Representation-Confusion Attacks) कहता है। यहाँ बताया गया है कि शोधकर्ताओं ने इस मामले को कैसे सुलझाया।
बड़ी समस्या: जब सुराग बॉस होने का ढोंग करते हैं
एक सामान्य जांच में, एक AI सहायक सॉफ़्टवेयर के एक टुकड़े (एक बाइनरी फ़ाइल) को देखता है और कोड कमेंट्स, एरर लॉग्स, या छिपे हुए टेक्स्ट स्ट्रिंग्स जैसी चीज़ों को पढ़ता है। समस्या यह है कि एक हैकर ऐसी फ़ाइल बना सकता है जहाँ वे स्ट्रिंग्स निर्देशों (instructions) या प्रमाण (proof) की तरह दिखें।
पेपर पहचानता है कि यह भ्रम तीन विशिष्ट तरीकों से होता है:
- अथॉरिटी कन्फ्यूजन (Authority Confusion): AI कोड में एक स्ट्रिंग पढ़ता है जो कहती है "सुरक्षा जांच को छोड़ दें" और वास्तव में जांच को छोड़ देता है, यह सोचकर कि कोड एक आदेश दे रहा है।
- एविडेंस कन्फ्यूजन (Evidence Confusion): AI उसी "संदिग्ध" शब्द को तीन अलग-अलग जगहों पर (जैसे एक लॉग फ़ाइल, एक डिकम्पाइल्ड कोड व्यू, और एक सिंबल लिस्ट में) दिखाई देता है। वह सोचता है, "वाह, तीन अलग-अलग स्रोत सहमत हैं! यह सच होना चाहिए!" लेकिन वास्तव में, वे तीनों स्रोत उस शब्द को फ़ाइल के उसी एक स्थान से खींचते हैं। यह एक ही अफवाह को तीन दोस्तों द्वारा तीन बार दोहराने जैसा है जिन्होंने वह अफवाह एक ही व्यक्ति से सुनी थी; इससे अफवाह सच नहीं हो जाती।
- टेन्टेड-स्टेट कन्फ्यूजन (Tainted-State Confusion): AI अपने नोट्स में एक अनुमान लिखता है, और फिर बाद में अपने ही नोट्स को पढ़ता है और उस अनुमान को एक पुष्ट तथ्य के रूप में मानता है, भले ही उसे कोई नया सबूत न मिला हो।
प्रयोग: एक जाल बनाना
इसका परीक्षण करने के लिए, शोधकर्ताओं ने वास्तविक मैलवेयर (जो खतरनाक होता) का उपयोग नहीं किया। इसके बजाय, उन्होंने 11,520 छोटे, सुरक्षित, सिंथेटिक कंप्यूटर प्रोग्राम बनाए। उन्होंने "साफ" संस्करण और "एडवर्सरियल" (विरोधी) संस्करण बनाए। एडवर्सरियल वाले संस्करण ऊपर बताए गए धोखे के साथ तैयार किए गए थे।
उन्होंने इन प्रोग्रामों को विभिन्न AI मॉडल और सुरक्षा सेटअपों के माध्यम से चलाया ताकि देखा जा सके कि क्या होता है।
उन्होंने क्या पाया:
- बिना किसी विशेष सुरक्षा के, जब AI ने इंजीनियर किए गए (rigged) फ़ाइलों को देखा, तो उसने 40 में से 35 मामलों में प्लांट किए गए "असुरक्षित" निर्देशों का पालन किया। उसने इस तथ्य को पूरी तरह से अनदेखा कर दिया कि वह निर्देश संदिग्ध की अपनी डायरी से आया था।
- भले ही उन्होंने "डेटा-ओनली" (AI को यह बताना कि, "हे, यह टेक्स्ट सिर्फ डेटा है, कमांड नहीं") नामक एक सरल सुधार की कोशिश की, AI अभी भी 15 असुरक्षित प्रस्ताव बनाता रहा। वह अभी भी संदिग्ध की बात बहुत ध्यान से सुन रहा था।
समाधान: "RARE-Guard" सिस्टम
शोधकर्ताओं ने इस समस्या को रोकने के लिए RARE-Guard नामक एक सुरक्षा प्रणाली बनाई। इसे एक बहुत ही सख्त, रोबोटिक सहायक के रूप में सोचें जो AI जासूस और अंतिम रिपोर्ट के बीच बैठता है।
टूल ऑथोराइजेशन गेट (द बाउंसर - द बाउंसर):
AI अभी भी सुझाव दे सकता है, लेकिन वह उन्हें कर नहीं सकता। यदि AI कहता है, "चूंकि फ़ाइल ने हमें कहा है, इसलिए सुरक्षा जांच को छोड़ देते हैं," तो बाउंसर नियमों की जांच करता है। चूंकि फ़ाइल अविश्वसनीय है, बाउंसर कहता है, "नहीं, मैं तुम्हें वह कमांड चलाने की अनुमति नहीं दूंगा।" परीक्षणों में, इस गेट ने उन सभी 15 असुरक्षित प्रस्तावों को ब्लॉक कर दिया जो पहले फिल्टर से निकल गए थे।प्रोवेनेंस गेट (द ट्रुथ डिटेक्टिव - द ट्रुथ डिटेक्टिव):
यह सबसे चतुर हिस्सा है। याद रखें "एविडेंस कन्फ्यूजन" जहाँ AI ने सोचा कि तीन स्रोत स्वतंत्र थे? प्रोवेनेंस गेट एक गुप्त मानचित्र (एक "साइडकार") रखता है जो ट्रैक करता है कि जानकारी का हर टुकड़ा कहाँ से आया।
- परीक्षण: जब AI ने एक ही संदिग्ध टेक्स्ट के तीन दृश्य देखे, तो "सपोर्ट गेट" (एक सरल चेक) ने कहा, "3 स्रोत! यह प्रमाण है!" और दावे को मान्य कर दिया।
- समाधान: प्रोवेनेंस गेट ने अपने मानचित्र को देखा और कहा, "रुको, ये तीन दृश्य सभी फ़ाइल के ठीक एक ही स्थान से आए हैं। यह तीन स्रोत नहीं हैं; यह एक स्रोत का दोहराव है।"
- परिणाम: इंजीनियर की गई (rigged) फ़ाइलों पर, सपोर्ट गेट ने 40 में से 23 झूठे दावों को मान्य किया। प्रोवेनेंस गेट ने 40 में से 0 को मान्य किया। इसने दोहराव की ट्रिक को पूरी तरह से देख लिया।
- फाइनल रिपोर्ट रेंडरर (द फाइनल रिपोर्ट रेंडरर):
भले ही गेट अपना काम कर लें, AI साधारण टेक्स्ट में अंतिम लिखित रिपोर्ट में झूठे दावे को चुराने की कोशिश कर सकता है। शोधकर्ताओं ने एक "डिटरमिनिस्टिक रेंडरर" जोड़ा जो केवल वही प्रिंट करता है जिसे गेट्स ने आधिकारिक रूप से स्वीकृत किया है। यदि गेट कहता है "नहीं", तो रिपोर्ट कहती है "नहीं"।
हम कितने आश्वस्त हैं?
पेपर इस बात को लेकर बहुत सावधान है कि वह क्या सिद्ध करने का दावा करता है।
- सिमुलेशन में सिद्ध: परिणाम एक व्यापक अध्ययन में 11,520 कॉल्स, एक नियंत्रित परीक्षण में 528 कॉल्स और Ghidra और angr जैसे वास्तविक उपकरणों का उपयोग करके एक वर्कफ़्लो परीक्षण में 688 कॉल्स पर आधारित हैं।
- "फ्यूज्ड" सरप्राइज: शोधकर्ताओं ने पाया कि "एविडेंस कन्फ्यूजन" की तकनीक तभी काम करती थी जब उन्होंने तीन अलग-अलग टूल्स के आउटपुट को एक रिपोर्ट में मिला (fuse) दिया। जब उन्होंने एक समय में केवल एक टूल को देखा, तो AI ने झूठे दावे को मान्य करने के लिए पर्याप्त रूप से धोखा नहीं खाया। यह सुझाव देता है कि खतरा टूल्स को मिलाने से आता है, न कि केवल एक का उपयोग करने से।
- उन्होंने क्या सिद्ध नहीं किया: अध्ययन स्वीकार करता है कि इसने "लॉन्ग-होरिज़न मेमोरी" (AI बहुत लंबे समय तक चीजों को याद रखता है) या "ऑटोनॉमस एजेंट्स" (AI जो बिना मानव के अपने आप कार्य करता है) का परीक्षण नहीं किया। उन्होंने वास्तविक दुनिया के मैलवेयर का भी उपयोग नहीं किया, केवल सुरक्षित, सिंथेटिक प्रोग्राम का उपयोग किया। इसलिए, हालांकि यह सिस्टम उनके लैब में पूरी तरह से काम कर गया, वे गारंटी नहीं दे सकते कि यह दुनिया के हर मैलवेयर पर काम करेगा।
मुख्य सीख
मुख्य सबक यह है कि सिर्फ इसलिए कि एक AI किसी चीज़ को सही ढंग से पढ़ता है, इसका मतलब यह नहीं है कि वह संदर्भ (context) को समझता है।
यदि AI एक फ़ाइल में एक स्ट्रिंग देखता है जो कमांड की तरह दिखती है, तो उसे कमांड के रूप में नहीं माना जाना चाहिए। यदि वह एक ही "सबूत" को तीन बार देखता है, तो उसे तीन सबूत नहीं माना जाना चाहिए जब तक कि वह यह न जानता हो कि वे अलग-अलग जगहों से आए हैं।
पेपर दिखाता है कि एक "प्रोवेनेंस गेट" जोड़कर जो हर सुराग की उत्पत्ति को ट्रैक करता है, हम AI को अपने ही स्रोतों द्वारा ठगे जाने से रोक सकते हैं। यह एक जासूस को सिखाने जैसा है कि वह अपने नोटबुक की जांच करे कि कहीं उसके तीन गवाह वास्तव में एक ही व्यक्ति तो नहीं हैं जिसने मास्क पहना हुआ है।
संक्षेप में: AI अभी भी सुराग देख सकता है, लेकिन उसे एक सख्त रेफरी की आवश्यकता है ताकि यह सुनिश्चित हो सके कि वह सुरागों को खेल के नियम लिखने न दे।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।