← नवीनतम पेपर
💻 computer science

Efficient Symbolic Execution of Software under Fault Attacks

यह शोध पत्र फॉल्ट हमलों के तहत सॉफ्टवेयर सुरक्षा का विश्लेषण करने के लिए एक नवीन सिम्बोलिक एक्जीक्यूशन विधि प्रस्तावित करता है जो सटीक फॉल्ट मॉडलिंग के लिए स्वचालित प्रोग्राम ट्रांसफॉर्मेशन और मौजूदा अत्याधुनिक तकनीकों की तुलना में काफी अधिक सटीकता और दक्षता प्राप्त करने के लिए एक विशेष, प्रूनिंग-आधारित सिम्बोलिक एक्जीक्यूशन एल्गोरिदम का उपयोग करता है।

मूल लेखक: Yuzhou Fang, Chenyu Zhou, Jingbo Wang, Chao Wang

प्रकाशित 2026-04-27
📖 5 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Yuzhou Fang, Chenyu Zhou, Jingbo Wang, Chao Wang

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

कल्पना कीजिए कि आप एक हाई-टेक बैंक में सुरक्षा गार्ड हैं। आपका काम यह सुनिश्चित करना है कि तिजोरी बंद रहे। ज्यादातर लोग "सुरक्षा" को ताला तोड़ने या खिड़की तोड़ने वाले चोर को रोकने के रूप में देखते हैं। लेकिन क्या होगा अगर चोर ने दरवाजे को छुआ तक न हो? क्या होगा अगर उन्होंने एक शक्तिशाली चुंबक का उपयोग करके इलेक्ट्रॉनिक सेंसर को बस एक मिलीसेकंड के लिए 'ग्लिच' (glitch) कर दिया, जिससे कंप्यूटर को यह भ्रम हुआ कि दरवाजा पहले से ही बंद है, जबकि वास्तव में वह पूरी तरह खुला हुआ था?

यह शोध पत्र सॉफ्टवेयर में ऐसे ही "ग्लिच" (glitch) कमजोरियों को खोजने के बारे में है।

समस्या: "मशीन में भूत" (The Ghost in the Machine)

सॉफ्टवेयर आमतौर पर तर्क (logic) के साथ लिखा जाता है: "यदि पासवर्ड सही है, तो दरवाजा खोलें; अन्यथा, अलार्म बजाएं।"

हालाँकि, हैकर्स फॉल्ट अटैक (Fault Attacks) कर सकते हैं। वे कंप्यूटर चिप के चलते समय उसे "ग्लिच" करने के लिए लेजर, इलेक्ट्रोमैग्नेटिक तरंगों, या वोल्टेज स्पाइक्स का उपयोग करते हैं। यह कोड को नहीं बदलता, बल्कि हार्डवेयर में एक क्षणिक रुकावट पैदा करता है। एक महत्वपूर्ण निर्देश—जैसे कि वह जो कहता है "अलार्म बजाओ!"—बस स्किप (skip) हो सकता है, जैसे कि वह कभी अस्तित्व में ही न रहा हो।

ग्लिच खोजने के लिए उपयोग किए जाने वाले वर्तमान टूल्स में दो बड़ी समस्याएं हैं:

  1. वे "अनाड़ी" मॉडल हैं: वे ग्लिच को सिम्युलेट करने के लिए "हाँ/नहीं" स्विच को बदलने की कोशिश करते हैं, जो वास्तविक हार्डवेयर ग्लिच की तरह नहीं है। यह एक कार के क्रैश को सिम्युलेट करने के लिए केवल कार का रंग बदलने जैसा है।
  2. वे "धीमे" हैं: जब आप हर संभव माइक्रोसेकंड पर हर संभावित ग्लिच के लिए "क्या होगा अगर" वाले परिदृश्यों को सिम्युलेट करना शुरू करते हैं, तो संभावित रास्तों की संख्या बहुत अधिक हो जाती है। यह शतरंज का एक ऐसा खेल खेलने जैसा है जहाँ, हर चाल के बाद, आपको यह भी गणना करनी पड़ती है कि क्या होगा यदि बोर्ड में आग लग जाए, मोहरे पक्षी बन जाएं, या गुरुत्वाकर्षण उल्टा हो जाए। कंप्यूटर अभिभूत हो जाता है (इसे "पाथ एक्सप्लोजन" कहा जाता है)।

