Kdo hledá, najde a zneužije

GitHub umožňuje, aby vaše úložiště na něm bylo soukromé, nebo naopak veřejně dostupné. Výzkumníci z North Carolina State University (NCSU) se rozhodli, že prozkoumají veřejná úložiště a zaměřili se na několik druhů citlivých informací, která v samotném kódu nemají co dělat. Jejich nález je šokoval. Po prozkoumání více než 100 00 veřejných úložišť (asi 13 % ze všech takových úložišť na GitHubu) zjistili, že mnoho programátorů do svého veřejně přístupného kódu vkládá například SSH klíče nebo API tokeny. SSH klíče jsou digitální certifikáty, které umožňují přístup k online zdrojům a API tokeny slouží jako přístup k API rozhraní. API umožňuje komunikaci mezi dvěma aplikacemi a díky tokenu se lze dostat například k účtům na Google, Twitteru, Facebooku a dalších službách.

Zkoušeli výzkumníci nějakou černou digitální magii, která jim přístup k citlivým datům umožnila? Vůbec ne! Stačilo jenom použít funkci vyhledávání na GitHubu a brzy před ně začaly vyskakovat přístupové klíče tisíců firem. Do kódu se nejčastěji nebezpečná data dostanou při testování, kdy developer použije skutečné přístupové klíče a zapomene je smazat. Pokud se k nim dostanou lidé s nekalými úmysly, mohou je využít jako dokonalý nástroj phishingu. Většina z nás je dnes obeznámena s podvodnými taktikami, kdy se email vyžadující osobní info tváří jako oficiální zpráva od skutečné firmy. Když ale hacker získá přístup k opravdovému emailu, dokáže zmást klienty mnohem lépe a bez námahy.

Začátečnická chyba?

Únik přístupových dat se bohužel netýkal jenom nezkušených programátorů, ale i lidí, kteří se psaním kódu zabývají po mnoho let, jak bylo zjištěno po analýze nalezených účtů. Výzkumný tým z NCSU také sledoval, jak rychle si developeři své chyby všimnou a jestli ji opraví. Drtivá většina z nich si nebyla jakéhokoliv pochybení vůbec vědoma. GitHub, který od roku 2018 vlastní Microsoft, se snaží před podobnými úniky bránit. V současné době se chystá omezit funkce vyhledávání tak, aby bylo zamezeno snadnému nalezení API č SSH klíčů. Kromě toho se připravuje funkce Token Scanning, která chybu zjistí a upozorní na to jednotlivé programátory.

Skutečná prevence by ale měla začít už ve firmě. Developeři si musí být vědomi extrémního nebezpečí, které podobný únik dat představuje. Projektový manažer by navíc měl pravidelně procházet kód na GitHubu a mazat všechna citlivá data. Musí se tak učinit zevrubně, protože GitHub ukládá všechny předchozí verze. SSH a API klíče by tak stále mohly zůstat viset v historii. Jestliže se některá hesla na veřejnost už dostala, pak je potřeba všechna okamžitě změnit. Zahrávání si s bezpečností přístupů znamená zahrávání si s osudem celého projektu.