{"id":139662,"date":"2025-07-22T11:11:56","date_gmt":"2025-07-22T09:11:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah"},"modified":"2025-07-22T11:11:56","modified_gmt":"2025-07-22T09:11:56","slug":"google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah","title":{"rendered":"Google zaprezentowa\u0142 projekt OSS Rebuild do identyfikacji ukrytych zmian w pakietach.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Firma Google zaprezentowa\u0142a projekt OSS Rebuild, kt\u00f3ry ma na celu identyfikacj\u0119 ukrytych zmian w gotowych pakietach publikowanych w repozytoriach. Praca OSS Rebuild opiera si\u0119 na koncepcji reprodukowalnych kompilacji i polega na sprawdzaniu zgodno\u015bci pakietu umieszczonego w repozytorium z pakietem uzyskanym w wyniku rekonstrukcji z odniesionego kodu \u017ar\u00f3d\u0142owego, odpowiadaj\u0105cego deklarowanej wersji pakietu. Kod narz\u0119dzia napisano w j\u0119zyku Go i jest rozpowszechniany na licencji Apache 2.0.      <\/p>\n<p>Obecnie w OSS Rebuild wprowadzono obs\u0142ug\u0119 weryfikacji pakiet\u00f3w z repozytori\u00f3w NPM (JavaScript\/TypeScript), PyPI (Python) oraz Crates.io (Rust). W przysz\u0142o\u015bci planuje si\u0119 rozszerzenie liczby wspieranych repozytori\u00f3w. W praktyce narz\u0119dzie to umo\u017cliwia identyfikacj\u0119 atak\u00f3w typu 'supply chain', podczas kt\u00f3rych po skompromitowaniu kont deweloper\u00f3w lub dalszych dzia\u0142a\u0144 wewn\u0105trz projektu do repozytori\u00f3w publikowane s\u0105 z\u0142o\u015bliwe aktualizacje. W tym przypadku kod w pierwotnym repozytorium g\u0142\u00f3wnego projektu pozostaje poprawny, a z\u0142o\u015bliwe zmiany s\u0105 wprowadzane tylko do gotowych pakiet\u00f3w.      <\/p>\n<p>System stara si\u0119 automatycznie tworzy\u0107 scenariusz dla reprodukowalnej kompilacji wybranego pakietu, wykorzystuj\u0105c heurystyk\u0119 i dobieraj\u0105c parametry, kt\u00f3re pozwalaj\u0105 osi\u0105gn\u0105\u0107 to\u017csamo\u015b\u0107 artefakt\u00f3w dostarczanych w pakiecie. Je\u015bli nie udaje si\u0119 automatycznie odtworzy\u0107 umieszczonego w repozytorium pakietu, istnieje mo\u017cliwo\u015b\u0107 r\u0119cznego dodania specyfikacji kompilacji. Po udanym odtworzeniu pakietu narz\u0119dzie OSS Rebuild zachowuje opis procesu kompilacji do p\u00f3\u017aniejszej weryfikacji nowych wersji pakietu. Dodatkowo publikowane s\u0105 informacje do weryfikacji z wykorzystaniem frameworka SLSA.    <\/p>\n<p>Po przeprowadzeniu weryfikacji konkretnej wersji pakietu generowane s\u0105 dane attestation, kt\u00f3re mog\u0105 by\u0107 wykorzystywane przez innych do oceny ju\u017c zweryfikowanych pakiet\u00f3w. Weryfikacj\u0119 mo\u017cna przeprowadzi\u0107 poprzez uruchomienie narz\u0119dzia wiersza polece\u0144 lub por\u00f3wnanie hasha zapisanego w oddzielnym magazynie chmurowym. Infrastruktur\u0119 do weryfikacji pakiet\u00f3w mo\u017cna uruchomi\u0107 na w\u0142asnym <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pl\/server\/dts-dronten\/\"   title=\"serwerze\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2583\">serwerze<\/a>. Mo\u017cna tak\u017ce skorzysta\u0107 z informacji o weryfikacjach przeprowadzonych przez Google dla kilku tysi\u0119cy pakiet\u00f3w.        <\/p>\n<p>Jako przyk\u0142ady r\u00f3\u017cnych metod atak\u00f3w, przed kt\u00f3rymi OSS Rebuild m\u00f3g\u0142by chroni\u0107, podano dodanie backdoora do XZ, wstrzykni\u0119cie z\u0142o\u015bliwego kodu do oficjalnego klienta JavaScript dla kryptowaluty Solana oraz podstawienie zmian przez handler Actions changed-files:  <\/p>\n<ul>\n<li class=\"l\"> W przypadku projektu XZ kod w repozytorium nie zawiera\u0142 podejrzanych zmian, a elementy wprowadzaj\u0105ce backdoora dostarczane by\u0142y w plikach u\u017cywanych w zbiorze testowym do sprawdzania poprawno\u015bci dzia\u0142ania dekompresora XZ. Backdoor aktywowa\u0142 si\u0119 na poziomie systemu budowania, a sam kod \u017ar\u00f3d\u0142owy XZ pokrywa\u0142 si\u0119 z kodem z repozytorium. Aktywuj\u0105ce backdoor makra m4 dla narz\u0119dzi Automake by\u0142y zawarte tylko w gotowym archiwum z kodem i nie wyst\u0119powa\u0142y w repozytorium. W celu wykrywania podobnych atak\u00f3w w OSS Rebuild stosuje si\u0119 dynamiczn\u0105 analiz\u0119 dostarczanych w pakiecie artefakt\u00f3w, \u015bcie\u017cek wykonania i podejrzanych operacji.\n<li class=\"l\"> Podstawienie z\u0142o\u015bliwych zmian w bibliotece @solana\/web3.js mia\u0142o miejsce z powodu kompromitacji konta osoby prowadz\u0105cej projekt, z wykorzystaniem metod in\u017cynierii spo\u0142ecznej i phishingu. W repozytorium NPM umieszczono now\u0105 wersj\u0119, zawieraj\u0105c\u0105 z\u0142o\u015bliwe zmiany. W repozytorium Git projektu ta wersja nie zosta\u0142a utworzona, a z\u0142o\u015bliwe zmiany by\u0142y obecne tylko w wynikowym pakiecie. Ochrona w tym przypadku sprowadza si\u0119 do wykrywania w pakiecie kodu, kt\u00f3rego brakuje w g\u0142\u00f3wnym repozytorium.\n<li class=\"l\"> Kompromitacja repozytorium handlera changed-files umo\u017cliwi\u0142a przeprowadzenie ataku na projekty korzystaj\u0105ce z changed-files do \u015bledzenia zmian plik\u00f3w i katalog\u00f3w w infrastrukturze ci\u0105g\u0142ej integracji opartej na GitHub Actions. Aby chroni\u0107 przed podstawianiem zmian po kompromitacji \u015brodowiska budowania, w OSS Rebuild stosuje si\u0119 \u015bledzenie zmian i podejrzanej aktywno\u015bci w standardowych uproszczonych \u015brodowiskach budowlanych.      <\/ul>\n<p>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63613\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 OSS Rebuild, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u044b\u0442\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u0430\u0445, \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u043c\u044b\u0445 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445. \u0420\u0430\u0431\u043e\u0442\u0430 OSS Rebuild \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a \u0438 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d\u043d\u043e\u0433\u043e \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u0441 \u043f\u0430\u043a\u0435\u0442\u043e\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u043c \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0433\u043e \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u0430. \u041a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Go \u0438 [&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-139662","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 OSS Rebuild, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u044b\u0442\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u0430\u0445, \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u043c\u044b\u0445 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445.\" \/>\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\/pl\/blog\/news\/google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\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\udd47Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0440\u043e\u0435\u043a\u0442 OSS Rebuild \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u044b\u0442\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u043f\u0430\u043a\u0435\u0442\u0430\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 OSS Rebuild, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u044b\u0442\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u0430\u0445, \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u043c\u044b\u0445 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah\" \/>\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-07-22T09:11:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-07-22T09:11:56+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\udd47Google przedstawi\u0142 projekt OSS Rebuild do wykrywania ukrytych zmian w pakietach | ProHoster","description":"Firma Google przedstawi\u0142a projekt OSS Rebuild, maj\u0105cy na celu wykrywanie ukrytych zmian w gotowych pakietach publikowanych w repozytoriach.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","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\udd47Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0440\u043e\u0435\u043a\u0442 OSS Rebuild \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u044b\u0442\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u043f\u0430\u043a\u0435\u0442\u0430\u0445 | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 OSS Rebuild, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u044b\u0442\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u0430\u0445, \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u043c\u044b\u0445 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/google-predstavil-proekt-oss-rebuild-dlya-vyyavleniya-skrytyh-izmenenij-v-paketah","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-07-22T09:11:56+00:00","article:modified_time":"2025-07-22T09:11:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"139662","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-02-09 22:11:15","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 13:55:19","updated":"2026-02-09 22:11:15","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/139662","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=139662"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/139662\/revisions"}],"predecessor-version":[{"id":159865,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/139662\/revisions\/159865"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=139662"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=139662"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=139662"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}