Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
История про одного нерадивого участника воркшопа от GeekBrains.
Предыстория
Как обычно я пытался найти в Github информацию об интересной мне компании.
В этот раз меня дорога завела совсем в другую сторону.
Я обнаружил персональную прямую ссылку на документ (персональные данные), которым нельзя по идее с кем-либо делиться. Документ располагается на сайте интересуемой меня компании:
Я подумал, что это очередной новый SMS-бомбер, но все оказалось иначе.
Открыв файл сразу понял, что это логин и пароль от сайта выделенного синим цветом. Этот сайт не связан с компанией интересующей меня:
Исследование
Открыв историю изменения стало понятно следующее. Как оказалось, некий пользователь последним коммитом добавил 754 файла с персональными данными и иной конфиденциальной информацией:
Пример данных среди файлов:
Как так получилось?
Итак, история уже никак не связана с компанией, что меня интересует. Как так получилось? Я тоже задался этим вопросом. Я открыл его репозиторий Test и сразу стало понятно по комментариям почему так получилось:
Изучая остальные репозитории мы подтверждаем связь с GeekBrains:
Студент научился форкать репозиторий преподавателя и создавать репозитории, а так же загружать в них файлы, не разбираясь, что конкретно загружает.
Изучаем программу данного воркшопа:
Программа курса
Соответствие групп и тем на практикум.
Что такое система контроля версий
Для чего нужна система контроля версий
Установка git на ваш ПК (в зависимости от системы)
Установка VSCode на ваш ПК
Что такое репозиторий и инструкция по созданию локальных репозиториев.
Базовая работа с локальным репозиторием
Что такое ветки и для чего они нужны при работе с системой контроля версий.
Базовая работа с ветками в git.
Что такое удаленный репозиторий и для чего он нужен
Базовая работа с удаленными репозиториями GitHub
Как строится и для чего нужна совместная работа в системах контроля версий
Инструкция по созданию pull request
Книги и полезные ссылки по изучению git.
Альтернативные системы контроля версий.
Не хватает раздела про аудит репозитория и правилам удаления репозитория?
Все файлики о которых шла речь ранее в репозитории с рабочего стола разложены по папочкам:
Так же изучая историю действий пользователя, я наконец понял как все произошло.
Некая Анастасия, обучаясь в GeekBrains, выполняла задания за общим компьютером, которым пользуются другие члены семьи, в том числе по рабочим задачам, связанным с обработкой персональных данных водителей. В итоге в результате обучения рабочая папка, расположенная на рабочем столе ученика, была ошибочно загружена в Github вместе с иными файлами в репозиторий Test.
Выводы
Пользователь, имеющий доступ к персональным данным других физических лиц, предположительно законным образом не имеющий к ним доступ, пытается войти в ИТ;
GeekBrains пытались его обучить;
Из этого ничего не вышло;
Ученик даже не понял, что сделал;
Преподаватель слабо проконтролировал то, что делал ученик;
Компания, подрядчиком которой является родственник пользователя и сам родственник уведомлены, ответа пока нет;
Во время обучения подробно изучайте всё, что выделаете по два раза, если что-то непонятно, не стесняйтесь спрашивать у лектора и знакомых;
Лекторы недостаточно качественно изучают то, что делают их студенты.
PS
Если нет желания удалять репозиторий, то удалять конфиденциальные данные необходимо согласно инструкции: Removing sensitive data from a repository - GitHub Docs
Даже я сегодня в одном из своих репозиториев обнаружил Google API key который я разгласил в 2019 году:
Будьте осторожны.