Это не статья — это список уязвимостей без объяснений, что они означают, примеров таких уязвимостей и методов, которые помогают их избежать. Поэтому она и вряд ли чем-нибуть сможет помочь.
Ну, вот там по ссылке оригинал статьи на английском (Top25). В этой статье каждая ошибка снабжается подробным описанием и советами — как действовать, чтобы избежать появления этих ошибок в своих разработках.
Огромная она, перевести целиком — большой труд. Хотя, если в этой ветке найдутся желающие, можно выполнить коллективный перевод (сами-знаете-где :)).
19 ну любые случайные числа генерируемы компом «недостаточно случайны»)) Правда недавно был пост о случайных числах типа курса доллара или счета матча)
зы картинки действительно забавные
Ну энтропию можно откуда-то набрать.
Классические варианты — временные промежутки между нажатиями клавиш, кликами мышки, активность в локальной сети, шум на микрофонном входе и т.д.
Вполне себе случайные вещи (что конечно не освобождает от проверки набранных данных на случайность). Накопив таким образом случайную информацию — можно начинать генерировать действительно случайные числа.
В некоторых системах есть специальные аппаратные датчики случайных чисел. Так что не всё так плохо :)
20 критических уязвимостей в программе