Błąd GitHub pokazywał widoczny backdoor w jądrze Linuksa

GitHub

Ostatnio niektórzy zauważyli dziwną zmianę w kodzie źródłowym jądra Linuksa, tak podczas przeglądania kodu jądra w serwisie GitHub Zauważyli, że zmiany wprowadzone przez strony trzecie (te, które sklonowały lub rozwidliły ten) dziwnie pojawiały się w głównym repozytorium.

Zwróciło to uwagę niektórych użytkowników interfejsu GitHub, ponieważ ujawniono interesującą funkcję co pozwala na przedstawienie wszelkich zmian wprowadzonych przez osoby trzecie jako zmiany już zawarte w głównym projekcie.

Na przykład dzisiaj w sieciach społecznościowych zaczęło się rozprzestrzeniać odniesienie do zmiany w oficjalnym lustrze głównego repozytorium jądra Linuksa, wskazując na zastąpienie backdoora w sterowniku HID-Samsung.

Dziwactwo GitHub zaalarmowało deweloperów jądra

W obliczu tego konfliktu niektórzy zaczęli sprawdzać kod jądra, zwłaszcza w sterowniku Samsunga oprócz próby sprawdzenia, czy bezpieczeństwo jądra nie zostało naruszone.

Analiza sytuacji pokazała, że GitHub, aby zoptymalizować przechowywanie i zminimalizować powielanie danych na swoich serwerach, przechowuje wszystkie obiekty z głównego repozytorium i związane z nim rozwidlenia, logicznie dzieląc własność zatwierdzeń.

Po czym Ta pamięć umożliwia każdemu, kto przegląda kod, zobaczenie dowolnego potwierdzenia z dowolnego rozwidlenia w dowolnym powiązanym repozytorium, wyraźnie wskazując jego skrót w adresie URL.

Na przykład, w przypadku demo backdoora, jeden z użytkowników utworzył fork głównego repozytorium jądra Linuksa w interfejsie GitHub, a następnie dodał do swojego forka zatwierdzenie z kodem przypominającym backdoora.

Następnie utworzył odsyłacz, w którym identyfikator SHA1 zmiany zewnętrznej został zastąpiony w adresie URL głównego repozytorium.

Po otwarciu podobnego linku zatwierdzenie zewnętrzne jest wyświetlane w interfejsie GitHub w kontekście głównego repozytorium, mimo że zostało zrobione na rozwidleniu i nie ma nic wspólnego z głównym repozytorium i nie ma w nim takiego zatwierdzenia.

błąd github

Ponadto, W interfejsie GitHub, podczas przeglądania dziennika zmian dla poszczególnych plików, główne repozytorium pokazuje również zatwierdzenia stron trzecich, co powoduje wiele zamieszania.

To zaniepokoiło niektórych, ponieważ myśleli, że to włamanie i że wprowadzili złośliwy kod do kodu źródłowego jądra Linuksa.

Cóż, jak widać na obrazku gołym okiem, mogłoby się wydawać, że wstawiony kod jest częścią tego, co jest przechowywane w głównym repozytorium jądra Linuksa.

I że na początku nie odwołuje się do zewnętrznych repozytoriów, w których dokonano modyfikacji.

To był fałszywy alarm

Ten „błąd” (że tak powiem) martwił wielu, ponieważ w tej chwili nie wiedzieli, czy już ryzykowali, czy też integralność jądra została naruszona.

Spędzam mało czasu więc zdaliby sobie sprawę, że podczas wyodrębniania danych lub klonowania repozytorium za pomocą poleceń git brakowało zmian stron trzecich w wynikowym repozytorium.

GitHub po prostu przedstawił zmiany na pierwszy rzut oka, podczas gdy w rzeczywistości tak nie jest.

W tym momencie nic więcej na ten temat nie wiadomo i czy ludzie z Github (Microsoft) będą chcieli znaleźć rozwiązanie tego problemu, co nie wpływa bezpośrednio na rozwój, a tym bardziej na uzyskanie kodu źródłowego jądra.

Ale co, jeśli może to zmylić wielu, którzy zdecydują się przejrzeć niektóre części projektów, które są przechowywane na Github.

Cóż, nie jest to coś, co jest pokazane bezpośrednio w kodzie jądra Linuksa, ale będzie również pokazane w forkach lub forkach innych projektów.

Jest więc możliwe, że wielu programistów lub użytkowników tej platformy wysłało już kilka e-maili do osób z GitHub.

Jeśli chcesz dowiedzieć się trochę więcej na ten tematmożesz odwiedzić poniższy link gdzie kod, który utworzył tę sytuację, jest nadal wyświetlany, a także komentarze dotyczące tej sytuacji o tym tutaj.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.