V OpenBSD zakázali používanie nulových znakov v shell skriptoch

Theo de Raadt pridal zmenu, ktorá zakazuje používanie znaku s nulovým kódom v shell skriptoch spracovávaných predvoleným príkazovým interpretom ksh. Prítomnosť nulových znakov v skriptoch teraz povedie k ukončeniu vykonávania s chybovým výstupom, okrem prípadov, keď sa nachádzajú medzi údajmi, pripojenými na konci súboru za kódom. Zmena je zahrnutá v zostave vetvy OpenBSD-Current, na základe ktorej bude vytvorená verzia OpenBSD 7.6.

Bolo poznamenané, že takáto zmena umožní vylúčiť nejasnosti správania súvisiace s výkonom znaku nula v kóde napísanom v jazyku C, ktorý používa reťazce, kde je nulový bajt použitý na indikáciu konca reťazca. Skúmanie spracovania nulového znaku v rôznych shelloch ukázalo, že v každom z nich sa objavilo jedno alebo viaceré prípady, kedy nulový bajt vo vstupných údajoch alebo obsahu premenných spôsoboval odlišné správanie v porovnaní s inými shellmi; napríklad niektoré shelly ho ignorovali, iné nahrádzali medzerou a niektoré zastavili ďalšie spracovanie skriptu alebo ukončili jeho vykonávanie.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster