{"id":140018,"date":"2025-08-04T11:12:07","date_gmt":"2025-08-04T09:12:07","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti"},"modified":"2025-08-04T11:12:07","modified_gmt":"2025-08-04T09:12:07","slug":"v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/news\/v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti","title":{"rendered":"V Clang pl\u00e1nuj\u00fa prida\u0165 re\u017eim zv\u00fd\u0161enej bezpe\u010dnosti","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Aaron Ballman, hlavn\u00fd zodpovedn\u00fd za kompil\u00e1tor Clang a \u00fa\u010dastn\u00edk t\u00edmov vyv\u00edjaj\u00facich \u0161tandardy WG21 (C++) a WG14 (C), za\u010dal diskusiu o pridan\u00ed re\u017eimu zv\u00fd\u0161enej bezpe\u010dnosti do kompil\u00e1tora Clang. Nov\u00fd re\u017eim umo\u017en\u00ed aktivova\u0165 s\u00fabor mo\u017enost\u00ed na posilnenie ochrany podobne ako pridan\u00fd v GCC 14 flag &#171;-fhardened&#187;, pri ktorom sa aktivuj\u00fa mo\u017enosti &#171;-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS -ftrivial-auto-var-init=zero -fPIE -pie -Wl,-z,relro,-z,now -fstack-protector-strong -fstack-clash-protection -fcf-protection=full&#187;.     <\/p>\n<p>Upozor\u0148uje sa, \u017ee moment\u00e1lne prebieha pr\u00e1ca na prid\u00e1van\u00ed mo\u017enost\u00ed na zv\u00fd\u0161enie bezpe\u010dnosti do \u0161tandardov C a C++, ale tento proces nie je r\u00fdchly, pri\u010dom v Clang s\u00fa u\u017e dostupn\u00e9 samostatn\u00e9 mo\u017enosti s realiz\u00e1ciou dodato\u010dn\u00fdch ochrann\u00fdch mechanizmov. Realizovan\u00e9 met\u00f3dy ochrany \u010dasto ved\u00fa k nezlu\u010dite\u013enostiam so existuj\u00facim k\u00f3dom alebo poru\u0161eniu ABI, \u010do neumo\u017e\u0148uje ich aktiv\u00e1ciu predvolene. Okrem toho, podobn\u00e9 mo\u017enosti s\u00fa roztrhnut\u00e9 (flagy na riadenie kompil\u00e1cie, flagy generovania strojov\u00fdch in\u0161trukci\u00ed viazan\u00e9 na hardv\u00e9rov\u00e9 architekt\u00fary, varovania, re\u017eimy diagnostiky, makr\u00e1), zle zdokumentovan\u00e9 a unikaj\u00fa pozornosti mnoh\u00fdch v\u00fdvoj\u00e1rov.       <\/p>\n<p>Jedno nastavenie preddefinuje zapnutie s\u00favisiacich bezpe\u010dnostn\u00fdch mo\u017enost\u00ed a zjednodu\u0161\u00ed ich aplik\u00e1ciu. Zva\u017euje sa nieko\u013eko mo\u017enost\u00ed aktiv\u00e1cie re\u017eimu zv\u00fd\u0161enej bezpe\u010dnosti, napr\u00edklad sa diskutuje o aktiv\u00e1cii cez flag &#171;-fhardened&#187;, s\u00fabor nastaven\u00ed &#171;&#8212;config=hardened&#187;, samostatn\u00fd ovl\u00e1da\u010d (clang &#8212;driver-mode) alebo samostatn\u00e9 mo\u017enosti &#171;-fhardened, -mhardened a -Whardened&#187;, viazan\u00e9 na kompil\u00e1ciu, generovanie k\u00f3du a v\u00fdstup upozornen\u00ed. Re\u017eim m\u00f4\u017ee pokr\u00fdva\u0165:  <\/p>\n<ul>\n<li class=\"l\"> Mo\u017enosti kompil\u00e1tora: -ftrivial-auto-var-init, -fPIE, -fcf-protection a podobne.\n<li class=\"l\"> Mo\u017enosti viazan\u00e9 na generovanie k\u00f3du pre cie\u013eov\u00e9 platformy: -mspeculative-load-hardening, -mlvi-hardening a podobne.\n<li class=\"l\"> Varovania: -Wall, -Wextra, -Werror=return-type a podobne.\n<li class=\"l\"> Re\u017eimy zv\u00fd\u0161enia bezpe\u010dnosti v \u0161tandardnej kni\u017enici funkci\u00ed.\n<li class=\"l\"> Makr\u00e1: _FORTIFY_SOURCE, _GLIBCXX_ASSERTIONS a podobne.\n<li class=\"l\"> Po\u017eiadavka na explicitn\u00fd v\u00fdber pou\u017e\u00edvan\u00e9ho \u0161tandardu jazyka.\n<li class=\"l\"> Odmietnutie kompil\u00e1cie k\u00f3du s pou\u017eit\u00edm zastaran\u00fdch \u0161tandardov C89 a C++98.\n<li class=\"l\"> Odovzdanie dodato\u010dn\u00fdch flagov linkeru, napr\u00edklad na aktiv\u00e1ciu randomiz\u00e1cie adries.  <\/ul>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63675\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0410\u0430\u0440\u043e\u043d \u0411\u0430\u043b\u043b\u043c\u0430\u043d (Aaron Ballman), \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u044e\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u043a\u043e\u043c\u0430\u043d\u0434 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432 WG21 (C++) \u0438 WG14 (C), \u043d\u0430\u0447\u0430\u043b \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0440\u0435\u0436\u0438\u043c\u0430 \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041d\u043e\u0432\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0440\u0430\u0437\u043e\u043c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0431\u043e\u0440 \u043e\u043f\u0446\u0438\u0439 \u0434\u043b\u044f \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u043f\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0438 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u0432 GCC 14 \u0444\u043b\u0430\u0433\u043e\u043c &#171;-fhardened&#187;, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u043e\u043f\u0446\u0438\u0438 &#171;-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS -ftrivial-auto-var-init=zero -fPIE -pie [&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-140018","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0410\u0430\u0440\u043e\u043d \u0411\u0430\u043b\u043b\u043c\u0430\u043d (Aaron Ballman), \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u044e\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u043a\u043e\u043c\u0430\u043d\u0434 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432 WG21 (C++) \u0438 WG14 (C), \u043d\u0430\u0447\u0430\u043b \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0440\u0435\u0436\u0438\u043c\u0430 \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.\" \/>\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\/sk\/blog\/news\/v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\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\u0412 Clang \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u0443\u0441\u0438\u043b\u0435\u043d\u043d\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0410\u0430\u0440\u043e\u043d \u0411\u0430\u043b\u043b\u043c\u0430\u043d (Aaron Ballman), \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u044e\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u043a\u043e\u043c\u0430\u043d\u0434 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432 WG21 (C++) \u0438 WG14 (C), \u043d\u0430\u0447\u0430\u043b \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0440\u0435\u0436\u0438\u043c\u0430 \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/news\/v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti\" \/>\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=\"2025-08-04T09:12:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-08-04T09:12:07+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\udd47Clang pl\u00e1nuje prida\u0165 re\u017eim zv\u00fd\u0161enej bezpe\u010dnosti | ProHoster","description":"Aaron Ballman, hlavn\u00fd kompil\u00e1tor Clang a \u00fa\u010dastn\u00edk t\u00edmov vyv\u00edjaj\u00facich \u0161tandardy WG21 (C++) a WG14 (C), za\u010dal diskusiu o prid\u00e1van\u00ed re\u017eimu zv\u00fd\u0161enej bezpe\u010dnosti do kompil\u00e1tora Clang.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/news\/v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","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\u0412 Clang \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u0443\u0441\u0438\u043b\u0435\u043d\u043d\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 | ProHoster","og:description":"\u0410\u0430\u0440\u043e\u043d \u0411\u0430\u043b\u043b\u043c\u0430\u043d (Aaron Ballman), \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u044e\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u043a\u043e\u043c\u0430\u043d\u0434 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432 WG21 (C++) \u0438 WG14 (C), \u043d\u0430\u0447\u0430\u043b \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 Clang \u0440\u0435\u0436\u0438\u043c\u0430 \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.","og:url":"https:\/\/prohoster.info\/sk\/blog\/news\/v-clang-namereny-dobavit-rezhim-usilennoj-bezopasnosti","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":"2025-08-04T09:12:07+00:00","article:modified_time":"2025-08-04T09:12:07+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"140018","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":"default","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-23 14:08:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 14:08:19","updated":"2026-01-23 14:08:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/140018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=140018"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/140018\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=140018"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=140018"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=140018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}