URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 134265
[ Назад ]

Исходное сообщение
"Утечка токена для полного доступа к GitHub-репозиториям проекта Python"

Отправлено opennews , 12-Июл-24 10:10 
Исследователи из компании JFrog обнаружили в составе Docker-образа "cabotage-app" токен, предоставляющий доступ с правами администратора к репозиториям  Python, PyPI и Python Software Foundation на GitHub. Токен был найден в бинарном  файле "__pycache__/build.cpython-311.pyc" с прокэшированным скомпилированным байткодом...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=61531


Содержание

Сообщения в этом обсуждении
"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено randomize , 12-Июл-24 10:10 
Расскажите ему про .gitignore.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:33 
И про то что в гите можно смотреть что ты коммитаешь, а не коммитать весь треш

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:55 
чушь несете! какой gitignore! речь про docker-образ.

мамкины программисты!


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Xasd7 , 12-Июл-24 12:16 
тока в Git токен не попал :-)

а вот в бинарник попал — что нам напоминает правило:

не нужно ВООБЩЕ в открытый доступ выкладывать то что скомпилировано на твоём лаптопе — выкладывай в паблик только то что скомпилировала общий сборочный конвеер  на сервере


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 12:56 
Воот, теперь-то все как надо, теперь оно и в гит попадет. Потом конечно будет удалено, новым комитом.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 23:09 
> И про то что в гите можно смотреть что ты коммитаешь, а не коммитать весь треш

В этой новости прекрасно все. Начиная от комита в гит левого мусора, которого там быть вообще не должно, через доступ к инфраструктуре от души, а вишенкой на торте - КТО это все организовал. Это оглущительный успех питон-фаундации, кадровой политики и пиара, супер-комбо все в 1.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено mickvav , 13-Июл-24 16:06 
Так токен же вроде в docker-образе нашли а не в гите, нет?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Бывалый Смузихлёб , 16-Июл-24 19:14 
> вишенкой на торте - КТО это все организовал

ви таки имеете что-то против гомо-нигг после прочтения КоК'а !?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Илья , 13-Июл-24 03:10 
Ты правда думаешь что питон-девелопер способен это понять?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Волк , 12-Июл-24 11:49 
.dockerignore

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено анон , 12-Июл-24 21:08 
Скорее про .dockerignore

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено hr , 12-Июл-24 23:20 
на собесе расскажут

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:12 
> пост директора по инфраструктуре

"смотрите, как я умею!"


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:16 
Это... какой-то позор?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Вы забыли заполнить поле Name , 12-Июл-24 14:29 
Позорище

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:27 
Смотрите как могу:

> -B     : don't write .pyc files on import; also PYTHONDONTWRITEBYTECODE=x


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 11:22 
дрянная идея. Это контейнер который будет большинством обезьянок использоваться as-is.

Вот то что байткод брался из хомяка горе-разработчика вместо компиляции в закрытом окружении докера - это конечно минус.
Но ничуть бы не помогло от гения-директора обходящего защиту от роботов патамуштамагу. Он бы и руками не забыл добавить внутрь образа.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:28 
> не учёл, что упоминание токена прокэшировалось в предкомпилированном файле с байткодом, который затем попал в docker-образ

В пакетном менеджере Nix этой проблемы нет: перед сборкой все неигнорируемые файлы копируются в /nix/store, так что сборщик видит только реально исходные тексты. Любопытно, но так никто и не догнал Nix ни в этом, ни во всех остальных отношениях. Хотя Nix из далекого 2004.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено mimocrocodile , 12-Июл-24 10:47 
> перед сборкой все неигнорируемые файлы копируются в /nix/store, так что сборщик видит только реально исходные тексты

