गैजेट:

pushad
ret

एक निश्चित डीएलएल से मुझे कानूनी कार्यक्रम में कोई मतलब नहीं है।

डीएलएल को वैध मानते हुए, स्वचालित खोज द्वारा गैजेट को खोजना कैसे संभव है? फ़ंक्शन का एक उदाहरण इसका उपयोग करता है सहायक हो सकता है।

3
Roei Kisous 17 जिंदा 2020, 20:56

1 उत्तर

सबसे बढ़िया उत्तर

निर्देश एन्कोडिंग है:

60  pushad
c3  ret

इसलिए जहां कहीं भी ये दो बाइट होते हैं, एक pushad; ret गैजेट प्राप्त होता है। उदाहरण के लिए, यह निर्देश SSE कोड में यथोचित रूप से मौजूद हो सकता है:

66 0f 60 c3  punpcklbw xmm0, xmm3

इसमें 60 c3 गैजेट देखें? वैकल्पिक रूप से, गैजेट कुछ तत्काल से प्राप्त कर सकता है। उदाहरण के लिए, मान लें कि 0x4800c360 पर कुछ चर है और हम उसका पता लोड करने का प्रयास करते हैं:

b8 60 c3 00 48  mov eax, 0x4800c360

गैजेट फिर से देखें?

ऐसे और भी कई तरीके हैं जिनसे यह गैजेट पूरी तरह से सामान्य कोड में प्रकट हो सकता है।

5
fuz 17 जिंदा 2020, 18:21