December 1

Open Source - не ложь и не кривой фундамент

Это прямой ответ на ролик от stupidmadworld, который уже успел заработать у меня репутацию чувака, крайне ненавидящий нёрдов; лезет в темы, в которых сам не разбирается; ну и постоянно противоречит самому себе. Но далеко отходить от темы не буду, речь у нас про опенсурс.

Методичка от Microsoft из нулевых

Борьба с опенсурсом длится уже не первый год. Microsoft сначала пыталась нам доказать, что в Linux всё сложно и вообще, им пользуются террористы, а затем, поняв, что от открытого софта не убежать, попросту "примкнули ко злу". А сейчас этим занимаются только мелкие блогеры, у которых либо первый раз не получился, либо их затронула какая-либо политическая позиция.

Ну а самые странные мнения иногда всё ещё доходят до наших ушей.

Код никто не смотрит!

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

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

Хороший пример: попытка компроментации кода PHP. Те, кто занимался его кодом, сразу поняли, что это попытка вставить в код вредонос. И эту попытку очень быстро пресекли.

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

Что, если бы это случилось с продуктом, код которого закрыт? Тогда бы таких бэкдоров было бы не один и не два. И я уверен, что в закрытом IIS, древнего аналога Apache и Nginx от Microsoft, в сервере Outlook, тоже найдутся свои уязвимости и бэкдоры, которые могли специально оставить Microsoft.

Собственно, а почему такую уязвимость не протолкали в основной код? Почему оно не попало на все сервера? Только потому что это быстро заметили и убрали из кода.

Насколько быстро бы это заметили в продукте с закрытыми исходниками? Ответ прост — дольше, чем с OSS продуктами.

Саботаж устроить очень легко!

В прошлом, да. Но сейчас никакая библиотека не может пропасть без вести из интернета, благодаря Архиву Интернета и менеджерам пакетов, а за самыми популярными библиотеками и пакетами активно следят в крупных компаниях. Мелкие библиотеки тоже не остаются полностью удалёнными, и хотя бы у одного человека, или сайта, распространяющий подобное, останется копия.

История с Colors.js таки реальна, но она научила всех, что даже за самыми мелкими библиотеками нужно тщательно следить.

А чтож по итогу?

То, что автор наговорил в изначальном видео, видимо, сгенерировала ему нейронка. Вывод видоса очень странный:

Если компании не будут следить безопасностью фундамента, из которого они создают свои продукты, интернет рухнет

Ну... это и так делают. И не первый год.

Вот список компаний, которые участвуют в разработке открытого ПО или сами его и создают. Они же латают уязвимости.

А вот так ответила нейронка, с помощью которой автор и генерирует свои сценарии:

Бесплатно — это не значит "бесконечно надёжно"

А никто не обещал, что OSS продукты будут бесконечно надёждыми. Вот, например, выдержка из текста лицензии GNU (L)GPL, впервые выпущенная в 1989 году:

Настоящая программа/библиотека поставляется на условиях "как есть". [...] Автор и/или иной правообладатель не принимает на себя никаких гарантийных обязательств [...] Все риски, связанные с качеством и производительностью библиотеки, несет лицензиат. В случае если в библиотеке будут обнаружены недостатки, все расходы, связанные с техническим обслуживанием, ремонтом или исправлением библиотеки, несёт лицензиат.

Но в эту "надёжность" уже давно вкладываются, и я об этом в статье неоднократно повторяюсь.

Что это был за наезд на открытые продукты и к какому выводу на самом деле пришёл автор — ответ остаётся затуманеным.