JIT spraying
जे. आई. टी. छिड़काव कंप्यूटर सुरक्षा दोहन का एक वर्ग है जो समय पर संकलन के व्यवहार का दोहन करके पता स्थान लेआउट यादृच्छिककरण और डेटा निष्पादन रोकथाम की सुरक्षा को दरकिनार करता है। इसका उपयोग पीडीएफ प्रारूप और एडोब फ्लैश का उपयोग करने के लिए किया गया है। एक जस्ट-इन-टाइम संकलक (जे. आई. टी.) परिभाषा के अनुसार अपने डेटा के रूप में कोड का उत्पादन करता है। चूँकि इसका उद्देश्य निष्पादन योग्य डेटा का उत्पादन करना है, एक जे. आई. टी. संकलक कुछ प्रकार के कार्यक्रमों में से एक है जिसे निष्पादन योग्य-डेटा वातावरण में नहीं चलाया जा सकता है। इस वजह से, जे. आई. टी. संकलकों को आम तौर पर डेटा निष्पादन रोकथाम से छूट दी जाती है। जे. आई. टी. स्प्रे हमला उत्पन्न कोड के साथ ढेर छिड़काव करता है। जे. आई. टी. से एक्सप्लॉइट कोड बनाने के लिए, डियोन ब्लेज़ाकिस के एक विचार का उपयोग किया जाता है। इनपुट प्रोग्राम, आमतौर पर जावास्क्रिप्ट या एक्शनस्क्रिप्ट, में आम तौर पर कई स्थिर मान होते हैं जिन्हें गलती से कोड के रूप में निष्पादित किया जा सकता है। उदाहरण के लिए, एक्सओआर ऑपरेशन का उपयोग किया जा सकता हैः वार ए = (0x11223344 ^ 0x44332211 ^ 0x44332211); जेआईटी तब बाइटकोड को मूल x86 कोड में बदल देगा जैसे किः 0: बी8 44 33 22 11 5:35 11 22 33 44 एः 35 11 22 33 44 हमलावर फिर नए उत्पन्न कोड में कोड निष्पादन को पुनर्निर्देशित करने के लिए एक उपयुक्त बग का उपयोग करता है। उदाहरण के लिए, एक बफर अतिप्रवाह या मुक्त बग के बाद उपयोग हमले को एक कार्य सूचक या वापसी पते को संशोधित करने की अनुमति दे सकता है। यह सीपीयू को निर्देशों को इस तरह से निष्पादित करने का कारण बनता है जो जेआईटी लेखकों द्वारा अनपेक्षित था। हमलावर आमतौर पर अपेक्षित निर्देश सीमाओं तक भी सीमित नहीं होता है; सीपीयू द्वारा इसे कुछ और के रूप में व्याख्या करने के लिए एक इच्छित निर्देश के बीच में कूदना संभव है। गैर-जे. आई. टी. आर. ओ. पी. हमलों के साथ, यह उपयोगी रूप से कंप्यूटर का नियंत्रण लेने के लिए पर्याप्त संचालन हो सकता है। उपरोक्त उदाहरण को जारी रखते हुए, "मूव" निर्देश के दूसरे बाइट पर कूदने के परिणामस्वरूप एक "इंक" निर्देश होता हैः 1:44 2:33 22 4:11 35 11 22 33 44 एः 35 11 22 33 44 x86 और x 86-64 एक निर्देश के बीच में कूदने की अनुमति देते हैं, लेकिन एआरएम जैसे निश्चित-लंबाई वाले आर्किटेक्चर नहीं। जे. आई. टी. छिड़काव से बचाने के लिए, जे. आई. टी. कोड को निष्क्रिय किया जा सकता है या हमलावर के लिए कम अनुमानित बनाया जा सकता है। संदर्भ कंप्यूटर सुरक्षा कारनाम