The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Критическая уязвимость в  OpenSSL 1.1.0a, opennews (ok), 26-Сен-16, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


5. "Критическая уязвимость в  OpenSSL 1.1.0a"  +1 +/
Сообщение от Аноним (5), 26-Сен-16, 18:25 
Как использование ссылок вместо указателей влияет на производительность?
Ответить | Правка | Наверх | Cообщить модератору

12. "Критическая уязвимость в  OpenSSL 1.1.0a"  –1 +/
Сообщение от Аноним (-), 26-Сен-16, 18:57 
Ты дурак? OpenSSL написан на С, откуда там ссылки?
Ответить | Правка | Наверх | Cообщить модератору
Часть нити удалена модератором

22. "Критическая уязвимость в  OpenSSL 1.1.0a"  –2 +/
Сообщение от KonstantinB (ok), 26-Сен-16, 21:38 
Управляемый язык подразумевает виртуальную машину. Вот есть Java SSL, например, и что с этим делать вне JRE-мира?
Ответить | Правка | Наверх | Cообщить модератору

23. "Критическая уязвимость в  OpenSSL 1.1.0a"  –1 +/
Сообщение от anonymous (??), 26-Сен-16, 21:40 
C++ не является управляемым языком, однако ссылки там есть, вывод - надо писать на плюсах. А то на сишечке такой код нормально компилится и ждет своего часа.

    char a[256];
    char *buf = a;
    recv(hSocket, &buf, 256);

Ответить | Правка | Наверх | Cообщить модератору

24. "Критическая уязвимость в  OpenSSL 1.1.0a"  +3 +/
Сообщение от KonstantinB (ok), 26-Сен-16, 21:46 
Вы так говорите, как будто в C++ нельзя сделать dangling reference.

Есть, конечно, smart pointers, но это решает проблемы только локально и не всегда.

Ответить | Правка | Наверх | Cообщить модератору

34. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Аноним (-), 27-Сен-16, 00:04 
Rust?
Ответить | Правка | Наверх | Cообщить модератору

47. "Критическая уязвимость в  OpenSSL 1.1.0a"  +3 +/
Сообщение от KonstantinB (ok), 27-Сен-16, 02:34 
Разве что теоретически - если вообще всё на нем вообще переписать, не используя unsafe-функции и raw pointers. На практике малореализуемо.

Вот что на практике реализуемо - так это использовать инструменты статического и динамического анализа и придерживаться единого стиля. Большинство проблем с openssl - следствие исторически сложившейся запутанности его кода и отсутствия этих самых best practices: когда ответственность за выделение/освобождение памяти разнесена как попало, подобные ошибки просто неизбежны. Форки типа libressl как раз это и пытаются решить.

Ответить | Правка | Наверх | Cообщить модератору

78. "Критическая уязвимость в  OpenSSL 1.1.0a"  +4 +/
Сообщение от Аноним (-), 27-Сен-16, 15:10 
Настолько категорично переписывать всё и не обязательно – даже с unsafe-ом количество мест за которыми нужно следить сокращается многократно.

Но всё же это всё мечты – переносить проект после такого длинного пути развития на plain c даже на плюсы уже целая эпопея (см. gcc).

Ответить | Правка | Наверх | Cообщить модератору

80. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Аноним (5), 27-Сен-16, 15:23 
> Настолько категорично переписывать всё и не обязательно – даже с unsafe-ом количество
> мест за которыми нужно следить сокращается многократно.
> Но всё же это всё мечты – переносить проект после такого длинного
> пути развития на plain c даже на плюсы уже целая эпопея
> (см. gcc).

Многие проекты на C переносятся на плюсы переименованием файлов в .cpp, и добавлением префикса extern "C" для функций API

Ответить | Правка | Наверх | Cообщить модератору

83. "Критическая уязвимость в  OpenSSL 1.1.0a"  +3 +/
Сообщение от Аноним (-), 27-Сен-16, 15:39 
Может всё же не стоит путать пренос кода на другой язык с подключением этого же кода к коду на другом языке?
Ответить | Правка | Наверх | Cообщить модератору

86. "Критическая уязвимость в  OpenSSL 1.1.0a"  –1 +/
Сообщение от Аноним (5), 27-Сен-16, 17:01 
> Может всё же не стоит путать пренос кода на другой язык с
> подключением этого же кода к коду на другом языке?

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

Ответить | Правка | Наверх | Cообщить модератору

66. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Клыкастый (ok), 27-Сен-16, 11:28 
D?
Ответить | Правка | К родителю #34 | Наверх | Cообщить модератору

87. "Критическая уязвимость в  OpenSSL 1.1.0a"  +1 +/
Сообщение от Аноним (-), 27-Сен-16, 17:06 
Его главная проблема в том, что он метит скорее к высокоуровенным языкам, и в плане безопасности от тех же плюсов без использования GC не ушёл никуда.
Ответить | Правка | Наверх | Cообщить модератору

