
Изкуственият интелект разсея мита за сигурността на софтуера с отворен код. Всяка нова версия на ядрото на Linux крие няколкостотин уязвимости и броят им нараства със следващата версия. Но уязвимостите често се намират не в нови редове код, а в много стари части на ядрото, които общността не е преглеждала от години.
Според публикация на Tom’s Hardware, броят на уязвимостите в Linux ядрото вече наближава 2000, докато само преди няколко години те са били около 500. Причината е изкуственият интелект, но тук не става дума за vibe кодирането и претрупания AI код, който изисква „чистачи”.
Разработчиците на Linux започнаха да използват AI инструменти за сканиране на кода за уязвимости, които могат да проверяват милиони редове код за минимално време. В резултат на това в изданието Linux 7.2, което дебютира на 16 август 2026 г., бяха открити 1500 уязвимости с различна тежест.
Експертите прогнозират, че до пускането на Linux 7.3 този брой лесно може да надхвърли 2000.
Анализаторите на код с изкуствен интелект са много ефективни. Например, докато в Linux 7.2 бяха открити 1500 уязвимости, в Linux 7.0 (издадена на 12 април 2026 г.) са открити около 1000. С други думи, броят на известните уязвимости в кода на ядрото на Linux се е увеличил наполовина само за четири месеца.
Интересно е сравнението на числата за Linux 7.2 и 6.0 – последната беше пусната на 2 октомври 2022 г. Преди четири години не се използваха AI инструменти и в резултат на това бяха известни само 500 уязвимости в ядрото.
Каква е причината?
Според експертите, безпрецедентното увеличение на броя на откритите уязвимости в ядрото на Linux не се дължи на небрежност на разработчиците по отношение на сигурността. Самото ядро навърши 35 години през 2026 г. и се разрасна до над 40 милиона реда код, написан от десетки програмисти от цял свят.
AI инструментите, използвани за сканиране на ядрото, са напълно способни да проверяват дори редове код, които не са били редактирани от години. Често именно там се откриват уязвимости.
Но това не означава, че трябва непременно да се притеснявате за сигурността на вашия Linux компютър и да избирате между Windows и macOS. Както пише Tom’s Hardware, много от откритите уязвимости се оказват с нисък приоритет – те често се намират в неясен код на драйвери, а някои са халюцинации на изкуствения интелект.
Налице е ново предизвикателство за разработчиците: да се научат да идентифицират онези уязвимости, които наистина съществуват и биха могли да имат изключително негативни последици.
Натоварване на общността
AI скенерите значително увеличиха натоварването на членовете на Linux общността. Например, за предстоящото ядро Linux 7.3 между една трета и половината от всички 648 предложени пача са нископриоритетни корекции, подобрения или разяснения, инициирани от изкуствен интелект.
„Напълно сме претоварени”, каза Якуб Кичински, един от поддръжниците на ядрото на Linux.
Проблемът с големия брой открити от изкуствен интелект дупки в драйверите, дори такива с нисък приоритет, накара разработчиците на Linux да се запитат дали е разумно да се поддържат стари драйвери, създадени преди десетилетия, които биха могли да съдържат опасни фрагменти от код.
Например, през април 2026 г. членът на общността Андрю Лън предложи премахване на близо 28 000 реда стар мрежов код, обхващащ по-стар хардуер от ерата на ISA и PCMCIA. Тези интерфейси бяха широко използвани през 90-те и началото на 2000-те години, но бързо бяха забравени.
В исторически план драйверите изискваха минимално внимание от разработчиците, тъй като рядко се използваха поради почти пълната липса на устройства с тези интерфейси в съвременния свят. Откритите уязвимости обаче принуждават разработчиците да ги пачват, независимо дали някой ги използва на практика, което отнема време.
Предстоящото ядро Linux 7.3 ще премахне старите драйвери на SGI и IBM, както и редица други наследени компоненти. Разработчиците, след като видяха колко уязвимости съдържат, започнаха да „преоценяват ценностите си” – сега те изчисляват дали съвместимостта на новото ядро със стария хардуер оправдава времето и усилията, изразходвани за поддържане на съответната кодова база.
