16/3/2016
We wszystkich wersjach gita starszych od 2.7.3 znajduje się błąd występujący zarówno w wersji serwerowej jak i klienckiej (!) tego oprogramowania. Oznacza to, że programista, który sklonuje odpowiednio spreparowane repozytorium może nieświadomie wykonać kod na swoim systemie.
Podatność i patche znane są od lutego, ale wciąż niewiele osób je zaaplikowało. Błąd posiada 2 identyfikatory CVE: cve-2016-2324, cve-2016-2315. Fragment podatnego kodu znajduje się tutaj — jak widać, winna jest funkcja path_name(), odpowiadająca za przetwarzanie nazw plików wgrywanych i zgrywanych z repozytorium.
Publicznego exploita jeszcze nie ma, ale zapewne zaraz się pokaże. Zalecamy szybką aktualizacjękompilację serwera i klienta.
windowsiarze znow maja problem :v
Jaki? (Oprócz tego, że pracują z Windowsem)
git funkcjonuje w Linux/OSX/Windows
Dlaczego? Git for Windows jest dostępny w wersji 2.7.3
Z punktu widzenia tzw. nooba, tj. mnie, aktualizacja otwartego oprogramowania pod Windowsem jest znacząco prostsza niż pod Linuksem. Ściągasz nowy instalator, uruchamiasz i masz. Ewentualnie ściągasz nowe archiwum, rozpakowujesz i masz. Musisz wiedzieć o tej aktualizacji, jeśli twórcy nie dorzucili autoaktualizatora; jest to zasadniczo jedyny problem, który przychodzi mi do głowy.
Dla odmiany pod Ubuntu nawet jeśli wiem o aktualizacji jakiegoś programu, to jeśli w oficjalnym repozytorium Canonicala jest stara wersja – a dość często tak jest – to zaczyna się tzw. niezły bałagan. Ktoś od gita przynajmniej zapewnia wsparcie dla tej konkretnej dystrybucji i wbudował się w system “niezaufanych” paczek, ale z innymi programami bywa ciężko. Zwłaszcza jeśli są zależnościami innych programów dostarczanych jako paczki. Szczerze powiedziawszy, nie mam zielonego pojęcia, jakie jest rekomendowane postępowanie w takich sytuacjach.
Podsumowując, jeśli ktoś ma problem, to prędzej “normalni” użytkownicy Ubuntu. Nie zdziwię się, jeślli innych Linuksów też.
Akurat aktualizacja pod linuxem (większością distro) jest jeszcze prostsza – jedno polecenie albo kliknięcie w tray.
Kontynuacja (wysłałem w połowie niechcący).
W przypadku ubuntu trzeba jeszcze dodać odpowiednie repo pakietów, bo rzeczywiście canonical bywa stary. Ale z aktualizacjami bezpieczeństwa nie jest tak źle.
A na windowsie trzeba jeszcze wiedzieć, że dana aplikacja ma aktualizację…
@Stan
Jak korzystasz z dystrubucji, której filozofia zakłada zamrażanie wersji na jakiś czas, to co chcesz.
Chcesz mieć zawsze najnowsze wersje, wybierz jakąś dystrybucję rolling. No ale fakt, takie (chyba) bywają nieco trudniejsze w obsłudze.
Ciekawe kiedy dojdzie do sytuacji w której developerzy będą mieli mniej do zaoferowania niż hakerzy (badacze bezpieczeństwa)?
Na maca jeszcze nie ma nowej wersji? :(
Eeee ale najpierw trzeba mieć konto i się zalogować.
Dla Ubuntu:
““sudo add-apt-repository ppa:git-core/ppa && sudo apt-get update && sudo apt-get install git““
W 2.7.3 jest ten sam błąd :/
Hello, even if I don’t speak polish, I can definitely say something is wrong here.
As I wrote on the original thread (me the reporter) I did a mistake no stable versions contains a complete fix (path_name() still exists in 2.7.3).
For both Linux and Windows® clone the master git branch at git.kernel.org ; draw your compilers and enjoy the dependency hell !
https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/2.7.4.txt