இதயக்கசிவு: திருத்தங்களுக்கு இடையிலான வேறுபாடு

கட்டற்ற கலைக்களஞ்சியமான விக்கிப்பீடியாவில் இருந்து.
உள்ளடக்கம் நீக்கப்பட்டது உள்ளடக்கம் சேர்க்கப்பட்டது
*விரிவாக்கம்*
→‎நடத்தை: *விரிவாக்கம்*
வரிசை 10: வரிசை 10:
ஆர். எவ்வு. சி. 6520 இதயத்துடிப்பு நீட்சியானது போக்குவரத்து அடுக்குப் பாதுகாப்பு/தரவேட்டுப் போக்குவரத்து அடுக்குப் பாதுகாப்புக் (''TLS/DTLS'') காப்புத் தொடர்பாடல் இணைப்புகளைச் சோதிக்கப் பயன்படுகின்றது. இதன்போது, ஒரு முனையில் இணைக்கப்பட்டுள்ள [[கணினி]]யானது, 16-நுண்மி [[முழு எண்]] நீளம் கொண்ட தரவை (பொதுவாக, ஓர் உரைச்சரம்) உள்ளடக்கிய ஓர் இதயத்துடிப்புச் செய்தியை அனுப்பிவைக்கும். செய்தியைப் பெறும் கணினியும் அதே தரவை அனுப்பிய கணினிக்கு அனுப்பவேண்டும்.
ஆர். எவ்வு. சி. 6520 இதயத்துடிப்பு நீட்சியானது போக்குவரத்து அடுக்குப் பாதுகாப்பு/தரவேட்டுப் போக்குவரத்து அடுக்குப் பாதுகாப்புக் (''TLS/DTLS'') காப்புத் தொடர்பாடல் இணைப்புகளைச் சோதிக்கப் பயன்படுகின்றது. இதன்போது, ஒரு முனையில் இணைக்கப்பட்டுள்ள [[கணினி]]யானது, 16-நுண்மி [[முழு எண்]] நீளம் கொண்ட தரவை (பொதுவாக, ஓர் உரைச்சரம்) உள்ளடக்கிய ஓர் இதயத்துடிப்புச் செய்தியை அனுப்பிவைக்கும். செய்தியைப் பெறும் கணினியும் அதே தரவை அனுப்பிய கணினிக்கு அனுப்பவேண்டும்.


ஊறுபட்ட ஓப்பன் எசு. எசு. எல். பதிப்புகள் தரவின் அளவின் அடிப்படையில் நினைவகத் தாங்ககத்தை (''Memory buffer'')) ஒதுக்காமல், வேண்டுகோள் செய்தியில் குறிப்பிடப்பட்டுள்ள நீளத்தின் அடிப்படையில் நினைவகத் தாங்ககத்தை ஒதுக்குகின்றன. சரிவர எல்லைகளைச் சரிபார்க்காததால், மீண்டும் பெறப்படும் செய்தியானது அனுப்பப்பட்ட தரவையும், அதற்கு மேலதிகமாக ஒதுக்கப்பட்ட நினைவகத் தாங்ககத்தில் இருந்த வேறு தரவையும் கொண்டிருக்கக்கூடும்.
ஊறுபட்ட ஓப்பன் எசு. எசு. எல். பதிப்புகள் தரவின் அளவின் அடிப்படையில் நினைவகத் தாங்ககத்தை (''Memory buffer'') ஒதுக்காமல், வேண்டுகோள் செய்தியில் குறிப்பிடப்பட்டுள்ள நீளத்தின் அடிப்படையில் நினைவகத் தாங்ககத்தை ஒதுக்குகின்றன. சரிவர எல்லைகளைச் சரிபார்க்காததால், மீண்டும் பெறப்படும் செய்தியானது அனுப்பப்பட்ட தரவையும், அதற்கு மேலதிகமாக ஒதுக்கப்பட்ட நினைவகத் தாங்ககத்தில் இருந்த வேறு தரவையும் கொண்டிருக்கக்கூடும்.


=== ஊறுபட்ட ஓப்பன் எசு. எசு. எல். நிறுவல்கள் ===
=== ஊறுபட்ட ஓப்பன் எசு. எசு. எல். நிறுவல்கள் ===


