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

SeedSmith: LLM-Driven Seed Synthesis for Directed Fuzzing

SeedSmith एक एजेंटिक (agentic) LLM पाइपलाइन है जो अप्रत्यक्ष कॉल्स (indirect calls) और क्रैश प्रीकंडीशन्स (crash preconditions) को पुनरावृत्ति से हल करके लक्षित प्रारंभिक सीड्स (targeted initial seeds) को संश्लेषित करती है, जिससे निर्देशित फज़िंग (directed fuzzing) में उल्लेखनीय तेजी आती है और विविध इनपुट स्वरूपों में पहले से अपहुंचनीय कमजोरियों की खोज संभव होती है।

मूल लेखक: Junmin Zhu, Siyu Liu, Jie Hu, Fabio Gritti, Ati Priya Bajaj, Hulin Wang, Wenbo Guo, Tiffany Bao, Christopher Kruegel, Giovanni Vigna

प्रकाशित 2026-07-13
📖 6 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Junmin Zhu, Siyu Liu, Jie Hu, Fabio Gritti, Ati Priya Bajaj, Hulin Wang, Wenbo Guo, Tiffany Bao, Christopher Kruegel, Giovanni Vigna

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

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

समस्या क्या है? रोबोट अक्सर रास्ता भटक जाता है या फंस जाता है। क्यों? क्योंकि जो नक्शा वह उपयोग करता है वह अधूरा है (वह बंद दरवाजों के पीछे के गुप्त रास्तों को नहीं देख सकता) और भले ही वह कमरे में पहुँच जाए जहाँ खजाना है, उसे यह नहीं पता कि उसे खोलने के लिए किस गुप्त संकेत (handshake) की आवश्यकता है। वह बस एक डंडे से संदूक को थपथपाता रहता है, इस उम्मीद में कि वह उसे तोड़ देगा, जिसमें बहुत समय लगता है।

यहाँ आता है सीडस्मिथ (SeedSmith), एक नया सिस्टम जो रोबोट के चलने से पहले एक सुपर-स्मार्ट जासूस की तरह काम करता है। रोबोट को अंधाधुंध घूमने देने के बजाय, सीडस्मिथ पहले जासूसी करने के लिए एक विशेष प्रकार के आर्टिफिशियल इंटेलिजेंस (एक LLM) का उपयोग करता है।

दो बड़ी समस्याएँ जिन्हें सीडस्मिथ हल करता है

1. अदृश्य नक्शा (इनडायरेक्ट कॉल्स - Indirect Calls)
कल्पना कीजिए कि महल में एक गलियारा है जहाँ दरवाजों पर नाम नहीं हैं; बस एक नोट लिखा है "उस दरवाजे पर जाओ जिसकी ओर गार्ड इशारा करता है।" रोबोट का नक्शा केवल सीधे कनेक्शन दिखाता है, इसलिए वह सोचता है कि वह गलियारा एक डेड एंड (बंद रास्ता) है। वास्तविक दुनिया में, यह "इनडायरेक्ट कॉल्स" के साथ होता है। पेपर बताता है कि इसे ठीक किए बिना, रोबोट खजाने तक का रास्ता कभी नहीं देख पाएगा। सीडस्मिथ का जासूसी AI कोड को पढ़ता है, यह पता लगाता है कि कौन सा गार्ड किस दरवाजे की ओर इशारा कर रहा है, और नक्शे पर उस गायब रास्ते को बना देता है।

2. गुप्त संकेत (क्रैश प्रीकंडिशन्स - Crash Preconditions)
कभी-कभी रोबोट सही कमरे में तो पहुँच जाता है, लेकिन संदूक एक जटिल पहेली के साथ लॉक होता है। शायद आपको एक विशिष्ट क्रम में तीन बटन दबाने होंगे और साथ ही एक विशिष्ट कुंजी (key) भी पकड़नी होगी। रोबोट की बेतरतीब कोशिश (म्यूटेशन) पियानो की कुंजियों को बजाने वाले बंदर की तरह है; वह शायद अंततः सही नोट बजा दे, लेकिन इसमें लाखों साल लग सकते हैं। सीडस्मिथ का जासूसी AI निर्देशों को पढ़ता है, सटीक संयोजन (combination) का पता लगाता है, और एक ऐसी चाबी बनाता है जो बिल्कुल फिट बैठती है।

सीडस्मिथ कैसे काम करता है: जासूस और निर्माता

सीडस्मिथ केवल अनुमान नहीं लगाता; यह दो चरणों में काम करता है, जैसे कि दो लोगों की एक टीम हो:

  • एनालिसिस एजेंट (जासूस - The Detective): इस सिस्टम का यह हिस्सा खजाने के संदूक से शुरू होता है और पीछे की ओर काम करता है। यह कोड को "खोजने" के लिए एक विशेष टूल का उपयोग करता है, ठीक वैसे ही जैसे एक मानव सुरक्षा विशेषज्ञ फंक्शन बॉडी और टाइप डेफिनिशन को पढ़ता है। यह केवल एक स्थिर नक्शा नहीं देखता; यह सवाल पूछता है जैसे, "यह फंक्शन कौन कॉल करता है?" और "इस वेरिएबल को किन वैल्यूज की आवश्यकता है?" यह तब तक खुदाई करता रहता है जब तक कि इसे सटीक रास्ता और क्रैश को ट्रिगर करने के लिए आवश्यक सटीक स्थितियाँ न मिल जाएं।
  • सीड जनरेशन एजेंट (निर्माता - The Builder): एक बार जब जासूस अपनी रिपोर्ट लिख लेता है, तो निर्माता कार्यभार संभाल लेता है। यह एक आदर्श "सीड" (शुरुआती इनपुट) बनाने के लिए एक पायथन स्क्रिप्ट लिखता है। यदि खजाने के लिए एक जटिल इमेज फाइल या एक विशिष्ट नेटवर्क पैकेट की आवश्यकता है, तो निर्माता लाइब्रेरीज़ (जैसे एक डिजिटल पेंटब्रश) का उपयोग करके इसे पूरी तरह से निर्मित करता है, बजाय इसके कि केवल रैंडम बाइट्स फेंके जाएं।

यदि पहले प्रयास से संदूक नहीं टूटता है, तो सिस्टम परिणाम की जांच करता है, अपनी गलती से सीखता है, और इसे तब तक दस बार तक दोहराता है जब तक कि यह सही न हो जाए।

सीडस्मिथ क्या सिद्ध करता है (और क्या नहीं)

शोधकर्ताओं ने दो बड़े चुनौतियों के सेट पर इसका परीक्षण किया: मैग्मा (Magma) (23 विशिष्ट बग्स) और आरवो (ARVO) (26 प्रोजेक्ट्स से 115 वास्तविक दुनिया के बग्स)।

परिणाम:

  • गति: जब सीडस्मिथ के सीड्स का उपयोग किया गया, तो रोबोटों ने डिफॉल्ट शुरुआती सीड्स की तुलना में AFL++ नामक एक लोकप्रिय टूल के साथ औसतन 11.51 गुना तेज़ और AFLGo नामक दूसरे टूल के साथ 14.66 गुना तेज़ क्रैश खोजे।
  • नई खोजें: ARVO चुनौतियों पर, सीडस्मिथ ने रोबोटों को 16 ऐसे बग्स खोजने में मदद की जो उन्होंने 24 घंटे तक चलने के बाद भी नहीं खोज पाए थे। ये बग्स 10 अलग-अलग प्रोजेक्ट्स में थे जिनमें बहुत अलग फ़ाइल फॉर्मेट थे।
  • वन-शॉट वंडर्स (One-Shot Wonders): कुछ बग्स के लिए, सीडस्मिथ द्वारा बनाया गया सीड इतना सटीक था कि रोबोट ने इनपुट को म्यूटेट करने के अवसर मिलने से पहले ही तुरंत क्रैश को ट्रिगर कर दिया। मैग्मा सेट पर ऐसा 5 बार हुआ।

सीडस्मिथ क्या नहीं है:

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

निचोड़ (The Bottom Line)

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

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

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

Digest आज़माएँ →