ты не поверишь, но в докере тоже сборщик не видит игнорируемые файлы


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 11:15 
Видит. Другое дело, что у докера свой собственный .dockerignore, который конечно же никто не будет синхронизировать с .gitignore. Отсюда имеем, что имеем ("it's what it's").

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:59 
А что его синхронизировать, если git поддерживает симлинки?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено 9392012938к8282 , 13-Июл-24 09:16 
Docker не поддерживает dockerignore в подпапках. У gitignore больше синтаксиса (но можно ограничиться подмножеством обоих).

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Соль земли , 12-Июл-24 10:48 
Люди не готовы к будущему.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 13-Июл-24 02:54 
Да во всех дистрах сто лет уже собирают пакеты (и, соответственно, ПО) в clean chroot. Причем, там chroot на стероидах. А тут опять какой-то стартап на армейской коленке освоил технологии "дидов" и выдаёт это за инновацию. Linux namespaces (bubblewrap, systemd-nspawn или что-нибудь ещё), хотя бы, к своей псевдоизоляции на симлинках прикрутитите, как у других, а потом выпендривайтесь, никсоё^Hводы. А то любая программа может прочитать и вызвать по абсолютному пути /nix/store/blablabla всё, что пожелает.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено morphe , 13-Июл-24 04:38 
Там ровно это и имеется, при сборке пакета он не может обращаться к чему-либо кроме своих зависимостей

Исключение - интернет, но в этом случае должен быть известен хеш полученного пакета, т.е чтобы curl вызвать нужно указать какой хеш будет у скачанного файла.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 14-Июл-24 22:03 
> Там ровно это и имеется

Там самый обычный, только костыльный, chroot без изоляции.

> какой хеш

find /nix -name \*curl



"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено morphe , 14-Июл-24 23:22 
> Там самый обычный, только костыльный, chroot без изоляции.

Да что ты такое несёшь

Там и userns, и netns, и mountns, и seccomp, и монтируются в песочницу только зависимости, и доступа в песочницы не имеет никто кроме рута и nix демона.

Доступ в интернет доступен только для сборки тех пакетов, для которых прописан конечный хеш, скачиваемый файл = пакет который для сборки дёргает curl, чтобы скачать файл нужно заранее прописать хеш файла который будет скачан.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:30 
Анализ показывает что всем пофиг на эти токены и дыры типа выхода за границы буфера. Это только маленьких детей пугать.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Соль земли , 12-Июл-24 10:46 
А зачем ".pyc" файлы в гит добавлять? 0_0

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:59 
ещё один! вы что-ли там совсем читать разучились? в какой гит?

> Исследователи из компании JFrog обнаружили в составе Docker-образа "cabotage-app" токен ...

по буквам "обнаружили в составе Docker-образа"!


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Соль земли , 12-Июл-24 15:04 
А докер образ создаётся CI/CD при выполнении пуша.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Tron is Whistling , 13-Июл-24 09:43 
> А зачем ".pyc" файлы в гит добавлять? 0_0

Перевод с питона на русский.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 10:46 
> По сообщению представителей репозитория PyPI токен был создан в 2023 году для разработчика ewdurbin (Ee Durbin), который занимает в организации Python Software Foundation пост директора по инфраструктуре.

Жёваный стыд.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 11:13 
"а вы точно разработчик? Скажите что-нибудь на разработческом!"
"- дайте мне токен с полным доступом ко ВСЕМУ!"


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено anonymplusplus , 12-Июл-24 13:25 
> "а вы точно разработчик? Скажите что-нибудь на разработческом!"

дайте рута на прод


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Вы забыли заполнить поле Name , 12-Июл-24 14:31 
Переписка из чатика python software foundation

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено OpenEcho , 12-Июл-24 14:42 
> "а вы точно разработчик? Скажите что-нибудь на разработческом!"

"- дайте мне токен с полным доступом ко ВСЕМУ!"

Эт только уровня принципалов, все что ниже, проще на "разработческом"
- "Равиндра, игеде здесь у вас кинопка NEXT-NEXT... ?"


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Tron is Whistling , 12-Июл-24 10:56 
- Docker-образ с токеном
Девляпс-ляпс-ляпс.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 11:12 
и один ключ от всех дверей - даже не под ковриком, а просто в замке всегда торчит.

ну зато нигры-норкоманы очень важны для человечества. Про фрипластелин что-то не вижу только. Недоработочка.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:10 
Всё на месте https://durbin.ee/

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 12:48 
> Всё на месте https://durbin.ee/

а, и точно, всьо.
Этого - точно в директора!


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 11:14 
"и чтобы обойти лимиты, выставляемые для анонимных обращений к GitHub, временно добавил свой рабочий токен в код. Перед публикацией написанного кода токен был удалён, но разработчик не учёл, что упоминание токена прокэшировалось в предкомпилированном файле с байткодом, который затем попал в docker-образ"

