Skip to content

Instantly share code, notes, and snippets.

@gander
Created August 23, 2025 18:02
Show Gist options
  • Save gander/8bcd7c50be0813ed71ecb929bcd33065 to your computer and use it in GitHub Desktop.
Save gander/8bcd7c50be0813ed71ecb929bcd33065 to your computer and use it in GitHub Desktop.

Tabela uprawnień Fine-grained Personal Access Token (PAT) w GitHub

Poniższa tabela opisuje każde z głównych uprawnień dostępnych w Fine-grained PAT, wraz z przykładami operacji, które można dzięki nim wykonać, oraz potencjalnymi zagrożeniami w przypadku wycieku tokena.

Uprawnienie Co można zrobić Zagrożenia przy ujawnieniu
Repository metadata Odczyt nazwy repozytoriów, opisów, listy współpracowników, informacji o gałęziach i tagach. Umożliwia zbieranie informacji o strukturze organizacji i projektów, przygotowanie ataku socjotechnicznego lub rekonesansu.
Contents (repo) Odczyt i zapis plików w wybranych repozytoriach (klonowanie, commit, push, tworzenie plików). Pełny dostęp do kodu źródłowego i historii, możliwość wprowadzania backdoorów lub wykradania poufnych danych (klucze, hasła, certyfikaty).
Issues Tworzenie, edycja, zamykanie i komentowanie issue’ów w repozytorium. Atakujący może śledzić lub modyfikować zgłoszenia zadań, wpływać na priorytety, ujawniać lub usuwać dane kontekstowe, wprowadzać fałszywe raporty błędów.
Pull requests Odczyt, tworzenie, modyfikacja, zamykanie i komentowanie pull requestów. Możliwość zatwierdzania szkodliwych zmian lub wstrzymywania istotnych poprawek, publikowanie poufnych dyskusji wewnętrznych.
Discussions Zarządzanie dyskusjami (tworzenie, edycja, zamykanie, komentowanie) w repozytorium. Ujawnienie planów projektowych lub strategicznych w dyskusjach; wprowadzanie dezinformacji, manipulowanie społecznością projektu.
Projects Odczyt i zapis projektów (tablice projektowe, karty, kolumny). Atakujący może zmieniać harmonogramy, przesuwać zadania, blokować pracę zespołu, ujawniać wewnętrzne zależności projektowe.
Workflows Zarządzanie GitHub Actions: odczyt, tworzenie, modyfikacja i usuwanie workflowów CI/CD. Wstrzykiwanie złośliwych kroków do procesów CI/CD, wykradanie sekretów z przepływów, wprowadzanie złośliwego oprogramowania do artefaktów.
Environments Odczyt i zapis środowisk (np. production, staging), zmiana reguł ochrony gałęzi, możliwość deployów. Ujawnienie lub modyfikacja ustawień środowisk produkcyjnych, nieautoryzowane wdrożenia zmian lub rollbacki, wyciek kluczy środowiskowych.
Deployments Zarządzanie wdrożeniami: lista, tworzenie, modyfikacja statusów deployów. Możliwość fałszowania statusów wdrożeń, wycofywanie lub wprowadzenie niezatwierdzonych wersji w produkcji.
Secrets (repo) Odczyt i zapis sekretów repozytorium (tokeny, hasła, klucze API). Całkowity wyciek wrażliwych danych uwierzytelniających, co pozwala na ataki na zewnętrzne systemy, eskalację uprawnień lub daleko idące sabotowanie.
Packages Odczyt, publikacja, usuwanie pakietów w GitHub Packages (npm, Maven, Docker itp.). Wstrzyknięcie złośliwych zależności do pakietów, usunięcie krytycznych wersji, manipulacja metadanymi pakietów, ataki łańcuchowo-zależności.
Dependabot alerts Odczyt i (opcjonalnie) zamykanie alertów bezpieczeństwa z Dependabot. Umożliwia ukrywanie lub ignorowanie krytycznych podatności w zależnościach projektowych, co zwiększa ryzyko ataków supply-chain.
Codespaces Tworzenie i zarządzanie Codespaces: uruchamianie, zatrzymywanie, modyfikacja konfiguracji. Atakujący może uruchamiać zdalne sesje deweloperskie z dostępem do kodu i środowiska, przeglądać lub modyfikować kod w izolacji cloudowej.
Codespaces secrets Odczyt i zapis sekretów używanych w Codespaces. Wykradzenie kluczy i haseł używanych w środowiskach deweloperskich, dostęp do prywatnych zasobów, eskalacja ataku wewnątrz organizacji.
Actions secrets Odczyt i zapis sekretów dla GitHub Actions. Umożliwia wykradanie i modyfikowanie kluczy używanych w workflowach, co pozwala na nieautoryzowane operacje na infrastrukturze i publikację artefaktów zainfekowanych.
Administration Pełne uprawnienia administracyjne do repozytorium: ustawienia, współpracownicy, Webhooki, integracje i ochrona gałęzi. Całkowite przejęcie repozytorium, zmiana ustawień ochrony, usuwanie repozytorium, dodawanie złośliwych integracji, eskalacja uprawnień.
User email Odczyt prywatnych adresów e-mail przypisanych do konta użytkownika. Ujawnienie prywatnych adresów, umożliwienie spamowania lub spear-phishingu bezpośrednio na prywatne skrzynki e-mail.
User admin Zarządzanie organizacjami i zespołami: tworzenie/usuwanie zespołów, przydzielanie ról, dodawanie nowych repozytoriów. Eskalacja uprawnień w organizacji, dodanie kont atakujących do zespołów o wysokich przywilejach, przejęcie kontroli nad projektami i repozytoriami w organizacji.

Uwaga: zakresy uprawnień można dobierać bardzo szczegółowo na poziomie poszczególnych repozytoriów i organizacji, aby zminimalizować ryzyko związane z ujawnieniem PAT.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment