{"id":122969,"date":"2025-03-25T10:22:42","date_gmt":"2025-03-25T08:22:42","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz"},"modified":"2025-03-25T10:22:42","modified_gmt":"2025-03-25T08:22:42","slug":"v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz","title":{"rendered":"I NixOS er der foresl\u00e5et en metode til beskyttelse mod implantater af bagd\u00f8re, som i XZ.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>For at inkludere i pakke-repositoriet nixpkgs, der anvendes i NixOS-distributionen, er der foresl\u00e5et en metode til reproducerbare builds, som g\u00f8r det muligt at identificere tilf\u00e6lde af bagd\u00f8re i koden, der minder om h\u00e6ndelsen med projektet XZ. Den pr\u00e6senterede beskyttelsesmetode muligg\u00f8r opdagelse af \u00e6ndringer i arkiver med kildetekst for udgivelser, som ikke er til stede i kode-repositorierne.    <\/p>\n<p>Essensen i metoden er, at kildekoden til den nye version af applikationen samles to gange \u2014 f\u00f8rste gang fra koden, der er indl\u00e6st fra git-repositoriet, og anden gang fra koden, der distribueres i f\u00e6rdige arkiver. Hvis de bin\u00e6re filer, der resulterer fra samlinger, adskiller sig, kan der v\u00e6re grund til mistanke om skjulte modifikationer i repositoriet eller i det arkiv, der indeholder koden.     <\/p>\n<p>Det skal bem\u00e6rkes, at i tilf\u00e6lde af projektet XZ indeholdt kode-repositoriet ikke mist\u00e6nkelige \u00e6ndringer. De bagd\u00f8rs-malicious komponenter blev leveret i filer brugt i test-s\u00e6ttet til at kontrollere korrektheden af XZ-dekompressoren. Bagd\u00f8ren blev aktiveret p\u00e5 niveauet for byggesystemet, mens selve koden fra XZ svarede til koden fra repositoriet. De aktiverende bagd\u00f8rs m4-makroer til Automake-v\u00e6rkt\u00f8jet blev kun inkluderet i det f\u00e6rdige arkiv med koden og var ikke til stede i repositoriet.     <\/p>\n<p>Bagd\u00f8ren i XZ blev indf\u00f8rt af en angriber, der opn\u00e5ede status som vedligeholder i projektet. Implantationen af bagd\u00f8ren blev ikke opdaget straks, da distributioner hovedsageligt bygger pakker ved at hente koden fra f\u00e6rdige arkiver, da man ved hentning af koden til bygning kan n\u00f8jes med en kontrolsum til at verificere filens integritet for arkivet og bruge spejle. Den prim\u00e6re opm\u00e6rksomhed ved kontrol af koden er fokuseret p\u00e5 analysen af indholdet af repositoriet, s\u00e5 ikke-opfattelige forskelle i arkiverne kan ikke altid straks opdages.    <\/p>\n<p>For at forenkle kontrollen af overensstemmelsen mellem arkivfiler og udsnit fra repositoriet, der svarer til udgivelser, har nogle \u00e5bne projekter, som PostgreSQL, indf\u00f8rt et system for gentagelig generering af arkiver. I dette tilf\u00e6lde stilles v\u00e6rkt\u00f8jer til r\u00e5dighed, som g\u00f8r det muligt selv at samle sit arkiv fra koden, der helt svarer til det f\u00e6rdige arkiv, der er tilg\u00e6ngeligt for download. Hvis det selvst\u00e6ndigt oprettede arkiv adskiller sig fra det arkiv, der tilbydes af hovedprojektet, er der tale om et kompromis i repositoriet eller det standardiserede arkiv.    <\/p>\n<p>The problem is that such a method is only practiced in certain cases, while many projects continue to include additional artifacts in archives that are not present in the main repository, such as man pages, documentation, examples, package build scripts for distributions, and additional build files. This mainly occurs due to historical reasons and the peculiarities of the release formation processes. A simple check of the repository content against the archive is not suitable in this case.     <\/p>\n<p>Som l\u00f8sning er det foresl\u00e5et at samle bin\u00e6re filer til udgivelser b\u00e5de fra repositoriet (for eksempel kan man bruge det automatisk genererede GitHub-arkiv til release-tagget) og fra det arkiv, der er forberedt af vedligeholderen, hvorefter resultatet sammenlignes. Som eksperiment er denne type kontrol kun foresl\u00e5et for pakken \u00abxz\u00bb. Hvis eksperimentet viser sig at v\u00e6re vellykket, planl\u00e6gges det at bruge kontrollerne i andre pakker i nixpkgs.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62933\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 nixpkgs, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0439 \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0435 NixOS, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434 \u0431\u044d\u043a\u0434\u043e\u0440\u043e\u0432, \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0438\u0435 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c XZ. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u0449\u0438\u0442\u044b \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0442\u044c \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0432 \u0430\u0440\u0445\u0438\u0432\u0430\u0445 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c \u0440\u0435\u043b\u0438\u0437\u0430, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445 \u0441 \u043a\u043e\u0434\u043e\u043c. \u0421\u0443\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0434\u0432\u0430 [&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-122969","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=\"\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 nixpkgs, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0439 \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0435 NixOS, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434 \u0431\u044d\u043a\u0434\u043e\u0440\u043e\u0432, \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0438\u0435 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c XZ.\" \/>\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\/da\/blog\/news\/v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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 NixOS \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0431\u044d\u043a\u0434\u043e\u0440\u043e\u0432, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0432 XZ | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 nixpkgs, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0439 \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0435 NixOS, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434 \u0431\u044d\u043a\u0434\u043e\u0440\u043e\u0432, \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0438\u0435 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c XZ.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz\" \/>\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-03-25T08:22:42+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-03-25T08:22:42+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\udd47In NixOS, a method has been proposed to protect against backdoor substitutions, such as in XZ | ProHoster","description":"To be included in the nixpkgs package repository used in the NixOS distribution, a reproducible builds mode has been proposed to identify cases of backdoor insertion into code, reminiscent of the XZ project incident.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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 NixOS \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0431\u044d\u043a\u0434\u043e\u0440\u043e\u0432, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0432 XZ | ProHoster","og:description":"\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 nixpkgs, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0439 \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0435 NixOS, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434 \u0431\u044d\u043a\u0434\u043e\u0440\u043e\u0432, \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0438\u0435 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c XZ.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/v-nixos-predlozhen-metod-zashhity-ot-podstanovki-bekdorov-takih-kak-v-xz","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-03-25T08:22:42+00:00","article:modified_time":"2025-03-25T08:22:42+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"122969","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 11:34:09","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 11:34:09","updated":"2026-01-23 11:34:09","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/122969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=122969"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/122969\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=122969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=122969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=122969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}