Специалисты которых мы заслужили! Так победим! xD


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 11:19 
не специалисты а цельные директора по инфраструктуре.
Т.е. тот самый человек, который должен был первым йопнуть кулаком по столу со словами "какой на... общий ключ от всех дверей?! Вы что тут - совсем ухи поели?! Быстро накодить проверку чтоб такие ключи вообще сразу блокировались при попытке их создать."


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:21 
> не специалисты а цельные директора по инфраструктуре.
> Т.е. тот самый человек

где Вы видали вменямых топтунов?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 16:54 
ван Россум ушёл в Microsoft, вот результат

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 18:46 
ну блин, у чувака - пенсия, дача, рыбалка...

С токенами и дыркерами вон этот пусть пердолится... blm с фрипластелином. Понятно что Опоссум от них сбежал нафиг.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 22:45 
> С токенами и дыркерами вон этот пусть пердолится... blm с фрипластелином. Понятно
> что Опоссум от них сбежал нафиг.

Э нет! Напоссал и сбежал? Так не пойдет, так что - вот - брыкающегося и хрипящего его приволокли назад, объяснив что для него ад - уже начался: это гуано он будет разгребать вплоть до смерти или безумия, whichever comes 1st.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 22:43 
> Специалисты которых мы заслужили! Так победим! xD

Извините, им лениво заморачиваться с приземленными вещами типа обработки ошибок или подчистки за собой в байткоде - или хотя-бы настройки .gitignore, чтоли, как это нормальные разработчики делают.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 11:19 
В большой проект требуется директор по инфраструктуре. Требования к кандидату:
- Уверенное знание Python
- Опыт работы с контейнерами
- Желание развиваться (будет плюсом)

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 11:25 
А квота для minorities у вас есть?!


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 15:37 
Они и так проходят по квоте, у них один из ведущих разработчиков не так давно стало Alyssa-ой. Видимо, когда оно выбирало имя, смотрело на другую Alyssa-у. А казалось бы, сторонник "консервативных ценностей", работало раньше на Boeing Defence Australia, о чём гордо упоминает в своём резюме.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 18:47 
> Они и так проходят по квоте, у них один из ведущих разработчиков
> не так давно стало Alyssa-ой. Видимо, когда оно выбирало имя, смотрело
> на другую Alyssa-у. А казалось бы, сторонник "консервативных ценностей", работало раньше
> на Boeing Defence Australia, о чём гордо упоминает в своём резюме.

а потом - е6анулось... а мы удивляемся, чего у них один токен от всех замков.

Жги, Г-ди!


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:07 
Требования к гендеру?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено n00by , 12-Июл-24 11:31 
> разработчик не учёл, что упоминание токена прокэшировалось
> в предкомпилированном файле с байткодом, который затем
> попал в docker-образ.

Как оно могло прокешироваться? Изменил исходник, значит и содержимое кеша должно измениться при запуске? Или он не проверял (не запускал)? Не проверял, потому что не изменял исходник вручную, а откатил коммит?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 11:49 
может даже и запускал - в уже собранном докер-контейнере.
А в образе спокойно лежал и пах старый бинарник.

Что образ при сборке не компилился - ну на фоне существования "токена-от-ВСЕГО" - право же ж, такая мелочь. Некогда, некогда ждать пока он скомпилируется, девляп-ляп-ляп-ляп и в продакшн!


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено n00by , 12-Июл-24 16:58 
Токен это нормально же. Во-первых, ныне 2к24. Во-вторых, это не os.system("sudo curl"), или как там оно делается на пихоне, "прокешировался". Печалит, что ни в 29a, ни в BHC уже не написать по этому поводу.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Карлос Сношайтилис , 12-Июл-24 12:25 
Запуск не вызывает ребилд контейнера.

Но более важный вопрос: с какого рожна, образ заливается с машины разраба, а не собирается на билд-сервере?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 12:54 
вообще-то должен бы был - но текущего контейнера. А образ где был (в дыркер хапе) там и лежит, всем на радость.

> Но более важный вопрос: с какого рожна, образ заливается с машины разраба, а не собирается на
> билд-сервере?

