The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Анализ зависимости безопасности кода от используемого языка ..."
Отправлено PnD, 21-Дек-20 15:18 
По моему опыту всё, на чём я (и не только) писал могло оказаться неправильным. И (в принципе) таковым остаётся пожизненно, т.к. математическое моделирование (выливающееся в покрытие тестами) также допускает ошибки.

ASM: Неверное применение инструкций (даже так бывает). Т.к. в современных системах мало справочник перелистать.
ASM,*sh,php: Смешивание кода и данных. Причины разные, а проблемы одни.

С (в моём случае это обычно libc, хотя даже дёргай я напрямую за syscall, как в go поступают — то же самое будет): Опять таки, неверные сценарии работы (с posix). Не обеспечил "wait()" после завершения форка — здравствуй, зомби.

С++ (не моё): Многие начинающие пытаются писать "олимпиадный" код. Потому что "круто".

Go: Всё про параллелизм провоцирует трудно отлаживаемые ошибки. 90% мог бы вычистить стат. анализатор, но его нет. Вплоть до анекдотов, когда мьютекс объявлен внутри функции которую должен контролировать (не всю, но не важно). И "замыленный" глаз это не видит. Также прослеживается тенденция "переписать на безопасном go" (dns, ssl). С неизбежным внесением ошибок в логику.

Perl: Легко написать медленный код, не разобравшись в слабостях языка. Хуже того, некоторые вещи (треды) могут работать не так как ожидается из документации. А отлаживать параллельное выполнение на языке который изначально был не про это — ну так себе.

Python (с 3.х — только "одноразовый" код): Попытка сумничать (ну, язык-то позволяет) порождает откровенный идиотизм.

Все "высокоуровневые" языки (у меня "под боком" — java и erlang): Провоцируют пишущего чувствовать себя "в домике". Код "складывается" под нагрузкой самыми причудливыми образами.

…Короче, побрюзжал. Можно идти дальше писать на том что "под рукой". И хорошо, когда это не авионика для "Боингов".

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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