{"id":34721,"date":"2019-10-31T22:00:00","date_gmt":"2019-10-31T19:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd\/"},"modified":"2019-10-31T22:00:00","modified_gmt":"2019-10-31T19:00:00","slug":"plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd","title":{"rendered":"Pl\u00e1ny na pos\u00edlen\u00ed mechanismu ochrany W^X v OpenBSD","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Teo De Raadt <noindex><a rel=\"nofollow\" href=\"https:\/\/marc.info\/?l=openbsd-tech&#038;m=155899373514678&#038;w=2\">sd\u00edlel<\/a><\/noindex> pl\u00e1ny na pos\u00edlen\u00ed mechanismu ochrany pam\u011bti W^X (Write XOR Execute). Podstatou mechanismu je, \u017ee str\u00e1nky pam\u011bti procesu nemohou b\u00fdt sou\u010dasn\u011b p\u0159\u00edstupn\u00e9 pro z\u00e1pis a prov\u00e1d\u011bn\u00ed. K\u00f3d m\u016f\u017ee b\u00fdt tedy proveden pouze po zak\u00e1z\u00e1n\u00ed z\u00e1pisu, a z\u00e1pis do str\u00e1nky pam\u011bti je mo\u017en\u00fd pouze po zak\u00e1z\u00e1n\u00ed prov\u00e1d\u011bn\u00ed. Mechanismus W^X pom\u00e1h\u00e1 chr\u00e1nit aplikace v u\u017eivatelsk\u00e9m prostoru p\u0159ed typick\u00fdmi \u00fatoky prov\u00e1d\u011bn\u00fdmi pomoc\u00ed p\u0159ete\u010den\u00ed bufferu, v\u010detn\u011b p\u0159ete\u010den\u00ed z\u00e1sobn\u00edku a je aktivn\u00ed v OpenBSD. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=44506\">ve v\u00fdchoz\u00edm nastaven\u00ed<\/a><\/noindex>.<\/p>\n<p>Od za\u010d\u00e1tku pr\u00e1ce na W^X bylo jasn\u00e9, \u017ee to bude dlouh\u00e1 cesta, jeliko\u017e existuje zna\u010dn\u00e9 mno\u017estv\u00ed aplikac\u00ed vyu\u017e\u00edvaj\u00edc\u00edch JIT. Implementace JIT lze rozd\u011blit do t\u0159\u00ed kategori\u00ed:<\/p>\n<ul>\n<li class=\"l\"> P\u0159ep\u00edn\u00e1n\u00ed pam\u011bti mezi stavy W a X s p\u0159ihl\u00e9dnut\u00edm k \"n\u00e1klad\u016fm\" syst\u00e9mov\u00e9ho vol\u00e1n\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/man.openbsd.org\/mprotect.2\">mprotect<\/a><\/noindex>.\n<li class=\"l\"> Vytv\u00e1\u0159ej\u00edc\u00ed aliasy mezi dvojic\u00ed W a X mapov\u00e1n\u00ed t\u00e9\u017ee pam\u011bti.\n<li class=\"l\"> Nejv\u00edce \"\u0161pinav\u00e1\" varianta \u2014 modely pam\u011bti W|X, umo\u017e\u0148uj\u00edc\u00ed sou\u010dasn\u00e9 prov\u00e1d\u011bn\u00ed z\u00e1pisu a vykon\u00e1v\u00e1n\u00ed.\n<\/ul>\n<p>V sou\u010dasn\u00e9 dob\u011b je v\u00fdrazn\u011b m\u00e9n\u011b program\u016f, kter\u00e9 pou\u017e\u00edvaj\u00ed t\u0159et\u00ed variantu, a v\u00edce takov\u00fdch, kter\u00e9 pou\u017e\u00edvaj\u00ed prvn\u00ed a druhou. Nicm\u00e9n\u011b, proto\u017ee bylo nutn\u00e9 spou\u0161t\u011bt tak\u00e9 programy s W|X JIT (p\u0159edev\u0161\u00edm Chromium a Iridum), byla p\u0159id\u00e1na mo\u017enost p\u0159ipojen\u00ed souborov\u00e9ho syst\u00e9mu \"wxallowed\", kter\u00e1 umo\u017enila pou\u017e\u00edvat pam\u011b\u0165 sou\u010dasn\u011b pro z\u00e1pis i vykon\u00e1v\u00e1n\u00ed, pokud je vykon\u00e1van\u00fd ELF soubor ozna\u010den zna\u010dkou \"wxneeded\", a samotn\u00e9 aplikace byly nav\u00edc chr\u00e1n\u011bny pomoc\u00ed mechanism\u016f. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=43295\">pledge<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=49042\">unveil<\/a><\/noindex> pro omezen\u00ed seznamu pou\u017e\u00edvan\u00fdch syst\u00e9mov\u00fdch vol\u00e1n\u00ed a dostupn\u00fdch \u010d\u00e1st\u00ed souborov\u00e9ho syst\u00e9mu pro aplikaci.<\/p>\n<p>Pro dal\u0161\u00ed zt\u00ed\u017een\u00ed vyu\u017e\u00edv\u00e1n\u00ed zranitelnost\u00ed v takov\u00fdch aplikac\u00edch bylo navr\u017eeno dopln\u011bn\u00ed mechanismu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48243\">MAP_STACK<\/a><\/noindex>, kter\u00e9 kontroluje, zda je syst\u00e9mov\u00e9 vol\u00e1n\u00ed vykon\u00e1v\u00e1no z dostupn\u00e9 str\u00e1nky pam\u011bti pro z\u00e1pis. Pokud je str\u00e1nka dostupn\u00e1 pro z\u00e1pis, proces je n\u00e1siln\u011b ukon\u010den. T\u00edmto zp\u016fsobem \u00fato\u010dn\u00edk nebude schopen pou\u017e\u00edvat syst\u00e9mov\u00e1 vol\u00e1n\u00ed a bude nucen se sna\u017eit naj\u00edt pot\u0159ebn\u00e9 gadgety v implementaci JIT nebo dokonce vykon\u00e1vat slo\u017eit\u011bj\u0161\u00ed pr\u00e1ci p\u0159i odhalov\u00e1n\u00ed z\u00e1stupc\u016f syst\u00e9mov\u00fdch vol\u00e1n\u00ed p\u0159\u00edmo uvnit\u0159 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=44320\">n\u00e1hodn\u011b spojen\u00e9ho libc<\/a><\/noindex>. <\/p>\n<p>Procesy Chrome\/Iridium jsou dostate\u010dn\u011b chr\u00e1n\u011bny pomoc\u00ed pledge a unveil, ale omezen\u00ed mo\u017enosti pou\u017e\u00edvat nap\u0159\u00edklad syst\u00e9mov\u00fd vol\u00e1n\u00ed write(2) m\u00e1 z\u0159ejm\u00e9 v\u00fdhody, proto\u017ee vytv\u00e1\u0159\u00ed pro \u00fato\u010dn\u00edka dal\u0161\u00ed komplikace. Nicm\u00e9n\u011b komplikace mohou nastat i v p\u0159\u00edpad\u011b, \u017ee implementace JIT pou\u017e\u00edv\u00e1 nativn\u00ed syst\u00e9mov\u00e9 vol\u00e1n\u00ed z W|X pam\u011bti. Existuj\u00ed v\u0161ak d\u016fvody v\u011b\u0159it, \u017ee se s t\u00edmto nebudeme muset pot\u00fdkat, proto\u017ee ABI se opakovan\u011b m\u011bnilo, ale nikdo nikdy nehl\u00e1sil \u017e\u00e1dn\u00e9 probl\u00e9my.<\/p>\n<p>Zm\u011bny jsou ji\u017e dostupn\u00e9 v pravideln\u00fdch sn\u00edmc\u00edch v\u011btve OpenBSD-CURRENT, v\u0161ichni z\u00e1jemci jsou zv\u00e1ni k testov\u00e1n\u00ed.<\/p>\n<p>Samostatn\u00e9ho koment\u00e1\u0159e od Thea si zaslou\u017eily souvisej\u00edc\u00ed novinky o zaveden\u00ed re\u017eimu v Chrome\/Iridium <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50559\">JITless<\/a><\/noindex>. Z jeho pohledu je to p\u0159ijateln\u00e9 pro n\u011bkter\u00e9 modely pou\u017eit\u00ed, nicm\u00e9n\u011b pravd\u011bpodobn\u011b ne pro v\u0161echny, proto\u017ee v tomto re\u017eimu z\u0159ejm\u011b dojde k n\u00e1r\u016fstu zat\u00ed\u017een\u00ed procesoru. Nyn\u00ed Chrome v\u011bt\u0161inou bude fungovat, pokud se vypne \"wxallowed\" pro \/usr\/local, a\u010dkoli jsou pravd\u011bpodobn\u00e9 probl\u00e9my s n\u011bkter\u00fdmi roz\u0161\u00ed\u0159en\u00edmi (nap\u0159\u00edklad ghostery). Tak \u010di onak, Theo douf\u00e1, \u017ee plnohodnotn\u00e1 funk\u010dnost v JITless re\u017eimu bude brzy uvedena do pln\u011b funk\u010dn\u00edho stavu.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Zdroj: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50763\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0422\u0435\u043e \u0414\u0435 \u0420\u0430\u0430\u0434\u0442 \u043f\u043e\u0434\u0435\u043b\u0438\u043b\u0441\u044f \u043f\u043b\u0430\u043d\u0430\u043c\u0438 \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430\u0449\u0438\u0442\u044b \u043f\u0430\u043c\u044f\u0442\u0438 W^X (Write XOR Execute). \u0421\u0443\u0442\u044c \u043c\u0435\u0445\u043d\u0438\u0437\u043c\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u044c \u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043a\u043e\u0434 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u0438\u0441\u0438, \u0430 \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043f\u0430\u043c\u044f\u0442\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0440\u0435\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u041c\u0435\u0445\u0430\u043d\u0438\u0437\u043c W^X \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-34721","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0422\u0435\u043e \u0414\u0435 \u0420\u0430\u0430\u0434\u0442 \u043f\u043e\u0434\u0435\u043b\u0438\u043b\u0441\u044f \u043f\u043b\u0430\u043d\u0430\u043c\u0438 \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430\u0449\u0438\u0442\u044b \u043f\u0430\u043c\u044f\u0442\u0438 W^X (Write XOR Execute).\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043b\u0430\u043d\u044b \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430\u0449\u0438\u0442\u044b W^X \u0432 OpenBSD | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0422\u0435\u043e \u0414\u0435 \u0420\u0430\u0430\u0434\u0442 \u043f\u043e\u0434\u0435\u043b\u0438\u043b\u0441\u044f \u043f\u043b\u0430\u043d\u0430\u043c\u0438 \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430\u0449\u0438\u0442\u044b \u043f\u0430\u043c\u044f\u0442\u0438 W^X (Write XOR Execute).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:00:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Pl\u00e1ny na pos\u00edlen\u00ed mechanismu ochrany W^X v OpenBSD | ProHoster","description":"Theo De Raad sd\u00edlel pl\u00e1ny na pos\u00edlen\u00ed mechanismu ochrany pam\u011bti W^X (Write XOR Execute).","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043b\u0430\u043d\u044b \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430\u0449\u0438\u0442\u044b W^X \u0432 OpenBSD | ProHoster","og:description":"\u0422\u0435\u043e \u0414\u0435 \u0420\u0430\u0430\u0434\u0442 \u043f\u043e\u0434\u0435\u043b\u0438\u043b\u0441\u044f \u043f\u043b\u0430\u043d\u0430\u043c\u0438 \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430\u0449\u0438\u0442\u044b \u043f\u0430\u043c\u044f\u0442\u0438 W^X (Write XOR Execute).","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/plany-po-usileniyu-mehanizma-zashhity-w-x-v-openbsd","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:00:00+00:00","article:modified_time":"2019-10-31T19:00:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34721","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 20:22:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:16:32","updated":"2026-01-21 20:22:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/34721","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=34721"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/34721\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=34721"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=34721"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=34721"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}