Joomla, SharePoint, ColdFusion, curl - четири различни неща с една обща черта: стари, навсякъде, забравени.
Joomla е система за управление на съдържание - същата идея като WordPress, само с друго лого. С нея някой без представа от код си вдига сайт за час. Проблемът никога не е самата Joomla - екипът ѝ кърпи дупки редовно. Проблемът са хилядите добавки (plugins), писани от случайни хора по света, инсталирани веднъж и забравени завинаги. Всяка такава добавка е ключ, оставен под изтривалката. Стигне ли се до пробив, той почти никога не идва през централната система - идва през добавката, която някой качи през 2016-та и оттогава не е отварял админ панела.
SharePoint е много по-тежка история, защото не е сайт за автобиографии - там фирмите държат договори, чертежи, кадрова информация, вътрешна кореспонденция. Microsoft го продава като „централата“ на офиса. Когато в SharePoint се отвори дупка, не изтича блог пост - изтича цялата вътрешност на организацията. И понеже SharePoint се инсталира дълбоко в мрежата на компанията, пробив в него не е инцидент на един сайт. Той е отворена врата към всичко останало, свързано с него.
ColdFusion е нещо, което повечето хора никога не са чували. При все това е навсякъде около тях - държавни портали, болнични системи, стари вътрешни приложения на банки. Създаден е през 1995-а, преди Google изобщо да съществува, и е сменял собственик три пъти оттогава. Компаниите, които го ползват, рядко го подменят - твърде скъпо е, твърде рисковано е, пипа се предпазливо. Резултат: критична инфраструктура, крепена на технология от друга епоха, с екип, който отдавна се е разотишъл.
curl е обратната крайност - не е система, а невидим работник. Малка команда, която тегли и праща данни през интернет. Всеки сайт, всяко приложение, всеки скрипт по света го използва някъде дълбоко в кода си, обикновено без никой да го е избирал съзнателно - просто си е там, вграден. Точно затова дупка в curl не е инцидент в един продукт. Тя е трус, който минава през милиони системи едновременно, защото всички стъпват върху едно и също, невидимо парче код.
Окото ми се закача
Всичко това ми напомня за стари сгради с лоши инсталации. Фасадата е боядисана, асансьорът работи, наемателите влизат и излизат необезпокоявани. Но зад стената тръбите са от друго десетилетие - никой няма актуален план на инсталацията, и последният път, когато електротехник е бил вътре, е бил преди смяна на собственика. Никой не е направил нещо лошо - просто сградата остарява по-бързо, отколкото я поддържат.
Разликата с реалните сгради е, че там поне усещаш проблема - течаща тръба, мигаща лампа. В софтуера дупката е тиха. Стои си отворена с години, докато някой не реши да мине през нея. И понеже тези четири неща подпират половината интернет отдолу, когато вратичката се отвори, не пада една стая - пада цялото крило.