Опенсорсный разработчик специально испортил две свои библиотеки — они применяются в 20 тысячах проектов
Марак Сквайрс, автор популярных пакетов colors (расцветка консоли node.js) и faker (генератор фиктивных данных для полей ввода), выложил в репозитории NPM и на GitHub их обновлённые версии с деструктивными изменениями, которые целенаправленно приводили к сбоям при сборке и выполнении зависимых проектов. Первый продукт насчитывает 2,8 млн еженедельных загрузок, второй — 25 млн, пишет OpenNet.
В результате была нарушена работа многих проектов, включая AWS CDK, использующих указанные библиотеки: colors используется в качестве зависимости у 18953 проектов, faker — у 2571.
В код библиотеки colors был добавлен вывод в консоль текста «LIBERTY LIBERTY LIBERTY» и бесконечный цикл, блокирующий работу зависимых проектов и выводящий поток из искажённых слов «tesing». В библиотеке faker удалено содержимое репозитория, в коммите «endgame» добавлены файлы .gitignore и .npmignore для исключения файлов проекта, а вместо содержимого файла README размещён вопрос «Что на самом деле случилось с Аароном Шварцем». Проблемы присутствуют в версиях colors 1.4.1+ и faker 6.6.6.
GitHub в ответ заблокировал доступ Марака к своим репозиториям (90 публичных и несколько приватных), а NPM откатил проблемную версию пакета. При этом законность действий GitHub вызвала вопросы, так как удаление разработчиком кода из своих репозиториев не может считаться нарушением правил сервиса. Более того, в тексте лицензии на пакеты colors и faker явно обозначено отсутствие любых гарантий и обязательств в отношении работоспособности кода.
Первое предупреждение о прекращении разработки Марак сделал больше года назад. В сентябре 2020 года он потерял всё имущество из-за пожара, а в начале ноября в ультимативной форме призвал коммерческие компании, использующие его проекты, финансировать разработку — он больше не хотел сопровождать их бесплатно. До инцидента последняя версия colors вышла два года назад, а faker — 9 месяцев назад.
Что касается мотивов внесения в пакеты деструктивных изменений, вероятно, Марак пытается дать урок корпорациям, которые пользуются трудами сообщества разработчиков свободного ПО, но ничего не возвращают взамен, или привлечь внимание к обстоятельствам смерти Аарона Шварца. Аарон покончил жизнь самоубийством после возбуждённого против него уголовного дела, связанного с копированием научных статей из платной базы данных JSTOR, отстаивая идею свободного доступа к научным публикациям. Аарона обвинили в компьютерном мошенничестве и незаконном получении информации с защищённого компьютера, за которые ему максимально грозило 50 лет лишения свободы и штраф в $1 млн — лишь за то, что он скачал содержимое базы данных научных статей, которые, по его мнению, должны распространяться без ограничения. В случае заключения судебного соглашения и признания обвинений Аарону предстояло отсидеть в тюрьме 6 месяцев.
Считается, что на фоне депрессии он не выдержал давления судебной системы и несправедливости выдвигаемых обвинений. Марак Сквайрс в опубликованном вместо кода вопросе о смерти Аарона и в одном из твитов намекает на неподтверждённую теорию заговора, в соответствии с которой Аарон Шварц нашёл в архиве Массачусетского технологического института некие документы, порочащие определённых важных лиц, и за это его убили, замаскировав происшествие под самоубийство. 11 января исполняется 9 лет, как Аарон ушёл из жизни.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
Что на это скажут наши либералы?
Комментарий скрыт за нарушение правил комментирования.
censored, П. 4.1.2. Пользовательского соглашения — https://dev.by/pages/agreement
Комментарий скрыт за нарушение правил комментирования.
censored, П. 4.1.2. Пользовательского соглашения — https://dev.by/pages/agreement
А что на это скажут малые народы севера, рыбаки-любители и участники чемпионата мира по yo-yo 2003 года?
Ну вот, мошенники возьмут тему в работу.
Шаг 1. Нанимаешь open source разработчика либо покупаешь готовый проект, который многие используют.
Шаг 2. В день Х, вносишь необходимые изменения, чтобы получить доступ к удаленному серверу.
Шаг 3. Получаешь быстрый профит. Переходишь к пункту 1.
ЗЫ. Конец опенсорс в текущем виде.