தி அட்வென்ச்சர்ஸ் ஆஃப் தி எலுசிவ் மால்வேர், பகுதி IV: DDE மற்றும் Word Document Fields (நாங்கள் இங்கே இருக்கிறோம்)
இந்த கட்டுரையில், கணினியில் பின்னிங் செய்வதன் மூலம் இன்னும் சிக்கலான பல-நிலை கோப்பு இல்லாத தாக்குதல் சூழ்நிலையில் நான் முழுக்கப் போகிறேன். ஆனால் பின்னர் நான் நம்பமுடியாத எளிமையான, குறியீடு இல்லாத தாக்குதலைக் கண்டேன்-வேர்ட் அல்லது எக்செல் மேக்ரோக்கள் தேவையில்லை! இந்தக் கட்டுரைத் தொடரின் அடிப்படையிலான எனது அசல் கருதுகோளை இது மிகவும் திறம்பட நிரூபிக்கிறது: எந்தவொரு அமைப்பின் வெளிப்புற சுற்றளவையும் உடைப்பது கடினமான பணி அல்ல.
நான் விவரிக்கும் முதல் தாக்குதல் மைக்ரோசாஃப்ட் வேர்ட் பாதிப்பை அடிப்படையாகக் கொண்டது காலாவதியானது டைனமிக் தரவு பரிமாற்ற நெறிமுறை (DDE). அவள் ஏற்கனவே இருந்தாள் சரி செய்யப்பட்டது. இரண்டாவது மைக்ரோசாஃப்ட் COM மற்றும் பொருள் பரிமாற்ற திறன்களில் மிகவும் பொதுவான பாதிப்பைப் பயன்படுத்துகிறது.
DDE உடன் எதிர்காலத்திற்குத் திரும்பு
வேறு யாருக்காவது DDE நினைவிருக்கிறதா? அநேகமாக பல இல்லை. இது முதல் ஒன்றாகும் தரவு பரிமாற்றத்திற்கு பயன்பாடுகள் மற்றும் சாதனங்களை அனுமதித்த இடை-செயல் தொடர்பு நெறிமுறைகள்.
நான் டெலிகாம் உபகரணங்களைச் சரிபார்த்துச் சோதித்துப் பார்ப்பதால், அதை நானே கொஞ்சம் அறிந்திருக்கிறேன். அந்த நேரத்தில், DDE அனுமதித்தது, எடுத்துக்காட்டாக, கால் சென்டர் ஆபரேட்டர்கள் அழைப்பாளர் ஐடியை CRM பயன்பாட்டிற்கு மாற்றுவதற்கு அனுமதித்தனர், இது இறுதியில் வாடிக்கையாளர் அட்டையைத் திறந்தது. இதைச் செய்ய, உங்கள் ஃபோனுக்கும் உங்கள் கணினிக்கும் இடையே RS-232 கேபிளை இணைக்க வேண்டும். அந்த நாட்கள்!
அது மாறிவிடும், மைக்ரோசாப்ட் வேர்ட் இன்னும் உள்ளது ஆதரிக்கிறது DDE.
குறியீடு இல்லாமல் இந்தத் தாக்குதலைச் செயல்படுத்துவது என்னவென்றால், நீங்கள் DDE நெறிமுறையை அணுகலாம் непосредственно வேர்ட் ஆவணத்தில் உள்ள தானியங்கி புலங்களிலிருந்து (சென்ஸ்போஸ்டுக்கு நன்றி ஆராய்ச்சி மற்றும் வெளியீடுகள் இது பற்றி).
புல குறியீடுகள் உங்கள் ஆவணத்தில் டைனமிக் உரை மற்றும் சிறிது நிரலாக்கத்தை சேர்க்க உங்களை அனுமதிக்கும் மற்றொரு பண்டைய MS Word அம்சமாகும். மிகத் தெளிவான எடுத்துக்காட்டு பக்க எண் புலம் ஆகும், இது {PAGE *MERGEFORMAT} மதிப்பைப் பயன்படுத்தி அடிக்குறிப்பில் செருகப்படலாம். இது பக்க எண்களை தானாக உருவாக்க அனுமதிக்கிறது.
குறிப்பு: Insert என்பதன் கீழ் புலம் மெனு உருப்படியைக் காணலாம்.
வேர்டில் இந்த அம்சத்தை நான் முதன்முதலில் கண்டுபிடித்தபோது, நான் ஆச்சரியப்பட்டேன். பேட்ச் அதை முடக்கும் வரை, வேர்ட் இன்னும் DDE புலங்கள் விருப்பத்தை ஆதரித்தது. இதன் கருத்து என்னவென்றால், DDE ஆனது Word ஐ பயன்பாட்டுடன் நேரடியாக தொடர்பு கொள்ள அனுமதிக்கும், இதனால் நிரலின் வெளியீட்டை ஆவணமாக அனுப்ப முடியும். அந்த நேரத்தில் இது மிகவும் இளம் தொழில்நுட்பமாக இருந்தது - வெளிப்புற பயன்பாடுகளுடன் தரவு பரிமாற்றத்திற்கான ஆதரவு. இது பின்னர் COM தொழில்நுட்பமாக உருவாக்கப்பட்டது, அதையும் கீழே பார்ப்போம்.
இறுதியில், இந்த DDE பயன்பாடு ஒரு கட்டளை ஷெல் ஆக இருக்கலாம் என்பதை ஹேக்கர்கள் உணர்ந்தனர், இது நிச்சயமாக PowerShell ஐ அறிமுகப்படுத்தியது, மேலும் அங்கிருந்து ஹேக்கர்கள் அவர்கள் விரும்பியதைச் செய்யலாம்.
இந்த திருட்டு நுட்பத்தை நான் எவ்வாறு பயன்படுத்தினேன் என்பதை கீழே உள்ள ஸ்கிரீன்ஷாட் காட்டுகிறது: DDE புலத்தில் இருந்து ஒரு சிறிய PowerShell ஸ்கிரிப்ட் (இனி PS என குறிப்பிடப்படுகிறது) மற்றொரு PS ஸ்கிரிப்டை ஏற்றுகிறது, இது தாக்குதலின் இரண்டாம் கட்டத்தைத் தொடங்குகிறது.
உள்ளமைக்கப்பட்ட DDEAUTO புலம் ஷெல்லைத் தொடங்க ரகசியமாக முயற்சிக்கிறது என்ற பாப்-அப் எச்சரிக்கைக்கு Windows க்கு நன்றி
ஸ்கிரிப்டை தானாக இயக்கும் DDEAUTO புலத்துடன் ஒரு மாறுபாட்டைப் பயன்படுத்துவதே பாதிப்பைப் பயன்படுத்துவதற்கான விருப்பமான முறையாகும். திறக்கும் போது வார்த்தை ஆவணம்.
இதற்கு என்ன செய்யலாம் என்று யோசிப்போம்.
ஒரு புதிய ஹேக்கராக, எடுத்துக்காட்டாக, நீங்கள் ஃபிஷிங் மின்னஞ்சலை அனுப்பலாம், நீங்கள் பெடரல் டேக்ஸ் சர்வீஸைச் சேர்ந்தவர் என்று பாசாங்கு செய்து, DDEAUTO புலத்தை PS ஸ்கிரிப்டுடன் முதல் கட்டமாக உட்பொதிக்கலாம் (ஒரு டிராப்பர், முக்கியமாக). நான் செய்ததைப் போல, மேக்ரோக்கள் போன்றவற்றின் உண்மையான குறியீட்டு முறையை நீங்கள் செய்ய வேண்டியதில்லை முந்தைய கட்டுரை.
பாதிக்கப்பட்டவர் உங்கள் ஆவணத்தைத் திறக்கிறார், உட்பொதிக்கப்பட்ட ஸ்கிரிப்ட் செயல்படுத்தப்படுகிறது, மேலும் ஹேக்கர் கணினிக்குள் முடிவடையும். என்னைப் பொறுத்தவரை, ரிமோட் PS ஸ்கிரிப்ட் ஒரு செய்தியை அச்சிடுகிறது, ஆனால் அது PS எம்பயர் கிளையண்டை எளிதாகத் தொடங்கலாம், இது ரிமோட் ஷெல் அணுகலை வழங்கும்.
பாதிக்கப்பட்டவர் எதையும் கூறுவதற்கு முன், ஹேக்கர்கள் கிராமத்தில் பணக்கார இளைஞர்களாக மாறிவிடுவார்கள்.
சிறிதளவு குறியீட்டு முறையும் இல்லாமல் ஷெல் தொடங்கப்பட்டது. ஒரு குழந்தை கூட அதை செய்ய முடியும்!
DDE மற்றும் புலங்கள்
மைக்ரோசாப்ட் பின்னர் வேர்டில் DDE ஐ முடக்கியது, ஆனால் அந்த அம்சம் தவறாகப் பயன்படுத்தப்பட்டது என்று நிறுவனம் கூறுவதற்கு முன்பு இல்லை. எதையும் மாற்ற அவர்கள் தயங்குவது புரிகிறது. எனது அனுபவத்தில், ஒரு ஆவணத்தைத் திறக்கும்போது புலங்களைப் புதுப்பித்தல் இயக்கப்பட்ட ஒரு உதாரணத்தை நானே பார்த்திருக்கிறேன், ஆனால் வேர்ட் மேக்ரோக்கள் ஐடியால் முடக்கப்பட்டன (ஆனால் அறிவிப்பைக் காட்டுகின்றன). மூலம், Word அமைப்புகள் பிரிவில் தொடர்புடைய அமைப்புகளை நீங்கள் காணலாம்.
இருப்பினும், புலம் புதுப்பித்தல் இயக்கப்பட்டிருந்தாலும், மேலே உள்ள DDE இல் உள்ளதைப் போலவே, நீக்கப்பட்ட தரவை ஒரு புலம் அணுகும் போது, மைக்ரோசாஃப்ட் வேர்ட் கூடுதலாக பயனருக்குத் தெரிவிக்கிறது. மைக்ரோசாப்ட் உங்களை எச்சரிக்கிறது.
ஆனால் பெரும்பாலும், பயனர்கள் இந்த எச்சரிக்கையை புறக்கணித்து, வேர்டில் புலங்கள் புதுப்பிப்பை செயல்படுத்துவார்கள். ஆபத்தான DDE அம்சத்தை முடக்கியதற்காக மைக்ரோசாப்ட் நிறுவனத்திற்கு நன்றி தெரிவிக்கும் அரிய வாய்ப்புகளில் இதுவும் ஒன்றாகும்.
இன்று இணைக்கப்படாத விண்டோஸ் சிஸ்டத்தைக் கண்டுபிடிப்பது எவ்வளவு கடினம்?
இந்தச் சோதனைக்காக, மெய்நிகர் டெஸ்க்டாப்பை அணுக AWS பணியிடங்களைப் பயன்படுத்தினேன். இந்த வழியில் நான் இணைக்கப்படாத MS Office மெய்நிகர் இயந்திரத்தைப் பெற்றேன், அது DDEAUTO புலத்தைச் செருக அனுமதித்தது. தேவையான பாதுகாப்பு இணைப்புகளை இன்னும் நிறுவாத பிற நிறுவனங்களையும் இதே வழியில் நீங்கள் காணலாம் என்பதில் எனக்கு எந்த சந்தேகமும் இல்லை.
பொருள்களின் மர்மம்
நீங்கள் இந்த பேட்சை நிறுவியிருந்தாலும், MS ஆபிஸில் வேறு பாதுகாப்பு ஓட்டைகள் உள்ளன, அவை வேர்டில் நாம் செய்ததைப் போலவே ஹேக்கர்கள் செய்ய அனுமதிக்கின்றன. அடுத்த காட்சியில் நாம் கற்றுக்கொள்வோம் எந்த குறியீட்டையும் எழுதாமல் ஃபிஷிங் தாக்குதலுக்கு எக்செல் தூண்டில் பயன்படுத்தவும்.
இந்த சூழ்நிலையைப் புரிந்து கொள்ள, மைக்ரோசாஃப்ட் கூறு பொருள் மாதிரியை நினைவில் கொள்வோம் அல்லது சுருக்கமாக COM (கூறு பொருள் மாதிரி).
COM ஆனது 1990 களில் இருந்து உள்ளது, மேலும் RPC தொலைநிலை செயல்முறை அழைப்புகளின் அடிப்படையில் "மொழி-நடுநிலை, பொருள் சார்ந்த கூறு மாதிரி" என வரையறுக்கப்படுகிறது. COM சொற்களின் பொதுவான புரிதலுக்கு, படிக்கவும் இந்த இடுகை StackOverflow இல்.
அடிப்படையில், நீங்கள் COM பயன்பாட்டை எக்செல் அல்லது வேர்ட் எக்ஸிகியூட்டபிள் அல்லது இயங்கும் வேறு சில பைனரி கோப்பாக நினைக்கலாம்.
ஒரு COM பயன்பாடும் இயங்க முடியும் என்று மாறிவிடும் காட்சி - ஜாவாஸ்கிரிப்ட் அல்லது விபிஸ்கிரிப்ட். தொழில்நுட்ப ரீதியாக இது அழைக்கப்படுகிறது ஸ்கிரிப்ட்லெட். விண்டோஸில் கோப்புகளுக்கான .sct நீட்டிப்பை நீங்கள் பார்த்திருக்கலாம் - இது ஸ்கிரிப்ட்லெட்டுகளுக்கான அதிகாரப்பூர்வ நீட்டிப்பாகும். அடிப்படையில், அவை எக்ஸ்எம்எல் ரேப்பரில் சுற்றப்பட்ட ஸ்கிரிப்ட் குறியீடு:
<?XML version="1.0"?>
<scriptlet>
<registration
description="test"
progid="test"
version="1.00"
classid="{BBBB4444-0000-0000-0000-0000FAADACDC}"
remotable="true">
</registration>
<script language="JScript">
<![CDATA[
var r = new ActiveXObject("WScript.Shell").Run("cmd /k powershell -c Write-Host You have been scripted!");
]]>
</script>
</scriptlet>
ஹேக்கர்கள் மற்றும் பெண்டெஸ்டர்கள் விண்டோஸில் COM பொருள்களை ஏற்கும் தனித்தனியான பயன்பாடுகள் மற்றும் பயன்பாடுகள் மற்றும் அதற்கேற்ப ஸ்கிரிப்ட்லெட்டுகள் இருப்பதைக் கண்டறிந்துள்ளனர்.
pubprn எனப்படும் VBS இல் எழுதப்பட்ட Windows பயன்பாட்டிற்கு நான் ஒரு ஸ்கிரிப்ட்லெட்டை அனுப்ப முடியும். இது C:Windowssystem32Printing_Admin_Scripts இன் ஆழத்தில் அமைந்துள்ளது. மூலம், பொருட்களை அளவுருக்களாக ஏற்றுக்கொள்ளும் பிற விண்டோஸ் பயன்பாடுகள் உள்ளன. முதலில் இந்த உதாரணத்தைப் பார்ப்போம்.
அச்சு ஸ்கிரிப்ட்டிலிருந்து கூட ஷெல் தொடங்கப்படுவது மிகவும் இயல்பானது. மைக்ரோசாப்ட் செல்லுங்கள்!
ஒரு சோதனையாக, நான் ஒரு எளிய ரிமோட் ஸ்கிரிப்ட்லெட்டை உருவாக்கினேன், அது ஷெல்லைத் துவக்கி, “நீங்கள் இப்போதுதான் ஸ்கிரிப்ட் செய்யப்பட்டிருக்கிறீர்கள்!” என்ற வேடிக்கையான செய்தியை அச்சிடுகிறது. முக்கியமாக, pubprn ஒரு ஸ்கிரிப்ட்லெட் பொருளைத் துரிதப்படுத்துகிறது, VBScript குறியீட்டை ரேப்பரை இயக்க அனுமதிக்கிறது. இந்த முறை உங்கள் கணினியில் பதுங்கி மறைந்து கொள்ள விரும்பும் ஹேக்கர்களுக்கு தெளிவான நன்மையை வழங்குகிறது.
அடுத்த பதிவில், எக்செல் விரிதாள்களைப் பயன்படுத்தி ஹேக்கர்களால் COM ஸ்கிரிப்ட்லெட்டுகளை எப்படிப் பயன்படுத்த முடியும் என்பதை விளக்குகிறேன்.
உங்கள் வீட்டுப்பாடத்திற்கு, பாருங்கள் இந்த வீடியோ Derbycon 2016 இல் இருந்து, இது ஹேக்கர்கள் ஸ்கிரிப்ட்லெட்டுகளை எவ்வாறு பயன்படுத்தினார்கள் என்பதை சரியாக விளக்குகிறது. மேலும் படிக்கவும் இந்த கட்டுரை ஸ்கிரிப்ட்லெட்டுகள் மற்றும் ஒருவித மோனிகர் பற்றி.