ну это ж ах...еть удобно отлаживать, да?

  


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Карлос Сношайтилис , 12-Июл-24 13:52 
Отлаживать удобно локально, а продовая сборка должна выполняться автоматически и не на машине разраба.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено n00by , 12-Июл-24 16:51 
Так в каком именно месте в этой схеме технологическое отверстие? Это зиродей или во всю уже эксплуатируют ситуацию, когда в исходнике написано одно, а кеш не когерентен и исполняется чёрти че?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 18:50 
> Так в каком именно месте в этой схеме технологическое отверстие? Это зиродей
> или во всю уже эксплуатируют ситуацию, когда в исходнике написано одно,
> а кеш не когерентен и исполняется чёрти че?

ему не надо исполняться. Надо просто кому-то неленивому посмотреть что там понакэшировалось. Такой нашелся. К сожалению, не сделал forced push пустого места с приветом blm и фрипластелинам с последующим gс, придется ждать следующего.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено n00by , 12-Июл-24 20:08 
>> Так в каком именно месте в этой схеме технологическое отверстие? Это зиродей
>> или во всю уже эксплуатируют ситуацию, когда в исходнике написано одно,
>> а кеш не когерентен и исполняется чёрти че?
> ему не надо исполняться.

Если ему не надо исполняться, зачем он тогда вообще нужен?) Об этом кто-то вообще подумал?))

> Надо просто кому-то неленивому посмотреть что там понакэшировалось.
> Такой нашелся.

Наверное, дело было примерно так:
- Коллега, давайте таки поищем где-нибудь новый xz-троян!
- Не думаю, коллега, что кто-то будет ходить по проторенным дорожкам!
- Что же нам тогда делать?
- А давайте поищем в самом неожиданном месте!
- Гениальная идея! Предлагаю посмотреть .pyc файл!
- Во, точно! нашёл!

Ну не может же быть, что у них это дело поставлено на поток, и опубликовали эпичный но бесполезный для них фейл. Это конспирология! ;)


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 14-Июл-24 20:30 
> Если ему не надо исполняться, зачем он тогда вообще нужен?

это кэш, блжд. Оставшийся от предыдущего запуска.

> - А давайте поищем в самом неожиданном месте!

место совершенно ожидаемое, куча "исследователей безопастносте" развлекается grep X-Auth-Token и подобным по шитхабу и дыркерхапу, кто-то просто налажал с угадавом типа файла и случайно залез в бинарники (или не налажал и не случайно, а просто имел время и вдохновение - машина железная, пусть греп потрудится). А оно там возьми и найдись!


> Ну не может же быть, что у них это дело поставлено на поток, и опубликовали эпичный но
> бесполезный для них фейл.

атака на supply chain чуть ли не всей цивилизации пакости - и вдруг - бесполезная?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено n00by , 16-Июл-24 05:51 
>> Если ему не надо исполняться, зачем он тогда вообще нужен?
> это кэш, блжд. Оставшийся от предыдущего запуска.

Вопрос не "что", а "зачем". Зачем что-то "оставшееся" копируется куда-то, ещё и автоматически.

>> - А давайте поищем в самом неожиданном месте!
> место совершенно ожидаемое, куча "исследователей безопастносте" развлекается grep X-Auth-Token
> и подобным по шитхабу и дыркерхапу, кто-то просто налажал с угадавом
> типа файла и случайно залез в бинарники (или не налажал и
> не случайно, а просто имел время и вдохновение - машина железная,
> пусть греп потрудится). А оно там возьми и найдись!

Или так и было задумано: массы нажимают левой пяткой кнопочку, кеш копируется. :) А лажали те, кто оптимизировал поиск, исключая неподходящие типы.

>> Ну не может же быть, что у них это дело поставлено на поток, и опубликовали эпичный но
>> бесполезный для них фейл.
> атака на supply chain чуть ли не всей цивилизации пакости - и
> вдруг - бесполезная?

По сравнению с остальными, про которые не написали в новостях.)


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 16-Июл-24 08:23 
> Вопрос не "что", а "зачем". Зачем что-то "оставшееся" копируется куда-то, ещё и автоматически.

потому что COPY allthishit.tar /
а в нем целиком хомяк или вообще вся виртуалочка разработчика-директора, потому что таков путь.