समाधान: "स्मार्ट सिम्युलेटर" (The Smart Simulator)

शोधकर्ताओं ने इन समस्याओं को ठीक करने के लिए दो चतुर तरीके प्रस्तावित किए हैं।

1. "घोस्ट पाथ" ट्रांसफॉर्मेशन (सटीक मॉडलिंग)

यह अनुमान लगाने के बजाय कि ग्लिच कैसा दिखेगा, वे सॉफ्टवेयर को फिर से लिखने के लिए एक विशेष "अनुवादक" (कंपाइलर) का उपयोग करते हैं।

कल्पना कीजिए कि आप एक रेसिपी पढ़ रहे हैं। शोधकर्ता हर महत्वपूर्ण कदम से पहले एक छोटा "घोस्ट इंस्ट्रक्शन" (ghost instruction) जोड़ देते हैं। यह निर्देश कहता है: "चेक करें कि क्या अभी कोई ग्लिच हुआ है। यदि हाँ, तो अगले चरण को छोड़ दें और सीधे अंत पर पहुँच जाएँ।"

कोड में ये "घोस्ट पाथ" सीधे जोड़कर, वे प्रोग्राम का एक ऐसा संस्करण बनाते हैं जो स्वाभाविक रूप से "जानता" है कि हमले के दौरान उसे कैसा व्यवहार करना चाहिए। यह उनके सिमुलेशन को बहुत अधिक यथार्थवादी बनाता है—यह उन वास्तविक "ग्लिच" को पकड़ लेता है जिन्हें पिछले टूल्स मिस कर गए थे।

2. "शॉर्टकट" विधि (कुशल विश्लेषण)

गति की समस्या को हल करने के लिए, वे रिडंडेंसी प्रूनिंग (Redundancy Pruning) नामक तकनीक का उपयोग करते हैं।

कल्पना कीजिए कि आप एक जाल खोजने के लिए एक विशाल, शाखाओं वाले भूलभुलैया (maze) की खोज कर रहे हैं। एक सामान्य सिमुलेशन में, हर बार जब आप सड़क के मोड़ पर पहुँचते हैं, तो आपको उस रास्ते के हर हिस्से को अंत तक खोजना पड़ता है।

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

वे तुरंत "पहले से खोजे गए" अनुभागों को पहचानने के लिए एक "पाथ समरी" (Path Summary) (एक चीट शीट की तरह) नामक गणितीय अवधारणा का उपयोग करते हैं। यह उन्हें भूलभुलैया के माध्यम से बिजली की गति से गुजरने की अनुमति देता है, जिससे वे उबाऊ, सुरक्षित हिस्सों को अनदेखा करते हैं और केवल खतरनाक, ग्लिच वाले हिस्सों पर ध्यान केंद्रित करते हैं।

परिणाम: तेज़ और सटीक

जब उन्होंने इस परीक्षण को वर्तमान "गोल्ड स्टैंडर्ड" टूल्स के विरुद्ध किया, तो उनका तरीका दो तरह से विजेता रहा:

  • यह एक बेहतर जासूस है: इसने उन सुरक्षा उल्लंघनों को खोज निकाला जिन्हें पुराने टूल्स पूरी तरह से मिस कर गए थे।
  • यह एक स्पीड डेमन है: यह पुराने तरीकों की तुलना में कई गुना तेजी से विश्लेषण पूरा करने में सक्षम था।

संक्षेप में: उन्होंने "हार्डवेयर हिचकी" (hardware hiccups) को सिम्युलेट करने का एक तरीका बनाया जो अधिक यथार्थवादी (असली हैकर्स को पकड़ने के लिए) और बहुत तेज़ (गणित में खो न जाने के लिए) दोनों है।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →