← नवीनतम पेपर
🤖 AI

LLM-based Vulnerable Code Augmentation: Generate or Refactor?

यह शोध पत्र इस बात की जांच करता है कि क्या असुरक्षित कोड (vulnerable code) के लिए LLM-आधारित डेटा संवर्धन (data augmentation), नए नमूनों के निर्माण के माध्यम से या मौजूदा नमूनों के अर्थ-संरक्षण वाले पुनर्गठन (semantics-preserving refactoring) के माध्यम से अधिक प्रभावी है, और अंततः यह पाता है कि एक हाइब्रिड दृष्टिकोण डीप लर्निंग-आधारित भेद्यता वर्गीकरणकर्ताओं (vulnerability classifiers) के प्रदर्शन को बेहतर बनाने के लिए सबसे अच्छा है।

मूल लेखक: Dyna Soumhane Ouchebara, Stéphane Dupont

प्रकाशित 2026-02-11
📖 4 मिनट में पढ़ें☕ कॉफ़ी ब्रेक में पढ़ें

मूल लेखक: Dyna Soumhane Ouchebara, Stéphane Dupont

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

समस्या: कोड में "दुर्लभ बीमारी" की दुविधा

कल्पना कीजिए कि आप दुर्लभ बीमारियों का पता लगाने के लिए एक अत्यधिक उन्नत मेडिकल एआई (AI) को प्रशिक्षित कर रहे हैं। इसे अच्छी तरह से करने के लिए, एआई को प्रत्येक बीमारी के हजारों उदाहरण देखने की आवश्यकता है। लेकिन एक समस्या है: कुछ बीमारियाँ बहुत आम होती हैं (जैसे फ्लू), जबकि कुछ अत्यंत दुर्लभ होती हैं। क्योंकि आपके पास दुर्लभ बीमारियों के लिए केवल कुछ ही उदाहरण हैं, एआई फ्लू को पहचानने में तो विशेषज्ञ बन जाता है लेकिन वह दुर्लभ बीमारियों के प्रति "अंधा" रह जाता है।

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

समाधान: "डिजिटल मिमिक" (Digital Mimic) रणनीति

शोधकर्ताओं ने इस कमी को दूर करने के लिए एक शक्तिशाली एआई (एक LLM जिसे Qwen कहा जाता है) का उपयोग करने का निर्णय लिया जो एक "डिजिटल मिमिक" के रूप में कार्य करता है। वास्तविक दुनिया के और अधिक उदाहरण एकत्र करने के लिए वर्षों तक प्रतीक्षा करने के बजाय, उन्होंने एआई का उपयोग नए उदाहरण "निर्मित" करने के लिए किया।

उन्होंने यह करने के दो अलग-अलग तरीकों का परीक्षण किया:

1. "इम्प्रोवाइज़र" (जनरेशन-आधारित ऑग्मेंटेशन - Generation-based Augmentation)

इसे एक पेशेवर अभिनेता की तरह समझें जिसने एक खलनायक के कुछ क्लिप देखे हैं। आप उन्हें वास्तविक खलनायक नहीं देते; आप बस खलनायक के व्यक्तित्व का वर्णन करते हैं और प्रेरणा के लिए कुछ क्लिप दिखाते हैं। फिर, आप कहते हैं, "अब, शून्य से पांच बिल्कुल नए खलनायक बनाओ!"

  • यह कैसे काम करता है: एआई एक बग के कुछ वास्तविक उदाहरणों को देखता है और फिर उसी प्रकार के बग वाले पूरी तरह से नए, मौलिक कोड लिखता है।

2. "मेकओवर आर्टिस्ट" (रिफैक्टरिंग-आधारित ऑग्मेंटेशन - Refactoring-based Augmentation)

इसे किसी व्यक्ति की मौजूदा फोटो लेने और फोटोशॉप का उपयोग करके उनके बालों का रंग, कपड़े और बैकग्राउंड बदलने जैसा समझें, लेकिन उनका चेहरा बिल्कुल वैसा ही रहने दें। व्यक्ति अभी भी वही है, लेकिन फोटो अलग दिखती है।

  • यह कैसे काम करता है: एआई एक वास्तविक, कमजोर कोड लेता है और उसे "रिफैक्टर" (refactor) करता है। वह वेरिएबल्स का नाम बदल देता है, कुछ बेकार अतिरिक्त लाइनें जोड़ देता है, या लॉजिक को पुनर्व्यवस्थित कर देता है। "बग" ठीक उसी स्थान पर रहता है, लेकिन कोड का "लुक" बदल जाता है।

परिणाम: क्या हुआ?

शोधकर्ताओं ने इन "नकली" (लेकिन यथार्थवादी) उदाहरणों को एक "छात्र" एआई (एक क्लासिफायर जिसे CodeBERT कहा जाता है) को दिया ताकि यह देखा जा सके कि क्या वह अधिक स्मार्ट हो गया है।

  • "इम्प्रोवाइज़र" (जनरेशन) तेज़ था: यह बहुत तेज़ी से नया कोड तैयार कर सकता था, लेकिन यह "लेबल्स" (labels) के मामले में थोड़ा अनिश्चित था (कभी-कभी एआई को लगता था कि उसने एक बग बनाया है, लेकिन वह पूरी तरह सही नहीं था)।
  • "मेकओवर आर्टिस्ट" (रिफैक्टरिंग) धीमा था: इसे कोड को सावधानी से फिर से लिखने में अधिक समय लगा, लेकिन इसके परिणाम बहुत उच्च गुणवत्ता वाले थे।
  • "हाइब्रिड" (द ड्रीम टीम): सबसे अच्छे परिणाम तब आए जब उन्होंने इन दोनों तरीकों का एक साथ उपयोग किया। छात्र एआई को दोनों ब्रांड-न्यू "खलनायक" और पुराने के "मेकओवर" देकर, एआई की कमजोरियों को पहचानने की क्षमता काफी बढ़ गई—कुछ मामलों में यह 24% तक सुधर गई!

"अहा!" मोमेंट: लंबाई का कारक (The Length Factor)

शोधकर्ताओं ने एक "छिपे हुए नियम" की भी खोज की: जटिलता दुश्मन है।

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

संक्षेप में

यह शिकायत करने के बजाय कि "बुरे कोड" पर प्रशिक्षण के लिए पर्याप्त डेटा नहीं है, इन शोधकर्ताओं ने एक स्मार्ट एआई का उपयोग करके यथार्थवादी बुरे कोड की कल्पना (hallucinate) की। पुराने के चतुर पुनर्लेखन (rewrites) और बिल्कुल नए निर्माणों को मिलाकर, उन्होंने एक "अंधे" सुरक्षा एआई को एक बहुत अधिक तेज डिजिटल जासूस में बदल दिया।

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

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

Digest आज़माएँ →