1.0.1 தொடக்கம் 1.0.1எவ்வு வரையான ஓப்பன் எசு. எசு. எல். பதிப்புகள் இதயக்கசிவால் ஊறுபட்டுள்ளன. இப்பதிப்புகளின் நிறுவல்கள் ''-DOPENSSL_NO_HEARTBEATS'' என்று தொகுக்கப்பட்டாலேயொழிய, இதயக்கசிவுக்காளாகக்கூடும்.
1.0.1 தொடக்கம் 1.0.1எவ்வு வரையான ஓப்பன் எசு. எசு. எல். பதிப்புகள் இதயக்கசிவால் ஊறுபட்டுள்ளன. இப்பதிப்புகளின் நிறுவல்கள் ''-DOPENSSL_NO_HEARTBEATS'' என்று தொகுக்கப்பட்டாலேயொழிய, இதயக்கசிவுக்காளாகக்கூடும்.

==== ஊறுபட்ட நிரல்களும் சார்புகளும் ====

t1_lib.c, d1_both.c ஆகிய நிரல் மூலக்கோப்புகளும் tls1_process_heartbeat(), dtls1_process_heartbeat() ஆகிய சார்புகளும் ஊறுபட்டுள்ளன.

=== ஒட்டு ===

தேவைக்கதிகமான தரவைக் கேட்கும் இதயத்துடிப்புச் செய்திகளைப் புறக்கணிப்பதன் மூலம் இச்சிக்கலைத் தீர்க்கமுடியும்.

ஓப்பன் எசு. எசு. எல். பதிப்பு 1.01சியில் (1.01g) சில எல்லைகளைச் சரிபார்ப்பதன் மூலம் இத்தவறு தவிர்க்கப்படுகின்றது. ஓர் இதயத்துடிப்பு வேண்டுகோளானது இதயக்கசிவை ஏற்படுத்துமா என்று பார்க்க, பின்வரும் சோதனை அறிமுகப்படுத்தப்பட்டது.
<source lang="c">
if (1 + 2 + payload + 16 > s->s3->rrec.length) return 0; /* ஆர். எவ்வு. சி. 6520 பகுதி 4 இற்கு ஏற்ப அமைதியாகப் புறக்கணி */
</source>


== மேற்கோள்கள் ==
== மேற்கோள்கள் ==

15:56, 19 மே 2018 இல் நிலவும் திருத்தம்

இதயக்கசிவைக் குறித்துநிற்கும் சின்னம். பாதுகாப்பு நிறுவனமான கோடுநோமிக்கோன் (Codenomicon) மக்களிடையே விழிப்புணர்வை ஏற்படுத்துவதற்காக இச்சின்னத்தை அறிமுகப்படுத்தியது.[1]

இதயக்கசிவு (Heartbleed) என்பது ஓப்பன் எசு. எசு. எல். மறையீட்டியல் நூலகத்தில் கண்டறியப்பட்ட ஒரு பாதுகாப்புத் தவறு ஆகும். 2012 இல் மென்பொருளினுள் கொண்டுவரப்பட்ட இத்தவறு குறித்து 2014 ஏப்பிரலில் அறிவிக்கப்பட்டது. தாக்குதலுக்குள்ளாகக்கூடிய ஓப்பன் எசு. எசு. எல். நிரலானது போக்குவரத்து அடுக்குப் பாதுகாப்பு (Transport Layer Security) வழங்கியாகவோ வாங்கியாகவோ எவ்வாறு இயங்கினாலும் இதயக்கசிவைச் செயற்படுத்தமுடியும். போக்குவரத்து அடுக்குப் பாதுகாப்பு இதயத்துடிப்பு (Heartbeat) நீட்சியைச் செய்முறைப்படுத்தும்போது, உள்ளீட்டுச் செல்லுபடியாக்கத்தில் எல்லைகளைச் சரிபார்க்காததால் இத்தவறு ஏற்படுகின்றது. இதன் காரணமாக, இத்தவற்றுக்கு இதயக்கசிவு என்ற பெயர் வழங்கப்பட்டது.

இதயக்கசிவு குறித்து அறிவிக்கப்பட்ட அதே நாளான ஏப்பிரல் 7, 2014 அன்றே திருத்திய ஓப்பன் எசு. எசு. எல். பதிப்பும் வெளியிடப்பட்டது. ஓப்பன் எசு. எசு. எல். தவிர்ந்த ஏனைய போக்குவரத்து அடுக்குப் பாதுகாப்புச் செய்முறைப்படுத்தல்களான குனு தி. எல். எசு, மொசில்லாவின் வலையமைப்புப் பாதுகாப்புச் சேவைகள், விண்டோசின் போக்குவரத்து அடுக்குப் பாதுகாப்புச் செய்முறைப்படுத்தல் போன்றவற்றில் இத்தவறு நிகழவில்லை. ஏனெனில், ஓப்பன் எசு. எசு. எல். செய்முறைப்படுத்தலிலே தவறு இருந்ததேயொழிய, நெறிமுறையில் தவறு இருக்கவில்லை.

