"Качество" opensource, а так же "как сделать 'уязвимость', которую сложно обнаружить при review"

Aug 08, 2010 16:38

Искал на днях кое-какую информацию и абсолютно случайно вышел на баг-репорт один. Он меня, что называется, "поразил до глубины души".

Посмотрите вот на этот код в генераторе RSA-ключей. Между прочим - opensource (привет Debian-сообществу!).

CK_MECHANISM mechanism = {CKM_RSA_PKCS_KEY_PAIR_GEN, NULL_PTR, 0 ( Read more... )

weak cryptography, vulnerability, crap code, *nix, cryptography, security, opensource

Leave a comment

Comments 105

w00dy August 8 2010, 13:38:26 UTC
> Вы все еще верите в качестве opensource? А так же в то, как вы "наглядно и без проблем можете посмотреть, нет ли какой-нибудь лажи; можно сбилдить самому из исходников"?

Хехе, а ведь линупсоиды в это верят ;)
Ых, человек как был, так и остаётся самым слабым звеном.

Reply


estelanto August 8 2010, 15:49:05 UTC
вброс в вентилятор. ещё бы проблему с OpenSSL (http://www.gergely.risko.hu/debian-dsa1571.en.html) вспомнили.

Reply

sporaw August 8 2010, 15:58:07 UTC
Не считаю, что это "вброс", так как это наглядно показывает следующий ряд проблем:
  1. возможность специального сокрытия очень серьезных уязвимостей под видом "нелепых" ошибок (может быть использовано третьими силами - государством, компаниями, "частными злоумышленниками"), причем не в закрытом коде, а в OpenSource, который формально "изучают сотни и тысячи", а по факту - единицы, и часто находят просто случайно, через громадный период времени; [Лично меня в большей степени интересовала именно эта часть вышеописанного -- способы маскировки ошибок]
  2. мнимый "профессионализм" OpenSource сообщества (вот это ближе к вбросу, конечно) -- как тех, кто пишет, так и тех, кто, якобы, сидит и изучает изменения/исходники.
То, что Вы привели про OpenSSL - это еще лучше по второму пункту! (Но не имеет отношения к первому пункту). Это вообще "радость" невероятная.

Reply

fk0 September 28 2010, 22:25:02 UTC
Вброс наглядно демонстрирует, что нелепые ошибки в мире опенсоурса таки выявляются, хоть и через пол-года. И известно кто внёс и почему. И как предотвратить в дальнейшем. А в мире клозетсоурса? Там мрак и всем пох.

Reply

wizzard0 July 6 2013, 00:52:04 UTC
в мире клозедсоурса между прочим обычно есть деньги на аудит от контор которые специально этим аудитом занимаются, во всяком случае если есть претензия на каких-то серьезных заказчиков

Reply


все так, да. neo_der_tall August 8 2010, 18:49:05 UTC
Но почему ОупенСоурс в таких рисках хуже чем ПриватСоурс? Потому что в ПриватСоурс не видно?

Reply

Re: все так, да. sporaw August 8 2010, 21:04:19 UTC
Потому что подход и методология разработки и тестирования несколько отличаются от наколенно-студенческого.

Reply

он один что ли? neo_der_tall August 8 2010, 21:24:43 UTC
Ну я вроде как не по наслышке знаком с некоторыми из подходов и методологий. Какие конкретно гарантируют что таких бяк нет и быть не может? Очень интересно.

Кстати, про студентов Вы зря. Я Вам щас в ответ выдам стандартное "дикие индусы-аутсорсеры" и мы будем спорить кто более багогенерирующий.

Reply

Re: он один что ли? sporaw August 8 2010, 21:34:02 UTC
Да без проблем.

Я думаю, статистика такого рода уязвимостей (их "тяжелости", т.е. серьезности; а так же срока существования) была бы много честнее, чем какие-либо пустые споры.

Я вот вижу пока на этих двух маленьких примерах, что у debian с криптографией все как-то очень плохо.

Reply


kosiakk August 8 2010, 18:50:07 UTC
а какого чёрта компилятор не показывает это как ошибку? налицо потеря данных
ну и вообще BYTE и 65537 в одной строчке должны бы насторожить.

Reply

ipatov_net August 10 2010, 16:16:18 UTC
Варнинг он показывает, т.к. C/C++ хоть и являются формально языками со строгой типизацией, на самом деле эта типизация от полной строгости далека.
А вот то, что опенсорсники на варнинг забили, за это руки надо отрывать. От жопы. И к плечам пришивать. Как-то так.

Reply

sporaw August 10 2010, 21:15:01 UTC
Их чистый C-компилер может не показывать такой warn.

Reply

ipatov_net August 10 2010, 21:25:59 UTC
А может быть. По крайней мере я с signed и unsigned char "налетал" в одном из проектов, компилёном под GNU C.

Reply


silly_sad August 9 2010, 06:19:11 UTC
разница в том, что ошибку в опен сорсе увидели через "целых пол года" или даже через "чудовищно долгие два года", а в закрытых исходниках мы её не видим НИ-КОГ-ДА и будем жить с этой ошибкой вечно.

Reply

sporaw August 9 2010, 06:26:11 UTC
Да, вот так и живем...
И все скрывают, скрывают, скрывают.
Как страшно жить.

Reply

sporaw August 9 2010, 06:31:34 UTC
http://sporaw.livejournal.com/84729.html?thread=1708793#t1708793
И эта методология не называется "Code'n'Commit" (пиши-да-заливай).
Подчеркну особо такую странную вещь, и вовсе ненужную, конечно, как тестирование.

Reply

ipatov_net August 10 2010, 16:17:16 UTC
Почитайте уже методики той же Microsoft. Там в плане разработки форменный фашизм стоит - по тестингу и документированию кода. А в опенсорсе как? Сплошная "анальная свобода". Вот и результаты.

Reply


Leave a comment

Up