Библиотека Axios была взломана
Если вы используете ее в своем проекте, не обновляйте версию в ближайшее время!
Вот что произошло: 31 марта 2026 года StepSecurity обнаружила две вредоносные версии библиотеки Axios, опубликованные в npm: axios@1.14.1 и axios@0.30.4. Обе были опубликованы через скомпрометированные учётные данные основного мейнтейнера. Stepsecurity
Суть атаки: атакующий скомпрометировал npm-аккаунт jasonsaayman (основной мейнтейнер Axios), внедрил скрытую зависимость plain-crypto-js@4.2.1, которая устанавливает кроссплатформенный RAT (Remote Access Trojan) на macOS, Windows и Linux. The Hacker News
Хронология:
30 марта, 23:59 UTC — опубликована вредоносная зависимость plain-crypto-js@4.2.1. В течение нескольких минут были выложены заражённые версии Axios. Автоматические сканеры Socket обнаружили аномалию через 6 минут, в 00:05:41 UTC 31 марта. Socket
Что делать:
Проверь свои проекты: npm list axios
• Если стоит 1.14.1 или 0.30.4 — немедленно откатись на 1.14.0 (последняя безопасная)
• Проверь наличие node_modules/plain-crypto-js/ — само наличие этой папки в node_modules — достаточное доказательство того, что дроппер был активен Techzine Global
• На macOS RAT прячется в /Library/Caches/com.apple.act.mond, на Windows копирует PowerShell в %PROGRAMDATA%\wt.exe, на Linux скачивает скрипт в /tmp/ld.py Techzine Global
@onecode_blog
Если вы используете ее в своем проекте, не обновляйте версию в ближайшее время!
Вот что произошло: 31 марта 2026 года StepSecurity обнаружила две вредоносные версии библиотеки Axios, опубликованные в npm: axios@1.14.1 и axios@0.30.4. Обе были опубликованы через скомпрометированные учётные данные основного мейнтейнера. Stepsecurity
Суть атаки: атакующий скомпрометировал npm-аккаунт jasonsaayman (основной мейнтейнер Axios), внедрил скрытую зависимость plain-crypto-js@4.2.1, которая устанавливает кроссплатформенный RAT (Remote Access Trojan) на macOS, Windows и Linux. The Hacker News
Хронология:
30 марта, 23:59 UTC — опубликована вредоносная зависимость plain-crypto-js@4.2.1. В течение нескольких минут были выложены заражённые версии Axios. Автоматические сканеры Socket обнаружили аномалию через 6 минут, в 00:05:41 UTC 31 марта. Socket
Что делать:
Проверь свои проекты: npm list axios
• Если стоит 1.14.1 или 0.30.4 — немедленно откатись на 1.14.0 (последняя безопасная)
• Проверь наличие node_modules/plain-crypto-js/ — само наличие этой папки в node_modules — достаточное доказательство того, что дроппер был активен Techzine Global
• На macOS RAT прячется в /Library/Caches/com.apple.act.mond, на Windows копирует PowerShell в %PROGRAMDATA%\wt.exe, на Linux скачивает скрипт в /tmp/ld.py Techzine Global
@onecode_blog
👍10😱3❤1
Вместе с Клодом провели небольшой эксперимент
Написали три маленьких сервиса на языках программирования Go, Rust и JavaScript (Node.js). Каждый из сервисов выполнял простую задачу: подключался по веб-сокетам к моему аккаунту на криптовалютной бирже. Я на бирже создавал и отменял ордера, короче говоря, покупал и продавал криптовалюту, чтобы замерить, за какое время данные по веб-сокетам с биржи дойдут до моего компьютера.
Также добавил сюда еще четвертого кандидата на PHP — это мой существующий проект на Laravel, где у меня также работают веб-сокеты, написанные на PHP. Результат вы видите в таблице: на первом месте язык Go, который быстрее всех обрабатывал и выводил в консоль сообщения; на втором месте язык Rust, но с очень маленьким отрывом, хотя я думал, что он будет на первом месте; на третьем месте язык JavaScript через Node.js; и на четвертом месте PHP.
Ожидаемо, что PHP будет на четвертом месте, но надо отдать должное, что отрыв не такой уж криминальный, особенно с учетом того, что это команда
Также используется большой пакет для веб-сокетов, со своим event loop. Все это работает на одном ядре.
Короче говоря, сервисы на Go, Rust и JS очень маленькие, а реализация на PHP намного более "жирная", потому что это мой реальный проект.
И даже при этих условиях она показала отличный результат. И да, под нагрузкой результаты могут измениться, но всё равно интересный эксперимент.
@onecode_blog
Написали три маленьких сервиса на языках программирования Go, Rust и JavaScript (Node.js). Каждый из сервисов выполнял простую задачу: подключался по веб-сокетам к моему аккаунту на криптовалютной бирже. Я на бирже создавал и отменял ордера, короче говоря, покупал и продавал криптовалюту, чтобы замерить, за какое время данные по веб-сокетам с биржи дойдут до моего компьютера.
Также добавил сюда еще четвертого кандидата на PHP — это мой существующий проект на Laravel, где у меня также работают веб-сокеты, написанные на PHP. Результат вы видите в таблице: на первом месте язык Go, который быстрее всех обрабатывал и выводил в консоль сообщения; на втором месте язык Rust, но с очень маленьким отрывом, хотя я думал, что он будет на первом месте; на третьем месте язык JavaScript через Node.js; и на четвертом месте PHP.
Ожидаемо, что PHP будет на четвертом месте, но надо отдать должное, что отрыв не такой уж криминальный, особенно с учетом того, что это команда
php artisan websockets, которая под капотом загружает все мое приложение на Laravel, помимо прочего, включает в себя намного больше различных проверок.Также используется большой пакет для веб-сокетов, со своим event loop. Все это работает на одном ядре.
Короче говоря, сервисы на Go, Rust и JS очень маленькие, а реализация на PHP намного более "жирная", потому что это мой реальный проект.
И даже при этих условиях она показала отличный результат. И да, под нагрузкой результаты могут измениться, но всё равно интересный эксперимент.
@onecode_blog
👍9❤3🔥1💊1
Недавно вышел Cursor v3 — новая версия популярного редактора кода с ИИ.
Однако теперь это НЕ редактор кода с ИИ, а ИИ с редактором кода.
Давно не пользуюсь Cursor, но, увидев обновление, решил посмотреть, что там придумали.
Мне стало забавно от того, что они добавляют функции и концепции, которыми я пользуюсь уже месяцами в Claude Code.
Мы уже давно привыкли к процессу разработки, где в центре внимания находится чат с ИИ, документы в формате markdown, параллельная работа нескольких агентов, а написание кода вручную — редкость.
А тут это только появляется, и, думаю, вызовет определённые неудобства у пользователей, которые ещё не успели переключить свой воркфлоу на новый современный лад.
Короче, основная фишка новой версии — переработанный интерфейс (UI) и поддержка мультиагентности.
Теперь в центре располагается чат с ИИ, слева — репозитории, а справа — документы в формате markdown.
Теперь можно запустить несколько агентов, которые могут общаться друг с другом и еще не столь значительные функции.
В общем, кто еще не понял — самое время пересмотреть свой процесс разработки.
Подробнее об обновлении
@onecode_blog
Однако теперь это НЕ редактор кода с ИИ, а ИИ с редактором кода.
Давно не пользуюсь Cursor, но, увидев обновление, решил посмотреть, что там придумали.
Мне стало забавно от того, что они добавляют функции и концепции, которыми я пользуюсь уже месяцами в Claude Code.
Мы уже давно привыкли к процессу разработки, где в центре внимания находится чат с ИИ, документы в формате markdown, параллельная работа нескольких агентов, а написание кода вручную — редкость.
А тут это только появляется, и, думаю, вызовет определённые неудобства у пользователей, которые ещё не успели переключить свой воркфлоу на новый современный лад.
Короче, основная фишка новой версии — переработанный интерфейс (UI) и поддержка мультиагентности.
Теперь в центре располагается чат с ИИ, слева — репозитории, а справа — документы в формате markdown.
Теперь можно запустить несколько агентов, которые могут общаться друг с другом и еще не столь значительные функции.
В общем, кто еще не понял — самое время пересмотреть свой процесс разработки.
Подробнее об обновлении
@onecode_blog
💯3👍2🔥2🤪1
Совет дня 💡
Используйте команду
Зачем? Пара причин:
1. Название сессии будет отображаться внизу справа, что удобно, когда мы работаем над несколькими задачами параллельно.
2. Понятные названия в списке сессий, который отображается командой
Клод придумает понятное название сам, но если что — можно указать своё.
Команду можно вызывать сразу после написания промпта или в любой другой момент.
Рекомендую 👍
Используйте команду
/rename в Claude Code, чтобы дать название текущей сессии.Зачем? Пара причин:
1. Название сессии будет отображаться внизу справа, что удобно, когда мы работаем над несколькими задачами параллельно.
2. Понятные названия в списке сессий, который отображается командой
claude -r, когда мы хотим продолжить прошлую сессию.Клод придумает понятное название сам, но если что — можно указать своё.
Команду можно вызывать сразу после написания промпта или в любой другой момент.
Рекомендую 👍
👍13🔥3❤2
Forwarded from Макс Орлов Блог
Привет, интернет!
На этих выходных гонял в Питер, чтобы помочь товарищу с переездом.
Мой друг Евгений жил в Питере 5 лет, работал тренером в дорогом фитнес-клубе.
На днях у него день рождения и он решил сделать резкий поворот в своей жизни.
Вчера Женя переехал в маленький посёлок (читай деревня), в котором живу и я.
Причины переезда, планы на будущее и движение вперед на новом месте.
Обо всём это Женя рассказывает и показывает в своём небольшом блоге.
Давайте сделаем подарок на ДР и поддержим его в этот момент.
Мне интересен его контент про тренировки и переезд из города.
Он не айтишник, не бизнесмен, а обычный парень.
Евгений Реннерт 👈
На этих выходных гонял в Питер, чтобы помочь товарищу с переездом.
Мой друг Евгений жил в Питере 5 лет, работал тренером в дорогом фитнес-клубе.
На днях у него день рождения и он решил сделать резкий поворот в своей жизни.
Вчера Женя переехал в маленький посёлок (читай деревня), в котором живу и я.
Причины переезда, планы на будущее и движение вперед на новом месте.
Обо всём это Женя рассказывает и показывает в своём небольшом блоге.
Давайте сделаем подарок на ДР и поддержим его в этот момент.
Мне интересен его контент про тренировки и переезд из города.
Он не айтишник, не бизнесмен, а обычный парень.
Евгений Реннерт 👈
👍5🔥4❤2👏2🤮1
Оказывается в телеге можно скачивать видео с YouTube
Нажимаем правой кнопкой - Скачать, у меня и ребят работает, а у вас?
@onecode_blog 👈
Нажимаем правой кнопкой - Скачать, у меня и ребят работает, а у вас?
@onecode_blog 👈
👍6🔥5👏1
🚀 Anthropic подогнал лимитов
Свежак от 6 мая: Anthropic договорился со SpaceX об использовании всего дата-центра Colossus 1 — это +300 МВт и 220 000+ NVIDIA GPU уже в этом месяце. И, видимо, чтобы железо не простаивало, нам подняли лимиты:
- Claude Code: 5-часовые лимиты удвоены для Pro, Max, Team и Enterprise
- Pro и Max: убрали урезание лимитов в часы пик (можно снова кодить днём, как белый человек)
- API на Opus: rate limits заметно подняли
Бонусом — Anthropic «выразил интерес» к разработке с SpaceX орбитальных дата-центров на несколько гигаватт. То есть скоро наш
🔗 https://www.anthropic.com/news/higher-limits-spacex
Свежак от 6 мая: Anthropic договорился со SpaceX об использовании всего дата-центра Colossus 1 — это +300 МВт и 220 000+ NVIDIA GPU уже в этом месяце. И, видимо, чтобы железо не простаивало, нам подняли лимиты:
- Claude Code: 5-часовые лимиты удвоены для Pro, Max, Team и Enterprise
- Pro и Max: убрали урезание лимитов в часы пик (можно снова кодить днём, как белый человек)
- API на Opus: rate limits заметно подняли
Бонусом — Anthropic «выразил интерес» к разработке с SpaceX орбитальных дата-центров на несколько гигаватт. То есть скоро наш
while true будет крутиться буквально на низкой околоземной орбите. 🛰️🔗 https://www.anthropic.com/news/higher-limits-spacex
👍9🔥7❤3👎1
⚠️ Атака на Laravel Lang — проверьте свои проекты
22 мая 2026 атакующий получил доступ к GitHub-организации Laravel-Lang и перезаписал все git-теги в пакетах
Как проверить:
1. Есть ли пакет:
2. Когда последний
3. Когда последний деплой на серверах
Если `composer update` и деплои были только до 22 мая — вы в безопасности.
Если `composer update` запускался 22 мая или позже — считайте все секреты скомпрометированными: ротируйте API-ключи, пароли БД, APP_KEY, SSH-ключи, облачные токены.
Подробнее: тут и тут
22 мая 2026 атакующий получил доступ к GitHub-организации Laravel-Lang и перезаписал все git-теги в пакетах
laravel-lang/lang, attributes, http-statuses, actions на вредоносные. Payload крадёт .env, SSH-ключи, облачные токены, пароли браузеров, криптокошельки — и отправляет на сервер злоумышленника.Как проверить:
1. Есть ли пакет:
grep "laravel-lang" composer.lock2. Когда последний
composer update: git log -1 -- composer.lock3. Когда последний деплой на серверах
Если `composer update` и деплои были только до 22 мая — вы в безопасности.
composer install использует хеш из lockfile, а не разрешает версии заново.Если `composer update` запускался 22 мая или позже — считайте все секреты скомпрометированными: ротируйте API-ключи, пароли БД, APP_KEY, SSH-ключи, облачные токены.
Подробнее: тут и тут
👍6🤬5🔥2🙏2❤1👌1
Наверно все заметили в последнее время особо много новостей про безопасность, уязвимости, взломы.
Не последнее место здесь занимает ИИ, способствующий поиску и эксплуатации дыр в безопасности.
Поэтому нам, как разработчикам, нужно еще больше внимения уделять этому вопросу.
Своевременно ставить обновления, проверяя перед этим их безопасность.
Например вышла новая версия Composer 2.10 - менеджер пакетов для PHP.
В ней встроены дополнительные проверки пакетов перед их установкой.
Поэтому обновите версию composer командой
У меня на серверах по крону каждый день запускается эта команда.
Подробнее про обновление composer читайте здесь
Не последнее место здесь занимает ИИ, способствующий поиску и эксплуатации дыр в безопасности.
Поэтому нам, как разработчикам, нужно еще больше внимения уделять этому вопросу.
Своевременно ставить обновления, проверяя перед этим их безопасность.
Например вышла новая версия Composer 2.10 - менеджер пакетов для PHP.
В ней встроены дополнительные проверки пакетов перед их установкой.
Поэтому обновите версию composer командой
composer self-updateУ меня на серверах по крону каждый день запускается эта команда.
Подробнее про обновление composer читайте здесь
• У нас дыра в безопасности!
• Ну хоть что-то у нас в безопасности...
👍7❤3👌1
Кстати есть еще такой сервис Aikido который анализирует код на уязвимости.
Недавно подключил его к своим репозиториям и он показал что можно улучшить.
На самом деле у меня он показал много моментов, в основном мелочи, но всё же.
В итоге потратил почти целый день, чтобы всё исправить и обновить свои проекты.
Есть бесплатный тариф, в целом всё просто и понятно, короче, рекомендую.
Недавно подключил его к своим репозиториям и он показал что можно улучшить.
На самом деле у меня он показал много моментов, в основном мелочи, но всё же.
В итоге потратил почти целый день, чтобы всё исправить и обновить свои проекты.
Есть бесплатный тариф, в целом всё просто и понятно, короче, рекомендую.
👍8❤3🔥3
Безопасная установка пакетов для PHP
Продолжаем тему безопасности, потому что атаки на цепочки поставок стали происходить всё чаще.
Во-первых надо делать аудит установленых пакетов:
Эта команда анализирует установленные в проекте пакеты на наличие известных уязвимостей.
Рекомендую запустить эту команду прямо сейчас, высока вероятность интересного результата.
Во-вторых теперь нельзя просто так взять и установить пакет. Или обновить существующие.
Перед установкой или обновлением надо делать такой же аудит того, что будет установлено.
Потому что во время установки или обновления пакетов может выполниться вредоносный код.
Как сделать аудит версий пакетов, которые еще не установлены? Очень просто:
Первая команда обновляет файл composer.lock, но сами пакеты НЕ скачивает. То есть в папке vendor остаются текущие версии пакетов.
Вторая команда запускает аудит пакетов на основе composer.lock, который обновился после первого шага.
На этом этапе, если мы видим "No security vulnerability advisories found." то есть уязвимостей нет (не будет).
Значит можно выполнять третю команду, которая уже скачает и установит новые версии в vendor на основе версий из composer.lock.
И четвертая команда, на всякий случай, еще раз проверяет новые версии пакетов после финальной установки.
Таким обрзом мы обновили версии БЕЗ фактической установки пакетов, сделали их аудит, потом установили и еще раз аудит.
Как установить новый пакет по такой же схеме? Так же, только вместо update будет composer required:
Если уявзвимости найдены в текущей версии пакетов, то надо их обновить (перед обновлением всё равно сделать аудит по инструкции выше).
Если уявзвимости найдены в новых версиях пакетов (перед фактической установкой), значит обновляться нельзя! Ждём когда исправят.
@onecode_blog
Продолжаем тему безопасности, потому что атаки на цепочки поставок стали происходить всё чаще.
Во-первых надо делать аудит установленых пакетов:
composer audit
Эта команда анализирует установленные в проекте пакеты на наличие известных уязвимостей.
Рекомендую запустить эту команду прямо сейчас, высока вероятность интересного результата.
Во-вторых теперь нельзя просто так взять и установить пакет. Или обновить существующие.
Перед установкой или обновлением надо делать такой же аудит того, что будет установлено.
Потому что во время установки или обновления пакетов может выполниться вредоносный код.
Как сделать аудит версий пакетов, которые еще не установлены? Очень просто:
composer update --no-install
composer audit --locked
composer install
composer audit
Первая команда обновляет файл composer.lock, но сами пакеты НЕ скачивает. То есть в папке vendor остаются текущие версии пакетов.
Вторая команда запускает аудит пакетов на основе composer.lock, который обновился после первого шага.
На этом этапе, если мы видим "No security vulnerability advisories found." то есть уязвимостей нет (не будет).
Значит можно выполнять третю команду, которая уже скачает и установит новые версии в vendor на основе версий из composer.lock.
И четвертая команда, на всякий случай, еще раз проверяет новые версии пакетов после финальной установки.
Таким обрзом мы обновили версии БЕЗ фактической установки пакетов, сделали их аудит, потом установили и еще раз аудит.
Как установить новый пакет по такой же схеме? Так же, только вместо update будет composer required:
composer require foo/bar --no-install
composer audit --locked
composer install
composer audit
Если уявзвимости найдены в текущей версии пакетов, то надо их обновить (перед обновлением всё равно сделать аудит по инструкции выше).
Если уявзвимости найдены в новых версиях пакетов (перед фактической установкой), значит обновляться нельзя! Ждём когда исправят.
@onecode_blog
👍15🔥4❤3