Accessible Deleted Data in Github

Wsparcie dla HackTricks

Sposoby dostępu do danych z GitHub, które rzekomo zostały usunięte, zostały zgłoszone w tym poście na blogu.

Dostęp do usuniętych danych forków

  1. Forkujesz publiczne repozytorium

  2. Zatwierdzasz kod do swojego forka

  3. Usuwasz swojego forka

Dane zatwierdzone w usuniętym forku są nadal dostępne.

Dostęp do usuniętych danych repozytoriów

  1. Masz publiczne repozytorium na GitHubie.

  2. Użytkownik forkował twoje repozytorium.

  3. Zatwierdzasz dane po tym, jak oni je forkowali (i nigdy nie synchronizują swojego forka z twoimi aktualizacjami).

  4. Usuwasz całe repozytorium.

Nawet jeśli usunąłeś swoje repozytorium, wszystkie zmiany wprowadzone w nim są nadal dostępne przez forki.

Dostęp do danych prywatnych repozytoriów

  1. Tworzysz prywatne repozytorium, które ostatecznie stanie się publiczne.

  2. Tworzysz prywatną, wewnętrzną wersję tego repozytorium (poprzez forkowanie) i zatwierdzasz dodatkowy kod dla funkcji, które nie zamierzasz udostępniać publicznie.

  3. Upubliczniasz swoje repozytorium "upstream" i zachowujesz swój fork jako prywatny.

Możliwe jest uzyskanie dostępu do wszystkich danych przesłanych do wewnętrznego forka w czasie między utworzeniem wewnętrznego forka a udostępnieniem publicznej wersji.

Jak odkryć zatwierdzenia z usuniętych/ukrytych forków

Ten sam post na blogu proponuje 2 opcje:

Bezpośredni dostęp do zatwierdzenia

Jeśli znana jest wartość ID zatwierdzenia (sha-1), możliwe jest uzyskanie do niego dostępu pod adresem https://github.com/<user/org>/<repo>/commit/<commit_hash>

Bruteforce'owanie krótkich wartości SHA-1

Dostęp do obu z nich jest taki sam:

A ostatni używa krótkiego sha-1, który można brutalnie złamać.

Referencje

Wsparcie dla HackTricks

Last updated