Forwarded from notes.ml
Я зарекался не выкладывать трендовые новости в канал, но про эту написал даже Андрей Карпаты, поэтому ловите tldr на взлом litellm:
1. Хакеры проводят кампанию на Trivy (инструмент безопасной разработки для анализа зависимостей проекта, обнаружения секретов и ошибок конфигурации). Атака заключается в краже переменных окружения и популярных файлов с кредами при каждом запуске sast-а в github ci/cd.
2. Для того, чтобы отвлечь внимание от атаки, хакеры запускают спам боты на issue в гитхабе.
3. LiteLLM проект популярный, поэтому разрабатывают свой код безопасно, используют Trivy сканер в свох пайплайнах. Он есть на гитхабе + это подтвердил на hackernews разработчик проекта.
4. Хакеры получают креды LiteLLM, потому что в пайплайнах засветился токен для публикации пакетов pypi
5. Этим токеном хакер публикует litellm@1.82.7, в котором при импорте библиотеки запускается вредоносная нагрузка по краже (1.82.7: proxy_server․py → p․py → checkmarx․zone/raw)
6. Охваты такой цепочки видимо не оправдали ожиданий, поэтому следом публикуется litellm@1․82․8, в котором даже импортировать пакет не надо (1.82.8: litellm_init․pth → models․litellm․cloud):
7. Хакеры повторяют трюк с флудом в issue, чтобы снова отвлечь внимание от кампании (листайте тут). Пересечение аккаунтов с спам-атакой на trivy больше 75%.
8. done
А еще сделал вас сделал мем-диаграмму на процессы безопасной разработки в 2к26😁
1. Хакеры проводят кампанию на Trivy (инструмент безопасной разработки для анализа зависимостей проекта, обнаружения секретов и ошибок конфигурации). Атака заключается в краже переменных окружения и популярных файлов с кредами при каждом запуске sast-а в github ci/cd.
2. Для того, чтобы отвлечь внимание от атаки, хакеры запускают спам боты на issue в гитхабе.
3. LiteLLM проект популярный, поэтому разрабатывают свой код безопасно, используют Trivy сканер в свох пайплайнах. Он есть на гитхабе + это подтвердил на hackernews разработчик проекта.
4. Хакеры получают креды LiteLLM, потому что в пайплайнах засветился токен для публикации пакетов pypi
PYPI_PUBLISH.5. Этим токеном хакер публикует litellm@1.82.7, в котором при импорте библиотеки запускается вредоносная нагрузка по краже (1.82.7: proxy_server․py → p․py → checkmarx․zone/raw)
6. Охваты такой цепочки видимо не оправдали ожиданий, поэтому следом публикуется litellm@1․82․8, в котором даже импортировать пакет не надо (1.82.8: litellm_init․pth → models․litellm․cloud):
.pth files in site-packages/ are executed automatically by the Python interpreter on startup (see Python docs on .pth files). No import statement is needed.
7. Хакеры повторяют трюк с флудом в issue, чтобы снова отвлечь внимание от кампании (листайте тут). Пересечение аккаунтов с спам-атакой на trivy больше 75%.
8. done
А еще сделал вас сделал мем-диаграмму на процессы безопасной разработки в 2к26
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Долго думали как пошутить в анонсе следующей RG, но поняли, что авторов разбираемой статьи не переплюнуть. Ну смотрите сами:
- ROME
- Let it flow
- Rock and Roll
Это все не рандомный набор слов, а реальные названия частей решения коллег из Alibaba в их статье про обучение агентов. Получилось у них интересно и плотность инсайтов высокая. И да, это та самая статья где описывается кейс, когда агент пошел майнить крипту на тренинг машине.
За вас прочитал 40 страниц мемов и технологий Андрей Кузнецов. Встретимся в эту пятницу как всегда в 15:00 по МСК
вот тут 👉 ссылка
- ROME
- Let it flow
- Rock and Roll
Это все не рандомный набор слов, а реальные названия частей решения коллег из Alibaba в их статье про обучение агентов. Получилось у них интересно и плотность инсайтов высокая. И да, это та самая статья где описывается кейс, когда агент пошел майнить крипту на тренинг машине.
За вас прочитал 40 страниц мемов и технологий Андрей Кузнецов. Встретимся в эту пятницу как всегда в 15:00 по МСК
вот тут 👉 ссылка
👍6🔥5❤4😁3
Нас уже 500 🎉
За неполный год в нашем сообществе прошло 18 встреч RG (#reading_group), в которых:
— 18 раз упоминали LLM и агентов
— 7 раз затрагивали кибербез
— 5 раз ковыряли архитектуры нейросетей
В хвост распределения попали механики обучения, эвалы, AI safety и обзоры конференций!
А также:
— заанонсили 4 AI/ML-фичи нашей команды (раз, два, три, четыре)
— провели митап
— завели сайт комьюнити
— открыли регистрацию на московский хаб международного соревнования PAC1
Спасибо, что с нами🖤
За неполный год в нашем сообществе прошло 18 встреч RG (#reading_group), в которых:
— 18 раз упоминали LLM и агентов
— 7 раз затрагивали кибербез
— 5 раз ковыряли архитектуры нейросетей
В хвост распределения попали механики обучения, эвалы, AI safety и обзоры конференций!
А также:
— заанонсили 4 AI/ML-фичи нашей команды (раз, два, три, четыре)
— провели митап
— завели сайт комьюнити
— открыли регистрацию на московский хаб международного соревнования PAC1
Спасибо, что с нами🖤
❤17🎉9
Внимание! ДРОП!
Для каждого участника хаба False Positive мы подготовилишапочку из фольги мерч на случай восстания AGI!
P.S. Первые аппрувы на участие уже улетели, но еще остались места на участие в BitGN PAC в нашем московском хабе: https://forms.yandex.ru/cloud/69ce259b068ff07ac84e3682/
Для каждого участника хаба False Positive мы подготовили
P.S. Первые аппрувы на участие уже улетели, но еще остались места на участие в BitGN PAC в нашем московском хабе: https://forms.yandex.ru/cloud/69ce259b068ff07ac84e3682/
🔥20😁9❤7👍1
Модель, которая не смогла остановиться...
Qwen/Qwen3.5-122B-A10B-FP8, vLLM, temperature=0
Небольшая вводная: есть набор задач, есть входные данные и промпт из них для модели. И модель начинает уходить в бесконечную генерацию на, казалось бы, обычных входных данных
Начали ковырять вход, проблема все воспроизводилась и воспроизводилась, пока случайно не заметили, что дело оказалось в переданном хеше в промпте, который нужно было использовать модели в своем ответе
Да,
Обрезка хеша до фиксированной длины
Полезли в токенизатор модели, а у нас тут
-
-
И вот модель начинает генерировать хеш посимвольно — токен за токеном. При temperature=0 (greedy decoding) модель на каждом шаге выбирает самый вероятный следующий токен. Проблема в том, что у таких повторений есть эффект самоподкрепления: чем больше hex-символов уже сгенерировано в контексте, тем выше вероятность, что модель продолжит генерировать еще один hex-символ вместо того, чтобы остановиться. Контекст заполняется однотипными токенами [0-9a-f], и модель буквально не может из этого выбраться — greedy decoding не дает ей шанса случайно выбрать стоп-токен, потому что он каждый раз оказывается чуть менее вероятным, чем очередной hex-символ. Отдельно интересно, что это хорошо согласуется с наблюдениями из литературы
Поэтому решается это проблема и при помощи возвращения модели к дефолт параметрам (temperature > 0)
PS: в комментах для вас подготовили пару скриншотов
Qwen/Qwen3.5-122B-A10B-FP8, vLLM, temperature=0
Небольшая вводная: есть набор задач, есть входные данные и промпт из них для модели. И модель начинает уходить в бесконечную генерацию на, казалось бы, обычных входных данных
Начали ковырять вход, проблема все воспроизводилась и воспроизводилась, пока случайно не заметили, что дело оказалось в переданном хеше в промпте, который нужно было использовать модели в своем ответе
Да,
2dac9f524a8996e8b5638ac7c29fb89358c311d4 с нулевой температурой приводил модель в ужас и не давал выйти из цикла генерации ответаОбрезка хеша до фиксированной длины
2dac9f52 исправила ситуацию, проблема решена, можно дальше работать, но интерес почему так произошло не давал покояПолезли в токенизатор модели, а у нас тут
-
2dac9f524a8996e8b5638ac7c29fb89358c311d4 -> 2 | dac | 9 | f | 5 | 2 | 4 | a | 8 | 9 | 9 | 6 | e | 8 | b | 5 | 6 | 3 | 8 | ac | 7 | c | 2 | 9 | fb | 9 | 9 | 3 | 5 | 8 | c | 3 | 1 | 1 | d | 4 — 36 токенов-
2dac9f52 -> 2 | dac | 9 | f | 5 | 2 — 6 токеновИ вот модель начинает генерировать хеш посимвольно — токен за токеном. При temperature=0 (greedy decoding) модель на каждом шаге выбирает самый вероятный следующий токен. Проблема в том, что у таких повторений есть эффект самоподкрепления: чем больше hex-символов уже сгенерировано в контексте, тем выше вероятность, что модель продолжит генерировать еще один hex-символ вместо того, чтобы остановиться. Контекст заполняется однотипными токенами [0-9a-f], и модель буквально не может из этого выбраться — greedy decoding не дает ей шанса случайно выбрать стоп-токен, потому что он каждый раз оказывается чуть менее вероятным, чем очередной hex-символ. Отдельно интересно, что это хорошо согласуется с наблюдениями из литературы
Поэтому решается это проблема и при помощи возвращения модели к дефолт параметрам (temperature > 0)
PS: в комментах для вас подготовили пару скриншотов
😁10🔥6❤3
Всем участникам BitGN PAC1 приготовиться!
False Positive Hub открывает свои двери в 11:00
В 14:00 начинается PAC-prod
p.s. Мерч забрал, везу в хаб!
False Positive Hub открывает свои двери в 11:00
В 14:00 начинается PAC-prod
p.s. Мерч забрал, везу в хаб!
👍5😍4❤1🔥1
Forwarded from LLM под капотом
bitgn/pac1-prod is live in blind mode!Switch your agents to this id.
❤2🔥2🥰1
Решаешь BitGN PAC?
Anonymous Poll
22%
Да, онлайн!
22%
Да, оффлайн в одном из хабов!
24%
Не дошли руки:(
32%
Что это такое?
❤3🔥1🥰1
Всем, кто был с нами - большое СПАСИБО!
Когда мы подписывались на эту авантюру, представляли, как такой ивент прошел бы в топовом международном стартапе - и он стал именно таким❤️
Кулуарный, но техничный, яркий, но душевный!
Мы очень ценим, что вы активно делились идеями и результатами, опытом в индустрии, что мы с вами были на одной волне!
Было приятно познакомиться с каждым из вас!
BitGN PAC1 x False Positive
11APR2026
Когда мы подписывались на эту авантюру, представляли, как такой ивент прошел бы в топовом международном стартапе - и он стал именно таким❤️
Кулуарный, но техничный, яркий, но душевный!
Мы очень ценим, что вы активно делились идеями и результатами, опытом в индустрии, что мы с вами были на одной волне!
Было приятно познакомиться с каждым из вас!
BitGN PAC1 x False Positive
11APR2026
❤19🔥14👍8