Причем если после этого в том же докерфайле зачем-то еще запустить скопированное - оно кэш  перегенерит, но в нижнем слое оригинал-то останется на память.

> Или так и было задумано: массы нажимают левой пяткой кнопочку, кеш копируется.

ну дыркер примерно так и работает, но оно в staging копируется, насколько я понимаю - без явного ADD или COPY его содержимое в образ не попадет ни при каких условиях.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:03 
Пароли ненадёжно, говорили они. Нужно по ключам, токенам.
Главная проблема паролей - записывание их на бумажки и создание намеренно мастер-паролей. А вот это вот, по недосмотру оказывается в коде, в данных.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 12:52 
что значит "по недосмотру"? Оно и может быть только в коде или данных в этом коде, в том и принципиальное отличие от пароля, который должен бы быть только в голове, ну или хотя бы вот, на листочке приклеенном к монитору, как у меня.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено OpenEcho , 12-Июл-24 14:49 
> Нужно по ключам, токенам.

Да токены по большому счету только защита от паролей класса "маша", "12345678", т.к. народ неизлечим. Тоже самое что и с app-passwords от мелософта и гугли


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Соль земли , 12-Июл-24 15:07 
А пароли по недосмотру оказываются в ps aux.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 18:52 
> А пароли по недосмотру оказываются в ps aux.

там и токен окажется, не вижу никакой разницы.Тут вон уже насоветовали совать его в environment
(лучше сразу в докерфайл - надежно, на века)


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено aname , 15-Июл-24 12:30 
> лучше сразу в докерфайл

В каком- то смысле, тебя услышали


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 15-Июл-24 20:47 
>> лучше сразу в докерфайл
> В каком- то смысле, тебя услышали

да, но можно же было сделать - КРОСИВО!
(и дыркерфайл закомитить кстати в гит, одним выстрелом отстрелить два яйца)


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено aname , 15-Июл-24 21:08 
>>> лучше сразу в докерфайл
>> В каком- то смысле, тебя услышали
> да, но можно же было сделать - КРОСИВО!
> (и дыркерфайл закомитить кстати в гит, одним выстрелом отстрелить два яйца)

Может скоро и такое узреем


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:21 
>Токен был найден в бинарном файле "__pycache__/build.cpython-311.pyc" с прокэшированным скомпилированным байткодом.

Какого хрена вообще переменные окружения сохраняются в файл с прокешированным байткодом?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Карлос Сношайтилис , 12-Июл-24 12:28 
В новости шесть параграфов.
Четвёртый - код, который отвечает на твой вопрос.

Ты смог прочитать только три параграфа? Или сдался сразу после картинки?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено aname , 15-Июл-24 12:30 
После заголовка

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено 111 , 12-Июл-24 12:24 
Что-то я не понял. Можно же указывать время жизни токена? Указал время жизни в месяц — и всё! Какие проблемы?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 12:50 
Как какие - через месяц же сломается все, вот какие!

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено 111 , 12-Июл-24 16:11 
что сломается?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Ахз , 13-Июл-24 00:51 
всё, что не ясно ?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено 111 , 15-Июл-24 09:11 
> всё, что не ясно ?

У меня ничего не ломается. Всё работает.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 12:56 
>обнаружили в составе Docker-образа "cabotage-app"

Имели в виду sabotage, но клавишей промахнулись.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 13:26 
Виновник - саботажник, который должен быть с позором уволен.

>Токен предоставлял доступ с правами администратора ко всем репозиториям и организациям проекта, включая все репозитории организаций pypi, python, psf и pypa

1. Почему вообще такой токен был сгенерирован? Зачем этому токену доступ к пушу кода?

> в процессе разработки инструментария cabotage-app5 на своей локальной системе столкнулся с ограничениями интенсивности доступа к API GitHub при выполнении функции автоматизированной загрузки файлов из GitHub, и чтобы обойти лимиты, выставляемые для анонимных обращений к GitHub, временно добавил свой рабочий токен в код.

2. Виновник якобы тестировал свой недокод на особо важно проде особо важной организации с особо важными репозиториями.

