Распределённый p2p аналог GitHub: https://radicle.xyz/
radicle.xyz
Radicle: the sovereign forge
Sovereign code infrastructure.
💩13🤔9👍3🥴3🔥1
Плейлист с PHPRussia 2022: https://youtube.com/playlist?list=PLsdzlHt60Mu2Fcx_P7abk4WhmsxCTeQ31&si=_6VqP2_ZbpzJ3V0z
👍19🔥11🤮3
Forwarded from Авва
В мире компьютерной безопасности сегодня интересный день. Точнее, он начался вчера вечером, когда немецкий разработчик Андрес Фройнд опубликовал отчет о тайной лазейке (бэкдор), которую он обнаружил в новых версиях широко используемой библиотеки для сжатия liblzma (часть архиватора xz). Лазейка позволяет взломщикам заходить через SSH на системы, в которых установлены эти новые версии - к счастью, похоже, что это всего несколько дистрибутивов Линукса в их до-релизовых версиях.
Всех очень впечатлило, насколько эта лазейка была сделана хитро, и как взломщик или взломщики серьезно поработали над тем, чтобы замести следы:
- взломщик под именем/псевдонимом Jia Tan почти два года (!) участвовал в разработке опенсорсного пакета xz, завоевал доверие его мейнтейнеров и получил доступ к прямому коммиту в его репозиторию. Он сделал больше 700 коммитов, лишь малая часть которых медленно подготовила код для лазейки
- основной код лазейки спрятан в тестовых файлах проекта (примеры "плохих" и "хороших" архивов)
- исходный код, который включает лазейку в собственно библиотеку, вообще не является частью основной репозитории в Github. Он спрятан в тар-архивах двух последних релизов, которые обычно используются мейнтейнерами дистрибутивов. То есть есть таг релиза, есть архив, якобы собранный из репозитории в момент этого тага, но на самом деле в нем есть крохотная добавка; в самой репозитории ее нет
- эта добавка прячется в конфигурационной магии autoconf, которую все ненавидят лютой ненавистью и никто никогда не заглядывает внутрь
- она проверяет, когда исходники конфигурируют именно для постройки дебиан-пакета или RPM-пакета (т.е. то, что будут делать мейтейнеры дистрибутивов), и только в этом случае вынимает из тестовых файлов определенные куски и добавляет в код библиотеки
- внутри библиотеки код лазейки заменяет несколько функций, которые работают с символьными таблицами библиотек во время их подгружения. Затрачены специальные усилия, чтобы имена функций не появлялись в двоичном коде. Что именно дальше делает код лазейки, до конца еще не ясно, но он обрабатывает сам символьные таблицы библиотек, и видимо находит то, что имеет отношение к SSH серверу, и что-то там заменяет. Это еще проверяют сейчас.
- интересно, что openssh, стандартный SSH-сервер под линуксом, не использует библиотеку liblzma, в которую вставили эту лазейку, но несколько популярных дистрибутивов добавляют в него поддержку уведомлений системы, systemd, а библиотека libsystemd уже в свою очередь использует liblzma.
- после того, как вышли версии библиотеки с ошибкой, несколько разных людей с незамеченными до того именами (очевидно, альты взломщика или сообщники) стали открывать запросы в разных программах и пакетах сделать апгрейд на эти новые версии, и в некоторых случаях преуспели
Взломщик допустил только одну ошибку: код лазейки, когда он работает как часть openssh, довольно медленно обрабатывает эти символьные таблицы, или что он еще там делает, и даже неудачная попытка логина на такую систему занимает на полсекунды дольше, чем обычно. Андрес Фройнд заметил эти полсекунды задержки. Они его раздражали. Он решил найти, какой новый баг к этому приводит, и нашел эту лазейку.
Если бы все происходило быстро и не было задержки в полсекунды, очень может быть, что это не заметили бы месяцы и годы, и этот код попал бы в основные дистрибутивы, в версии Линукса, которые запускаются у основных облачных провайдеров итд. Они реально очень, ОЧЕНЬ хорошо замели следы.
Теперь все думают, что надо было/надо теперь делать по-другому, и как обнаружить следующую лазейку такого типа - или предыдущую, если она уже есть и никто не знает! - не опираясь на удачу и героическую занудливость Андреаса Фройнда.
Всех очень впечатлило, насколько эта лазейка была сделана хитро, и как взломщик или взломщики серьезно поработали над тем, чтобы замести следы:
- взломщик под именем/псевдонимом Jia Tan почти два года (!) участвовал в разработке опенсорсного пакета xz, завоевал доверие его мейнтейнеров и получил доступ к прямому коммиту в его репозиторию. Он сделал больше 700 коммитов, лишь малая часть которых медленно подготовила код для лазейки
- основной код лазейки спрятан в тестовых файлах проекта (примеры "плохих" и "хороших" архивов)
- исходный код, который включает лазейку в собственно библиотеку, вообще не является частью основной репозитории в Github. Он спрятан в тар-архивах двух последних релизов, которые обычно используются мейнтейнерами дистрибутивов. То есть есть таг релиза, есть архив, якобы собранный из репозитории в момент этого тага, но на самом деле в нем есть крохотная добавка; в самой репозитории ее нет
- эта добавка прячется в конфигурационной магии autoconf, которую все ненавидят лютой ненавистью и никто никогда не заглядывает внутрь
- она проверяет, когда исходники конфигурируют именно для постройки дебиан-пакета или RPM-пакета (т.е. то, что будут делать мейтейнеры дистрибутивов), и только в этом случае вынимает из тестовых файлов определенные куски и добавляет в код библиотеки
- внутри библиотеки код лазейки заменяет несколько функций, которые работают с символьными таблицами библиотек во время их подгружения. Затрачены специальные усилия, чтобы имена функций не появлялись в двоичном коде. Что именно дальше делает код лазейки, до конца еще не ясно, но он обрабатывает сам символьные таблицы библиотек, и видимо находит то, что имеет отношение к SSH серверу, и что-то там заменяет. Это еще проверяют сейчас.
- интересно, что openssh, стандартный SSH-сервер под линуксом, не использует библиотеку liblzma, в которую вставили эту лазейку, но несколько популярных дистрибутивов добавляют в него поддержку уведомлений системы, systemd, а библиотека libsystemd уже в свою очередь использует liblzma.
- после того, как вышли версии библиотеки с ошибкой, несколько разных людей с незамеченными до того именами (очевидно, альты взломщика или сообщники) стали открывать запросы в разных программах и пакетах сделать апгрейд на эти новые версии, и в некоторых случаях преуспели
Взломщик допустил только одну ошибку: код лазейки, когда он работает как часть openssh, довольно медленно обрабатывает эти символьные таблицы, или что он еще там делает, и даже неудачная попытка логина на такую систему занимает на полсекунды дольше, чем обычно. Андрес Фройнд заметил эти полсекунды задержки. Они его раздражали. Он решил найти, какой новый баг к этому приводит, и нашел эту лазейку.
Если бы все происходило быстро и не было задержки в полсекунды, очень может быть, что это не заметили бы месяцы и годы, и этот код попал бы в основные дистрибутивы, в версии Линукса, которые запускаются у основных облачных провайдеров итд. Они реально очень, ОЧЕНЬ хорошо замели следы.
Теперь все думают, что надо было/надо теперь делать по-другому, и как обнаружить следующую лазейку такого типа - или предыдущую, если она уже есть и никто не знает! - не опираясь на удачу и героическую занудливость Андреаса Фройнда.
😱54👍17🔥9👏4🌚1
Пишу код, указал строковый ключ в массиве, Copilot привычно для меня автодополнил значением после
Но я заметил кое-что необычное, Copilot написал для меня комментарий в конце строки.
В комментарии написано:
Такого поведения я ещё не видел, интересно.
=> (в данном случае верно угадал значение по окружающему контексту).Но я заметил кое-что необычное, Copilot написал для меня комментарий в конце строки.
В комментарии написано:
опечатка в 'default - пригляделся, и правда, я опечатался!Такого поведения я ещё не видел, интересно.
👍54🤔12👎4🗿3😐2👀2😁1🫡1
Статья с обзором расширений для Raycast (macOS) на тему PHP и Laravel: https://aleksandertabor.com/blog/best-raycast-extensions-for-laravel-php-developers
В основном эти расширения дают быструю навигацию по документации.
В основном эти расширения дают быструю навигацию по документации.
👎9🥴3👍1
Привет! На связи Podlodka Crew, организатор IT-мероприятий по разным технологиям и языкам.
Уже 22 апреля мы запускаем четвертый сезон конференции по PHP. Тема — практика работы с базами данных.💻
Этот сезон прольёт свет на все, даже самые неожиданные, аспекты работы с базами. Приготовьтесь: будет много практики и реальных кейсов. Redis, Doctrine, Elasticsearch, нюансы PostgreSQL, изучим уровни изоляции транзакций, проектирование и масштабирование, и множество интересных инструментов и решений.
💚 Научимся проектировать базы данных. Николай Кокоулин из ВсеИнструменты проведёт воркшоп по проектированию и рефакторингу. В том числе разберём нестандартные типы данных и антипаттерны. А ещё узнаем, как ускорить работу с данными и проанализируем методы индексации.
💙 Выясним, как использовать Redis в качестве внешней памяти приложений. Вместе с Дмитрием Кирилловым, CTO 1С-Старт выйдем за границы кэша и начнём управлять памятью.
💚 Полюбим Doctrine и попрактикуемся его использовать. Обсудим требования, возможные проблемы и сценарии вместе с Михаилом Камориным из Skyeng.
💙 Узнаем, насколько просто начать использовать Elasticsearch вместе с Игорем Филипповым из Zendrop. На этом воркшопе каждый сможет выполнить несколько задач и освоить базовые операции с технологией из PHP кода.
💚 Обсудим масштабирование и оптимизацию проектов на PHP вместе с Александром Макаровым, CEO ASAPIRL.
💙 И, наконец, посмотрим на эпичную битву сторонников и противников использования ORM в лице Кирилла Несмеянова и Валентина Удальцова.
Это не все сессии конференции, ещё больше подробностей — в следующем анонсе.
А пока успейте забрать билет со скидкой для ранних пташек:
https://podlodka.io/phpcrew
Уже 22 апреля мы запускаем четвертый сезон конференции по PHP. Тема — практика работы с базами данных.
Этот сезон прольёт свет на все, даже самые неожиданные, аспекты работы с базами. Приготовьтесь: будет много практики и реальных кейсов. Redis, Doctrine, Elasticsearch, нюансы PostgreSQL, изучим уровни изоляции транзакций, проектирование и масштабирование, и множество интересных инструментов и решений.
Это не все сессии конференции, ещё больше подробностей — в следующем анонсе.
А пока успейте забрать билет со скидкой для ранних пташек:
https://podlodka.io/phpcrew
Please open Telegram to view this post
VIEW IN TELEGRAM
podlodka.io
Онлайн-конференция Podlodka PHP Crew, сезон #8
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным вопросам PHP-индустрии, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
🔥11
Forwarded from OpenNews (HK-47)
Уязвимость в Glibc, эксплуатируемая через скрипты на PHP
В стандартной Си-библиотеке Glibc выявлена уязвимость (CVE-2024-2961), приводящая к переполнению буфера при преобразовании специально оформленных строк в кодировке ISO-2022-CN-EXT функцией iconv(). Выявивший проблему исследователь планирует 10 мая выступить на конференции OffensiveCon с докладом, в анонсе которого упоминается возможность эксплуатации уязвимости через приложения на языке PHP. Заявлено, что проблема затрагивает всю экосистему PHP и некоторые приложения.
В стандартной Си-библиотеке Glibc выявлена уязвимость (CVE-2024-2961), приводящая к переполнению буфера при преобразовании специально оформленных строк в кодировке ISO-2022-CN-EXT функцией iconv(). Выявивший проблему исследователь планирует 10 мая выступить на конференции OffensiveCon с докладом, в анонсе которого упоминается возможность эксплуатации уязвимости через приложения на языке PHP. Заявлено, что проблема затрагивает всю экосистему PHP и некоторые приложения.
😱27👍4🤔3😢1
Forwarded from Новости от CutCode
Приветствую всех PHP-разработчиков!
Подготовка второго выпуска игры-викторины в стиле "Своей игры" в разгаре! Валентин Удальцов, Алексей Гагарин и Пётр Мязин уже который день штудируют библиотеки чтобы поразить вас своей эрудицией. Каждый из них рассчитывает только на победу!
Викторина будет проходить в прямом эфире на нашем YouTube-канале CutCode. С учётом опыта первой игры мы сделали вопросы более простыми, чтобы игра прошла еще активнее. Можете смотреть эфир офисом и играть своей командой!
Приглашаем поддержать участников, проверить свои знания и просто хорошо провести время. До встречи на викторине!
https://www.youtube.com/watch?v=ef0LPaVNJLs
Вопросы участникам можно задать тут
Подготовка второго выпуска игры-викторины в стиле "Своей игры" в разгаре! Валентин Удальцов, Алексей Гагарин и Пётр Мязин уже который день штудируют библиотеки чтобы поразить вас своей эрудицией. Каждый из них рассчитывает только на победу!
Викторина будет проходить в прямом эфире на нашем YouTube-канале CutCode. С учётом опыта первой игры мы сделали вопросы более простыми, чтобы игра прошла еще активнее. Можете смотреть эфир офисом и играть своей командой!
Приглашаем поддержать участников, проверить свои знания и просто хорошо провести время. До встречи на викторине!
https://www.youtube.com/watch?v=ef0LPaVNJLs
Вопросы участникам можно задать тут
👍22🥴4🗿3
This media is not supported in your browser
VIEW IN TELEGRAM
Релиз Ubuntu 24.04: https://releases.ubuntu.com/noble/
❤32👍17🤡4🔥2🤔1
Я обновил свой PhpStorm до 2024.1 - одна из ключевых фишек это новое AI автодополнение "Full Line Code Completion", которое работает локально и в пресс-релизе звучало многообещающе (https://blog.jetbrains.com/blog/2024/04/04/full-line-code-completion-in-jetbrains-ides-all-you-need-to-know/), т.к. ответ от AI проходит дополнительную проверку средствами IDE и неподходящие варианты отсеиваются.
Что на самом деле:
1. Сама версия PhpStorm 2024.1 очень забагована, много типового функционала сломано, работать тяжело
2. Новое AI автодополнение работает примерно как на картинке ниже.
Я бы ещё потестировал этот новый Full Line Code Completion от JetBrains, но, к сожалению, общая забагованность PhpStorm 2024.1 вынудила меня откатиться обратно на 2023.3.
Печально, но факт: последние пару лет после выхода каждой новой мажорной версии PhpStorm - самый первый релиз чаще всего слишком сырой и я постоянно возвращаюсь к предыдущему. Нужно ждать пару минорных обновлений, прежде чем начинать работать.
Что на самом деле:
1. Сама версия PhpStorm 2024.1 очень забагована, много типового функционала сломано, работать тяжело
2. Новое AI автодополнение работает примерно как на картинке ниже.
Я бы ещё потестировал этот новый Full Line Code Completion от JetBrains, но, к сожалению, общая забагованность PhpStorm 2024.1 вынудила меня откатиться обратно на 2023.3.
Печально, но факт: последние пару лет после выхода каждой новой мажорной версии PhpStorm - самый первый релиз чаще всего слишком сырой и я постоянно возвращаюсь к предыдущему. Нужно ждать пару минорных обновлений, прежде чем начинать работать.
💯31
Forwarded from I’m CTO, bitch
This media is not supported in your browser
VIEW IN TELEGRAM
У вас есть kubernetes?
😁80👍1
https://php-rfc-watch.beberlei.de/ - сайт на котором можно следить за процессом голосования за RFC к PHP.
Что меня привлекло в этом сайте и почему решил поделиться ссылкой на канале: сайт по сути является одной большой страницей с длинным списком RFC разных лет, очень интересно прочитать всё сверху вниз, вспомнить, что когда-то было на повестке дня или открыть что-то новое для себя.
Что меня привлекло в этом сайте и почему решил поделиться ссылкой на канале: сайт по сути является одной большой страницей с длинным списком RFC разных лет, очень интересно прочитать всё сверху вниз, вспомнить, что когда-то было на повестке дня или открыть что-то новое для себя.
👍21❤4
This media is not supported in your browser
VIEW IN TELEGRAM
Уведомления из Sentry после релиза на prod
😁107👍3😱2👻2
Компания Google анонсировала поддержку Laravel в своей online среде разработки IDX: https://idx.google.com/new/laravel
Новость сама по себе «сомнительно, но ок».
Но сегодня прочитал в PHP Annotated (дайджест от JetBrains - https://blog.jetbrains.com/phpstorm/2024/06/php-annotated-may-2024/), что поддержка Laravel есть, а поддержки простого «голого» PHP нет - вот это неожиданно! И одновременно подчёркивает популярность Laravel.
Новость сама по себе «сомнительно, но ок».
Но сегодня прочитал в PHP Annotated (дайджест от JetBrains - https://blog.jetbrains.com/phpstorm/2024/06/php-annotated-may-2024/), что поддержка Laravel есть, а поддержки простого «голого» PHP нет - вот это неожиданно! И одновременно подчёркивает популярность Laravel.
🤷♂20😁12👍5💩4🤔1
В рабочих проектах я использую JetBrains Space (аля GitLab).
Что в нём нравится: отзывчивый веб-интерфейс, удобнейший code review через веб (привет тормозящему GitLab 👋), отличное мобильное приложение, крутая интеграця Code Review внутри PhpStorm (хотя, говорят, интеграции Code Review GitHub и GitLab тоже крутые, я не сравнивал).
Из недостатков: простой issue tracker внутри (мало фич, слабо смотрится, не хватает многого) и CI/CD пайплайны с которыми пришлось помучаться, информации в интернете мало, сухая документация, ChatGPT тоже не очень в курсе.
Прочитал только что в блоге: «продукт не взлетел, закрываем и перезапускаем в новом виде «SpaceCode» - фокус нового продукта на Git хостинге и Code Review.»
Выходит, что те фичи, которые по моему мнению хорошо удались остаются в виде SpaceCode, а всё прочее прекращает своё развитие и существование. Логично, разумно, но всё-таки жалко, что у JetBrains не получилось создать крутой облачный комбайн для разработки «всё в одном» 😢
Кстати, у JetBrains уже был продукт сфокусированный на CodeReview, назывался Upsource, его закрыли.
https://blog.jetbrains.com/space/2024/05/27/the-future-of-space/
Что в нём нравится: отзывчивый веб-интерфейс, удобнейший code review через веб (привет тормозящему GitLab 👋), отличное мобильное приложение, крутая интеграця Code Review внутри PhpStorm (хотя, говорят, интеграции Code Review GitHub и GitLab тоже крутые, я не сравнивал).
Из недостатков: простой issue tracker внутри (мало фич, слабо смотрится, не хватает многого) и CI/CD пайплайны с которыми пришлось помучаться, информации в интернете мало, сухая документация, ChatGPT тоже не очень в курсе.
Прочитал только что в блоге: «продукт не взлетел, закрываем и перезапускаем в новом виде «SpaceCode» - фокус нового продукта на Git хостинге и Code Review.»
Выходит, что те фичи, которые по моему мнению хорошо удались остаются в виде SpaceCode, а всё прочее прекращает своё развитие и существование. Логично, разумно, но всё-таки жалко, что у JetBrains не получилось создать крутой облачный комбайн для разработки «всё в одном» 😢
Кстати, у JetBrains уже был продукт сфокусированный на CodeReview, назывался Upsource, его закрыли.
https://blog.jetbrains.com/space/2024/05/27/the-future-of-space/
👍10🥱7🤯2✍1❤1🤔1😢1