நடத்தை

ஆர். எவ்வு. சி. 6520 இதயத்துடிப்பு நீட்சியானது போக்குவரத்து அடுக்குப் பாதுகாப்பு/தரவேட்டுப் போக்குவரத்து அடுக்குப் பாதுகாப்புக் (TLS/DTLS) காப்புத் தொடர்பாடல் இணைப்புகளைச் சோதிக்கப் பயன்படுகின்றது. இதன்போது, ஒரு முனையில் இணைக்கப்பட்டுள்ள கணினியானது, 16-நுண்மி முழு எண் நீளம் கொண்ட தரவை (பொதுவாக, ஓர் உரைச்சரம்) உள்ளடக்கிய ஓர் இதயத்துடிப்புச் செய்தியை அனுப்பிவைக்கும். செய்தியைப் பெறும் கணினியும் அதே தரவை அனுப்பிய கணினிக்கு அனுப்பவேண்டும்.

ஊறுபட்ட ஓப்பன் எசு. எசு. எல். பதிப்புகள் தரவின் அளவின் அடிப்படையில் நினைவகத் தாங்ககத்தை (Memory buffer) ஒதுக்காமல், வேண்டுகோள் செய்தியில் குறிப்பிடப்பட்டுள்ள நீளத்தின் அடிப்படையில் நினைவகத் தாங்ககத்தை ஒதுக்குகின்றன. சரிவர எல்லைகளைச் சரிபார்க்காததால், மீண்டும் பெறப்படும் செய்தியானது அனுப்பப்பட்ட தரவையும், அதற்கு மேலதிகமாக ஒதுக்கப்பட்ட நினைவகத் தாங்ககத்தில் இருந்த வேறு தரவையும் கொண்டிருக்கக்கூடும்.

ஊறுபட்ட ஓப்பன் எசு. எசு. எல். நிறுவல்கள்

1.0.1 தொடக்கம் 1.0.1எவ்வு வரையான ஓப்பன் எசு. எசு. எல். பதிப்புகள் இதயக்கசிவால் ஊறுபட்டுள்ளன. இப்பதிப்புகளின் நிறுவல்கள் -DOPENSSL_NO_HEARTBEATS என்று தொகுக்கப்பட்டாலேயொழிய, இதயக்கசிவுக்காளாகக்கூடும்.

ஊறுபட்ட நிரல்களும் சார்புகளும்

t1_lib.c, d1_both.c ஆகிய நிரல் மூலக்கோப்புகளும் tls1_process_heartbeat(), dtls1_process_heartbeat() ஆகிய சார்புகளும் ஊறுபட்டுள்ளன.

ஒட்டு

தேவைக்கதிகமான தரவைக் கேட்கும் இதயத்துடிப்புச் செய்திகளைப் புறக்கணிப்பதன் மூலம் இச்சிக்கலைத் தீர்க்கமுடியும்.

ஓப்பன் எசு. எசு. எல். பதிப்பு 1.01சியில் (1.01g) சில எல்லைகளைச் சரிபார்ப்பதன் மூலம் இத்தவறு தவிர்க்கப்படுகின்றது. ஓர் இதயத்துடிப்பு வேண்டுகோளானது இதயக்கசிவை ஏற்படுத்துமா என்று பார்க்க, பின்வரும் சோதனை அறிமுகப்படுத்தப்பட்டது.

if (1 + 2 + payload + 16 > s->s3->rrec.length) return 0; /* ஆர். எவ்வு. சி. 6520 பகுதி 4 இற்கு ஏற்ப அமைதியாகப் புறக்கணி */

மேற்கோள்கள்

  1. John Biggs (2014 ஏப்ரல் 9). "Heartbleed, The First Security Bug With A Cool Logo". TechCrunch. பார்க்கப்பட்ட நாள் 2018 மே 19. {{cite web}}: Check date values in: |accessdate= and |date= (help)
"https://ta.wikipedia.org/w/index.php?title=இதயக்கசிவு&oldid=2526640" இலிருந்து மீள்விக்கப்பட்டது