3. Питоньи библиотеки для работы с GitHub API подхватывают токен автоматически из переменных окружения. Это сделано потому. что GitHub Actions ставит временный per-pipeline токен в переменную окружения, и он нужен почти всегда. Об этом знает каждый, кто работал с GitHub API и GitHub Actions из питона. Для того, чтобы предоставить токен, не нужно его хардкодить!

Для предотвращения ситуации нужно изменить модель токенов.
1. Одно разрешение - один токен.
2. В начале каждого токена должно быть в человекочитаемом виде захардкожено, какое разрешение он предоставляет. Предложение: 4 ASCII-символа на тип, потом вертикальная черта, потом сам токен.
3. либы получают не один токен, а ворох токенов.
4. Либы должны парсить начало токена и для каждый операции использовать нужный токен из набора
5. при генерации токена с вогрошом разрешений ... гитхаб должен отдавать конкатенацию индивидуальнох токенов, разделённых разделителями. Должно быть разрешено отправлять эту конкатенацию в качестве токена, бэкенд разделит и разберётся, какой из токенов подходит. Предложение - для конкатенации использовать двоеточие в качестве разделителя. При этом отправка таких токенов на бэкенд deprecated с самого начала, с жёсткой датой, когда это перестанет быть допустимо.
6. либы тоже должны уметь разделять контакенацию на ворох токенов, только для них это не deprecated, а штатный режим работы.
7. либы должны предоставлять API для сбора и разбора колбасы их токенов.
8. должен предоставляться CLI-инструмент для сбора и разбора колбасы их токенов.
9. Старые токены становятся deprecated, и очень вскоре после создания нового механизма инвалидируются. При этом переход на временные сардельки не требует изменений со стороны софта - только перегенерации токенов.

А теперь как это помешает засунуть весь ворох. Ответ - никак. От высокопоставленного саботажника не защитит ничего в принципе. Зато честному долбоящеру, которому до ужаса лень генерить новый токен, будет меньше стимулов засовывать универсальный высокопривелигированный токен (который теперь будет колбасой) в свой код, легче его разрезать инструментом и засунуть только нужный подтокен.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 16:17 
> Виновник - саботажник, который должен быть с позором уволен.

не саботажник, а директор. Сам кого хочешь уволит!

> 1. Почему вообще такой токен был сгенерирован? Зачем этому токену доступ к

это вопрос который директору задавать нельзя.

> 3. Питоньи библиотеки для работы с GitHub API подхватывают токен автоматически из
> переменных окружения. Это сделано потому. что GitHub Actions ставит временный per-pipeline

они в дыркер автоматически не передаются. А документацию директору читать некогда.

> Для предотвращения ситуации нужно изменить модель токенов.

тебя не назначат директором, не волнуйся так.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 13:47 
Python - всё? Новость сделала мой день.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 13:55 
вы понимаете что произошло, питон полностью скомпрометирован, его теперь только в помойку.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено OpenEcho , 12-Июл-24 14:51 
И сколько тогда реальных программистов останется?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 15:16 
А какая связь? Столько же и останется, сколько было, реальных-то.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено OpenEcho , 12-Июл-24 15:50 
> А какая связь? Столько же и останется, сколько было, реальных-то.

:))) 10-0


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 12-Июл-24 16:18 
> А какая связь? Столько же и останется, сколько было, реальных-то.

ну, а кодить тогда кто будет?!

Реальные - заняты. Кто пиццей торгует, кто чем. Самые ленивые - в нвидии, драйвер для линукса пилют.



"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 17:04 
>его теперь только в помойку

соображающие люди это давно поняли, поэтому 70% корпорат. приложений - на Java


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 13-Июл-24 04:41 
java разработчики точно такие же питонисты, даже ещё в большем неадеквате. Вот пример

https://en.wikipedia.org/wiki/Log4Shell


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено aname , 15-Июл-24 12:33 
Там тоже нашли токен от всех реп?

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 15-Июл-24 17:22 
Чукча не читатель? Там токен от всего прода

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 15-Июл-24 20:49 
> Чукча не читатель? Там токен от всего прода

только у дура4ков которые логают нефильтрованный юзеринпут.



"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Вы забыли заполнить поле Name , 12-Июл-24 14:33 
Чему вы не рады? Каждый мог поправить питон как надо. Вы упустили свой шанс, вот и беситесь.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 14:58 
> удалён 11 июня 2024 года

