තත්ත්වය
ඇපල් විසින් ෂෙල්ෂොක් සහ ඒ හා සම්බන්ධ අනාරක්ෂිතතාවයන් සඳහා වන බාෂ් ආරක්ෂණ විසඳුම් " ඕඑස් එක්ස් බාෂ් යාවත්කාලීන 1.0 " ලෙස නිකුත් කර ඇත. OS X මවුන්ටන් ලයන් v10.8.5 හෝ OS X Mavericks v10.9.5 භාවිතා කරන පුද්ගලයින් සඳහා සාමාන්ය පද්ධති යාවත්කාලීන කිරීම් හරහා ඒවා ස්ථාපනය කළ හැකිය (ඒවා ආරක්ෂක යාවත්කාලීන 2014-005 හි ඇතුළත් කර ඇත ) තවද ඒවා අතින් ස්ථාපනය කළ හැකිය. නිල ඇපල් විසඳුම් OS X Lion v10.7.5 සහ OS X Lion Server v10.7.5 සඳහා ද ලබා ගත හැකි නමුත් ඒවා ලබා ගත හැක්කේ අතින් බාගත කිරීමෙන් පමණි. මෙහෙයුම් පද්ධති අනුවාදය මත පදනම්ව ආරක්ෂක විසඳුම් විවිධ URL හරහා ලබා ගත හැකිය:
(නව පැච් නිකුත් කරන්නේ නම්, ඒවා මෙහි තබන්න, නමුත් කරුණාකර මෙම පවතින ඒවා යොමු කිරීම සඳහා තබා ගන්න.)
ඇපල් පැච් ෂෙල්ෂොක් සහ තවත් අවදානම් කිහිපයක් ගැන සැලකිලිමත් වන අතර බොහෝ මිනිසුන්ට එය කදිමයි. tl; dr මිනිසුන්ට මෙහි කියවීම නැවැත්විය හැකිය.
කෙසේ වෙතත්, ෂෙල්ෂොක් දෝෂය නිසා ඇති වූ අවධානය බොහෝ පර්යේෂකයන් විසින් බැෂ් දෙස දැඩි ලෙස බැලීමට හේතු වී ඇති අතර වැඩි වැඩියෙන් (සූරාකෑමට අසීරු) අවදානම් සොයාගෙන ඇත. ඔබ ආරක්ෂාව ගැන දැඩි සැලකිල්ලක් දක්වන්නේ නම් (සමහර විට ඔබ ප්රසිද්ධියේ ලබා ගත හැකි වෙබ් අඩවියක් සත්කාරකත්වය සැපයීම සඳහා OS X සේවාදායකය ධාවනය කරමින් සිටින නිසා) එවිට ඔබට අවශ්ය වන්නේ අනාරක්ෂිත බව සහ පැච් එක දිගටම පවත්වා ගෙන යාමයි. එසේ නොමැති නම්, ඒ ගැන කරදර නොවන්න.
අනාගතයේ දී තව දුරටත් අවදානම් සොයා ගැනීම සඳහා දූවිලි සමනය වන විට ඇපල් තවත් යාවත්කාලීනයක් නිකුත් කිරීමට බලා සිටින්න.
CVE-2014-6271 සහ CVE-2014-7169 යන දෙකම නිවැරදි කරන, බාෂ් 3.2, පැච් 52, 53, සහ 54 (බාෂ් 4.3 පැච් 25, 26, සහ 27 ට අනුරූප වන) සඳහා නිල පැච් කට්ටලයක් තිබේ. පහත දැක්වෙන 'ගේම් ඕවර්' ද ප්රදර්ශනය කෙරේ. මෙය මා විසින් පරීක්ෂා කර ඇති අතර ( ඇල්බ්ලූ ) ලිපිය ඒ අනුව යාවත්කාලීන කර ඇත (පසුව අමතර යාවත්කාලීන කිරීම් සිදු කරන ලදි: 54 වන පැච් එකේ නතර වන තනතුර සඳහා 41 වන සංශෝධනය බලන්න ).
බාෂ් වලට එරෙහිව තවත් බොහෝ අවදානම් වාර්තා වී ඇත. මයිකල් සාලෙව්ස්කිගේ පෝස්ටයට අනුව ඔබට පැච් 54 (සහ අනුමාන වශයෙන් ඇපල්ගේ නිල පැච්) තිබේ නම් "මෙම තනි දෝෂ වල තත්වය පිළිබඳව නිරීක්ෂණය කිරීමෙන් පලක් නැත, මන්ද ඒවා තවදුරටත් ආරක්ෂක අවදානමක් නොවිය යුතුය:"
CVE-2014-6271 - ස්ටීවන් විසින් සොයාගත් මුල් RCE. Bash43-025 මගින් ස්ථාවර කර ඇති අතර අනෙකුත් අනුවාද සඳහා අනුරූප සැප්තැම්බර් 24 ඇතුළත් කිරීම්.
CVE-2014-7169 - ටාවිස් විසින් ගොනු නිර්මාණය / ටෝකන් පරිභෝජන දෝෂය. ස්ථාවර කරන ලද්දේ bash43-026 & co (සැප්තැම්බර් 26)
CVE-2014-7186 - ෆ්ලෝරියන් සහ ටොඩ් විසින් සොයාගත් තත්පර 10 ක අවදානමක් නැති ඩොක් කඩාවැටීමක්. ස්ථාවර කර ඇත්තේ bash43-028 & co (ඔක්තෝබර් 1).
CVE-2014-7187 - ෆ්ලෝරියන් විසින් සොයා නොගත්, බොහෝ විට තත්පරයට අවදානමක් නැති, අනතුරක් නොවන. ස්ථාවර කර ඇත්තේ bash43-028 & co (ඔක්තෝබර් 1).
CVE-2014-6277 - ආරම්භ නොකළ මතක නිකුතුව, නිසැකවම මයිකල් සාලෙව්ස්කි විසින් සොයා ගන්නා ලද RCE. නිශ්චිත පැච් එකක් තවම නැත.
CVE-2014-6278 - විධාන එන්නත් RCE මයිකල් සාලෙව්ස්කි විසින් සොයා ගන්නා ලදී. නිශ්චිත පැච් එකක් තවම නැත.
එය අවුල් සහගතය. වාසනාවකට මෙන්, නිල බාෂ් නඩත්තුකරු චෙට් රමී, සිතියම් ගත කිරීම සඳහා සීවීඊ එකක් පළ කළේය . ඔහුගේ පෝස්ට් එකෙන් දැක්වෙන්නේ බාෂ් 4.3 සඳහා වන පැච් ය, මම (ඕල්ඩ්ප්රෝ) ඒවා බාෂ් 3.2 සඳහා පැච් වලට පරිවර්තනය කර ඇති අතර එය ඕඑස් එක්ස් සඳහා අදාළ වේ. එසේම, මෙම තනතුරේ සිට ඔහු පැච් 57 නිකුත් කර ඇත, එබැවින් මම පහත දැක්වුවෙමි:
bash32-052 CVE-2014-6271 2014-09-24
bash32-053 CVE-2014-7169 2014-09-26
bash32-054 exported function namespace change 2014-09-27 ("Game Over")
bash32-055 CVE-2014-7186/CVE-2014-7187 2014-10-01
bash32-056 CVE-2014-6277 2014-10-02
bash32-057 CVE-2014-6278 2014-10-05
කාලරාමුවකට සහ වැඩි විස්තර සඳහා ඩේවිඩ් ඒ. වීලර්ගේ ලිපිය බලන්න .
ඇල්බ්ලූ විසින් පැච් 55 හරහා ගොඩනැගීමේ උපදෙස් පළ කරන ලදී. මම (ඕල්ඩ්ප්රෝ) උපදෙස් සඳහා පැච් 56 සහ 57 එකතු කළ නමුත් එය පරීක්ෂා කර නැත.
මුල් අවදානම සඳහා පරීක්ෂා කිරීම
මෙම පරීක්ෂණය ක්රියාත්මක කිරීමෙන් CVE-2014-6271 හි මුල් ගැටලුවට ඔබ ගොදුරු විය හැකිදැයි ඔබට තීරණය කළ හැකිය :
$ env x='() { :;}; echo vulnerable' bash -c 'echo hello'
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
hello
ඉහත ප්රතිදානය අනාරක්ෂිත bash
අනුවාදයකට උදාහරණයකි . vulnerable
එම විධානයේ ප්රතිදානයේ ඔබ වචනය දුටුවහොත් ඔබේ bash
අවදානමට ලක්විය හැකි අතර ඔබ යාවත්කාලීන කළ යුතුය. පහත දැක්වෙන්නේ OS X 10.8.5 හි අවදානමට ලක්විය හැකි අනුවාදයකි:
නව අවදානම සඳහා පරීක්ෂා කිරීම
ක වී ඇත මුල් තනතුරට යාවත්කාලීන හා බෑෂ් 3.2.52 (1) තවමත්, නිර්වචනය කර ඇති අනාරක්ෂිත තත්ත්වය පිළිබඳ විචලනය ගොදුරුවන CVE-2014-7169
$ rm -f echo
$ env X='() { (a)=>\' sh -c "echo date"; cat echo
sh: X: line 1: syntax error near unexpected token `='
sh: X: line 1: `'
sh: error importing function definition for `X'
Thu 25 Sep 2014 08:50:18 BST
ඉහත ප්රතිදානය අවදානමට ලක්විය හැකි bash
අනුවාදයකට උදාහරණයකි . එම විධානයේ ප්රතිදානයේ දිනයක් ඔබ දුටුවහොත් ඔබේ bash
අවදානමට ලක්විය හැකිය.
"ගේම් ඕවර්" වැළැක්වීම සඳහා ස්වයංක්රීයව ආනයනය කළ කාර්යයන් අක්රීය කිරීම
පර්යේෂකයන් සඳහන් කළේ, එය අවදානමක් ලෙස වර්ගීකරණය නොකර, ස්වයංක්රීයව ආනයනය කරන ලද ශ්රිත භාවිතා කරමින් ස්ක්රිප්ටයකට උප කුලකයක ශ්රිතයක් පැහැර ගත හැකි බවයි:
$ env ls="() { echo 'Game Over'; }" bash -c ls
Game over
බලපෑමට ලක්වූ පද්ධතියක ඉහත කේතය Game Over
ඔබ අපේක්ෂා කරන නාමාවලි ලැයිස්තු වෙනුවට පෙන්වනු ඇත ls
. නිසැකවම, echo 'Game Over'
ඔබට අවශ්ය ඕනෑම අශෝභන කේතයකින් එය ප්රතිස්ථාපනය කළ හැකිය. මෙය "ගේම් ඕවර්" දෝෂය ලෙස දැන ගන්නා ලදී.
පැච් 54 ලබා ගැනීමට පෙර, නෙට්බීඑස්ඩී සහ ෆ්රීබීඑස්ඩී යන දෙකම ස්වයංක්රීයව ආනයනය කරන බාෂ් කාර්යයන් පෙරනිමියෙන් අක්රීය කර ඇත, අර්ධ වශයෙන් “ගේම් ඕවර්” වැළැක්වීම සඳහා වන නමුත් ප්රධාන වශයෙන් පාර්සර් ( CVE-2014-7169 වැනි ) හි තවදුරටත් දෝෂ අඩංගු වේ. අඛණ්ඩව සොයා ගන්නා අතර නව විධාන රේඛා ධජයක් එක් කරන ලදි--import-functions
පැරණි පෙරනිමි හැසිරීම නැවත සක්රීය කිරීමට. මම (ඇල්බ්ලූ) අනෙක් අයට මෙම හැසිරීම අනුගමනය කිරීමට අවශ්ය නම් එය භාවිතා කිරීමට පැච් එකක් (3.2.53 ට එරෙහිව) සකස් කර ඇති අතර එය පහත ඇතුළත් කර ඇත. පෙරනිමියෙන් මෙම පැච් එක පහත බිල්ඩ් ස්ක්රිප්ට් තුළ සක්රීය නොවේ. මම (d ඕල්ඩ්ප්රෝ) විශ්වාස කරන්නේ මෙම පැච් එක තවදුරටත් අවශ්ය නොවන බවයි. මන්දයත් එය පසුපසට ගැළපෙන ආකාරය හා එය ආරක්ෂා කරන අනාරක්ෂිතතාවයන් පැච් 54 සහ ඊට පෙර පැච් මගින් ඉතා හොඳින් ආමන්ත්රණය කර ඇති අතර මෙම නිල නොවන පැච් සක්රීය කිරීමෙන් අනාගත පැච් යෙදීම වළක්වයි. .
(ප්රශ්න සංස්කාරකවරුන්ට සටහන; කරුණාකර මෙය නිල නොවන පැච් එකක් බැවින් පෙරනිමියෙන් මෙය සක්රීය නොකරන්න.)
a0c5c4d66742fddd0a35001cb91798a5fbf8a2f5 import_functions.patch
export ADD_IMPORT_FUNCTIONS_PATCH=YES
ගොඩනැගීම ක්රියාත්මක කිරීමට පෙර ධාවනය කිරීමෙන් පැච් සක්රීය කළ හැකිය . බව සටහන මෙම ලප හැකියාව ලප 54 සහ ඕනෑම අනාගත පැච් අක්රීය කරනු ඇත අනාගතය පැච් නිල නොවන ලප අනුකූල වනු සහතික කළ නොහැකි නිසා ය.
ඇපල් පැච් හි ගේම් ඕවර් අනාරක්ෂිත බවක් ඇත
ට්විටර් හි @ake_____ විසින් පෙන්වා දී ඇති පරිදි , නිල ඇපල් පැච් තවමත් ක්රියාත්මක කළ හැකි පරිසර පරිසරයට ගොදුරු විය හැකිය:
$ env '__BASH_FUNC<ls>()'="() { echo Game Over; }" bash -c ls
Game Over
මෙය කොතරම් වැදගත්ද යන්න පරිශීලකයින් විසින්ම තීරණය කළ යුතුය. මම (d ඕල්ඩ්ප්රෝ) සිතන්නේ මෙම හැසිරීම ගැන දන්නා සූරාකෑමක් නොමැති නිසා (එයට සීවීඊ හදුනාගැනීමක් පවා ලබා දී නැත) මන්දයත් පොදුවේ නුසුදුසු දුරස්ථ ප්රහාරකයන්ට පරිසර විචල්යයක නමක් සැකසිය නොහැකි අතර වරප්රසාද ඇති ප්රහාරකයින්ට එය කළ නොහැකි බැවිනි. ඔවුන්ට දැනටමත් නොමැති වරප්රසාද ලබා ගැනීමට මෙය භාවිතා කරන්න (අවම වශයෙන් අතිරේක අවදානමක් උපයෝගී කර නොගෙන).
කුඩා පසුබිමක් සැපයීම සඳහා, කාර්යයන් නිර්වචනය කිරීමට bash මඟින් ඉඩ ලබා දෙන අතර, තවද එම කාර්යයන්export -f
විධානය හරහා උප-ෂෙල් වෙත අපනයනය කිරීමට ඉඩ ලබා දේ . මෙය ක්රියාවට නැංවීමට භාවිතා කරනුයේ ශ්රිතයට සමාන නමක් සහිත පරිසර විචල්යයක් ශ්රිත අර්ථ දැක්වීමට සකසා ඇති නිසාය. ඒ නිසා
$ ls () { echo 'Game Over'; }
$ export -f ls
$ echo $ls
Game Over
මෙය සිදු වූයේ export -f ls
පරිසර විචල්යයක් නම් කර ඇති ls
බැවිනි. “ගේම් ඕවර්” අවදානම නම්, ශ්රිතය මුලින් නිර්වචනය නොකර ඔබට මෙම පරිසර විචල්යය කෙලින්ම නිර්මාණය කළ හැකි අතර එයින් අදහස් කළේ ඔබට නිවැරදි විචල්ය නාමයක් එන්නත් කළ හැකි නම් ඔබට විධානයක් පැහැර ගත හැකි බවයි. නිවැරදි නම සහිත විචල්යයක් නිර්මාණය කිරීම දුෂ්කර කරමින් ඇපල් මෙය නිවැරදි කිරීමට උත්සාහ කළේය. නිල බැෂ් පැච් 54 ඇත්ත වශයෙන්ම විචල්ය නාමයක් භාවිතා කරමින් විචල්ය නාමයක් භාවිතා කරමින් විචල්ය නාමයක් භාවිතා කිරීමෙන් විචල්ය නාමයක් භාවිතා කිරීමට නොහැකි වන %
අතර අපනයන ශ්රිත අර්ථ දැක්වීම් වෙනත්, වෙන් කළ නාම අවකාශයක effectively ලදායී ලෙස තබයි.
ඉහත කිසිවක් ඔබට තේරෙන්නේ නැත්නම්, ඒ ගැන කරදර නොවන්න. ඔබ දැනට ඇපල් පැච් සමඟ හොඳයි.
පද්ධති ද්විමය
OS X 10.9.5 (මේ මොහොතේ නවතම ස්ථාවර නිකුතුව) Bash v3.2.51 සමඟ නැව්ගත කරයි:
$ bash --version
GNU bash, version 3.2.51(1)-release (x86_64-apple-darwin13)
Copyright (C) 2007 Free Software Foundation, Inc.
ඔබට Xcode ස්ථාපනය කර ඇති බව සපයමින් ඔබට පහත පරිදි Bash ලබාගෙන නැවත සකස් කළ හැකිය (සහ xcodebuild
බලපත්රය භාර ගැනීමට අවම වශයෙන් එක් වරක්වත් ධාවනය කර ඇත):
$ # If you want to disable auto-imported functions, uncomment the following
$ # export ADD_IMPORT_FUNCTIONS_PATCH=YES
$ mkdir bash-fix
$ cd bash-fix
$ curl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf -
$ cd bash-92/bash-3.2
$ curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-052 | patch -p0
$ curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-053 | patch -p0
$ # See note above about ADD_IMPORT_FUNCTIONS_PATCH
$ [ "$ADD_IMPORT_FUNCTIONS_PATCH" == "YES" ] && curl http://alblue.bandlem.com/import_functions.patch | patch -p0
$ [ "$ADD_IMPORT_FUNCTIONS_PATCH" == "YES" ] || curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-054 | patch -p0
$ [ "$ADD_IMPORT_FUNCTIONS_PATCH" == "YES" ] || curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-055 | patch -p0
$ [ "$ADD_IMPORT_FUNCTIONS_PATCH" == "YES" ] || curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-056 | patch -p0
$ [ "$ADD_IMPORT_FUNCTIONS_PATCH" == "YES" ] || curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-057 | patch -p0
$ cd ..
$ # Note: DO NOT ADD SUDO TO XCODEBUILD HERE
$ xcodebuild
$ build/Release/bash --version # GNU bash, version 3.2.57-release
$ build/Release/sh --version # GNU bash, version 3.2.57-release
$ sudo cp /bin/bash /bin/bash.old
$ sudo cp /bin/sh /bin/sh.old
$ sudo cp build/Release/bash /bin
$ sudo cp build/Release/sh /bin
(සටහන: ඔබ පර්යන්තය වෙත යන්නේ ඉන්පසු ධාවනය, පිටපත්-සහ-අලවමින් ඉහත කේතය වාරණ මෙම ධාවනය කළ හැක pbpaste | cut -c 2- | sh
නමුත් අන්තර්ජාලය අහඹු පිටපත් ධාවනය විට සෑම විටම සැලකිලිමත් ....)
මෙයින් පසු, Bash අනුවාදය v3.2.57 විය යුතුය:
$ bash --version
GNU bash, version 3.2.57-release (x86_64-apple-darwin13)
Copyright (C) 2007 Free Software Foundation, Inc.
ආරක්ෂාව සඳහා, සහ පරීක්ෂා කිරීමෙන් පසුව, chmod -x
පැරණි අනුවාදයන් නැවත භාවිතා නොකරන බවට සහතික කර ගැනීමට හෝ ඒවා උපස්ථ අඩවියකට ගෙනයාමට මම නිර්දේශ කරමි .
$ sudo chmod a-x /bin/bash.old /bin/sh.old
වෙනත් පිළිතුරු වලට මැක්පෝර්ට්ස් හෝ හෝම්බ rew භාවිතා කරන්නන් සඳහා විසඳුම් ඇත; මේවා ගැටළුව විසඳන්නේ නැත, ඔවුන් බාෂ් හි අතිරේක සංස්කරණ ස්ථාපනය කරයි. ඔබට විශේෂයෙන් උත්ශ්රේණිගත කිරීමට අවශ්ය නම් කරුණාකර එම පිළිතුරු බලන්න.
ස්තූතියි
මෙම පැච් ලබා ගත හැකි චෙට් හට ස්තූතියි. මේ පිළිබඳව අදහස් දැක්වූ සහ කාලයත් සමඟ එය වැඩිදියුණු කළ අනෙක් සියල්ලන්ට ස්තූතියි.
දැන් ඇපල් විසින් නියම විසඳුම නිකුත් කර ඇත, මෙය තවමත් ප්රයෝජනවත් විය හැකිය. මක්නිසාද යත් ඔවුන් සිංහයා සහ ඉහළට නිවැරදි කිරීමක් පමණක් නිකුත් කර ඇති අතර නිල පැච් මඟින් 3.2.53 (1) අනුවාදය මුදා හැරීම (x86_64-ඇපල්-ඩාර්වින් 13), කෙසේ වෙතත්, ගේම් ඕවර් බග් තවමත් තරමක් අවදානමට ලක්ව ඇත. මෙම අවස්ථාවෙහිදී, ඔබේම බාෂ් අනුවාදය 3.2.57 ට එරෙහිව නැවත ගොඩනඟා ගැනීම බොහෝ විට ඇපල් පැච් මත යැපීමට වඩා ආරක්ෂිත වේ.