OpenSSL-ի սխալը կոտրել է openSUSE Tumbleweed-ի որոշ հավելվածներ թարմացումից հետո

OpenSSL-ի թարմացում 1.1.1b տարբերակին openSUSE Tumbleweed պահոցում առաջնորդեց к խախտում որոշ հավելվածների կատարում, որոնք կապված են libopenssl-ի հետ և օգտագործելով ռուսերեն կամ ուկրաինական տեղանքները: Խնդիրն առաջացել է այն OpenSSL-ին ավելացնելուց հետո փոփոխություններ սխալ հաղորդագրության բուֆերային մշակիչին (SYS_str_reasons): Բուֆերը սահմանվել էր 4 կիլոբայթով, բայց դա բավարար չէր Unicode-ի որոշ տեղակայման համար:

strerror_r-ի ելքը, որն օգտագործվում է բուֆերը լրացնելու համար, կազմում է 6856 բայթ ռուսերենի համար, իսկ 7000 բայթ ուկրաինական տեղանքի համար: OpenSSL կոդում սկզբում էր ստուգեք արտահոսքի առկայությունը, բայց դա այն ժամանակ է, երբ պոչը կտրված է հաշվի է առել չափը մեկ բայթ ավելի մեծ էր, քան իրական արժեքը, ինչն առաջացրել է մեկ բայթ արտահոսք և խափանում սխալի կոդի տառադարձումները չափազանց երկար բեռնելիս:

Ներկայումս արդեն պատրաստ է ուղղում, բայց դեռ չի ընդունվել։ Նախորդ կայուն տարբերակին վերադառնալու համար (OpenSSL 1.1.0h) կարող եք գործարկել հետևյալ հրամանները.

sudo zypper in tumbleweed-cli
sudo tumbleweed init
sudo tumbleweed switch 20190514
sudo zypper ref && sudo zypper dup && sudo zypper inr

Source: opennet.ru

Добавить комментарий