И зачем? Как теперь получать "доступ с правами администратора ко всем репозиториям и организациям проекта, включая все репозитории организаций pypi, python, psf и pypa"?


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено penetrator , 12-Июл-24 15:19 
> упоминание токена прокэшировалось в предкомпилированном файле с байткодом, который затем попал в docker-образ

docker упрощает деплоймент, ога ))

очердной костыль и точка отказа


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено crypt , 12-Июл-24 15:35 
> Проведённый разработчиками Python аудит активности в репозиториях на GitHub не выявил сторонних попыток доступа

а жаль. типичный современный айти. разработчики, которые не знают, как на низком уровне работает их язык, дыркер... вот нашелся бы какой хакер на них.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 15-Июл-24 20:50 
>> Проведённый разработчиками Python аудит активности в репозиториях на GitHub не выявил сторонних попыток доступа
> а жаль. типичный современный айти. разработчики, которые не знают, как на низком

дык. они и провели аудит активностей. ничего не аудитится, потому что аудитлог стерт. Все хорошо и просто прекрасно.

> уровне работает их язык, дыркер... вот нашелся бы какой хакер на
> них.

главное чтоб нашедшиеся не передрались



"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 15:47 
>Python, PyPI, Python Software Foundation

Попытался представить себе последствия если бы токен нашли blackhat. Индустрию долбануло бы.

На сей раз пронесло. Зато теперь плохие ребята знают еще одно место где надо искать.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 16:06 
>На сей раз пронесло.

С чего ты решил, что пронесло? Как-то не очень верится в честное слово этих товарищей после такого эпичного обсера своих штанов. Кто же в этом признается, может они сейчас чтобы не наводить панику по тихому делают аудит?! Если все же пронесло - промолчат, а если нет - запасается попкорном.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 15-Июл-24 20:51 
>>На сей раз пронесло.
> С чего ты решил, что пронесло?

да, я вот тоже хорошо информированный оптимист.

> в этом признается, может они сейчас чтобы не наводить панику по
> тихому делают аудит?! Если все же пронесло - промолчат, а если

Как будто они - умеют?!

Тебя б так пронесло, подумал Мюллер.



"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 16:50 
то ли ещё будет ...

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено n00by , 12-Июл-24 17:12 
> На сей раз пронесло.

Тебя бы так пронесло, подумал Борман (ц)


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 12-Июл-24 22:40 
> Токен был найден в бинарном файле "__pycache__/build.cpython-311.pyc"
> с прокэшированным скомпилированным байткодом.

Да куда питонистам байткод изучать? У них там полет мысли, высокие концепции, не до этого им. Вот прототипов бы скорей-быстрей!

> занимает в организации Python Software
> Foundation пост директора по инфраструктуре.

Какой ЯП такая и инфраструктура с директорами.

> Токен предоставлял доступ с правами администратора ко всем репозиториям
> и организациям проекта

Все правильно сделал. А потом питонисты удивляются что их считают, как бы это сказать, не гроссмейстерами, чтоли.


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Mim , 13-Июл-24 03:25 
Я просто оставлю это здесь.

https://mastodon.social/@EWDurbin/110531653383028239
> python, infra, cloud, etc. got a smol project you'd like to get whipped? contractin@durbin.ee


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 13-Июл-24 04:37 
>  Автор кода пояснил, что в процессе разработки инструментария cabotage-app5

Вот, сам признался что занимался саботажем, все бы так


"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Ыеуз0 , 13-Июл-24 07:20 
Я думал, что такая нацеленность на результат ещё не везде со стороны молодых, да ранних (в основном молодых, как мне кажется). Ан нет. Условное "дайте мне рута, разбираться некогда, надо работать в локере на питоне и джанге" процветает уже везде.

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено нах. , 13-Июл-24 20:50 
это эджизм. Давайте тебя заканселим!

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено aname , 15-Июл-24 12:34 
А вы токен для этого предъявите

"Утечка токена для полного доступа к GitHub-репозиториям прое..."
Отправлено Аноним , 13-Июл-24 14:25 
И ни слова извинений и посыпания головы пеплом. Ваще пофиг. Главное в конце написать какое мы прекрасное комунити.