88. "Критическая уязвимость в  OpenSSL 1.1.0a"  –2 +/
Сообщение от Клыкастый (ok), 27-Сен-16, 17:40 
> Его главная проблема в том, что он метит скорее к высокоуровенным языкам,

высокоуровневые это C? он от сишника недалеко ушёл, и вынос некоторых вещей на уровень стиля программирования и проверку части ошибок на компилятор не сильно его приближает к жабам и окамлам. ИМХО то, что заказывали: "низкоуровневое" как C, чуть более безопасное, как C++. Это просто мои соображения, категорично утверждать не буду.

> и в плане безопасности от тех же плюсов без использования GC не ушёл никуда.

насколько я знаю использует подсчёт ссылок. уже хорошо.

Ответить | Правка | Наверх | Cообщить модератору

92. "Критическая уязвимость в  OpenSSL 1.1.0a"  +1 +/
Сообщение от Аноним (-), 27-Сен-16, 18:26 
>насколько я знаю использует подсчёт ссылок. уже хорошо.

Нет, не использует. Ну, точнее есть самая наивная реализация самртпоинтеров в стандартной библиотеке как и в плюсах (при этом самое смешное что использовать их с отлкюченным GC или без рантайма не получится - эта реализация взаимодействует со сборщиком, чтобы тот корректно работал).
>высокоуровневые это C? он от сишника недалеко ушёл

Вот вообще ни разу - без сборщика течёт половина языка (те же билтиновые массивы, строки, замыкания и тд), аллокации на стёке в самом языке нет - есть в стандартной библиотекие, которая без GC не работает :)  

Ответить | Правка | Наверх | Cообщить модератору

104. "Критическая уязвимость в  OpenSSL 1.1.0a"  –1 +/
Сообщение от Клыкастый (ok), 28-Сен-16, 12:11 
> Нет, не использует. Ну, точнее есть самая наивная реализация самртпоинтеров в стандартной
> библиотеке как и в плюсах (при этом самое смешное что использовать
> их с отлкюченным GC или без рантайма не получится - эта
> реализация взаимодействует со сборщиком, чтобы тот корректно работал).

по хабрам и D-пабликам ходит статья про обёртки для работы с отключеным GC, не оно? (про ровность такого решения пока не будем).

> Вот вообще ни разу - без сборщика течёт половина языка (те же
> билтиновые массивы, строки, замыкания и тд), аллокации на стёке в самом
> языке нет - есть в стандартной библиотекие, которая без GC не
> работает :)

всё так плохо?

Ответить | Правка | Наверх | Cообщить модератору

112. "Критическая уязвимость в  OpenSSL 1.1.0a"  –1 +/
Сообщение от anonymous (??), 29-Сен-16, 09:35 
Бред. ""_ptr's (и smart_ptr) не имеют к GC никакого отношения. Все сводится к подсчету ссылок (ну, и определённые гарантии по жизненному циклу объектов).
Ответить | Правка | Наверх | Cообщить модератору

113. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Аноним (-), 29-Сен-16, 11:08 
Может стоит сначала открыть исходники и посмотреть прежде чем писать?
Или объяснить принцип работы GC и как память выделенная внутри объекта завёрнутого в смартпоинтер отслеживается сборщиком?
Ответить | Правка | К родителю #112 | Наверх | Cообщить модератору

114. "Критическая уязвимость в  OpenSSL 1.1.0a"  –1 +/
Сообщение от yaa (?), 29-Сен-16, 11:23 
> Может стоит сначала открыть исходники и посмотреть прежде чем писать?

Именно так. Вам стоит таки открыть исходники.

Ответить | Правка | К родителю #113 | Наверх | Cообщить модератору

115. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Аноним (-), 29-Сен-16, 16:26 
https://github.com/dlang/phobos/blob/master/std/typecons.d#L...
Ну...
Ответить | Правка | К родителю #114 | Наверх | Cообщить модератору

116. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от yaa (?), 29-Сен-16, 19:46 
А, так речь про D... Тогда все эти комментарии надо потереть.
Ответить | Правка | К родителю #115 | Наверх | Cообщить модератору

117. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Michael Shigorinemail (ok), 29-Сен-16, 19:55 
> А, так речь про D... Тогда все эти комментарии надо потереть.

Если какие-либо Ваши потеряли смысл после уточнения -- приведите их номера, пожалуйста.

Ответить | Правка | К родителю #116 | Наверх | Cообщить модератору

90. "Критическая уязвимость в  OpenSSL 1.1.0a"  –2 +/
Сообщение от _ (??), 27-Сен-16, 18:11 
Теперь D принято писать так:
:-D

Потому что не взлетели.

Ответить | Правка | К родителю #66 | Наверх | Cообщить модератору

59. "Критическая уязвимость в  OpenSSL 1.1.0a"  +/
Сообщение от Аноним (-), 27-Сен-16, 09:53 
Так зачем писать фигню, а потом её компилить и релизить?
Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру