000

Журнал InfoWorld составил список самых популярных ошибок, которые совершают программисты при написании кода. По мнению экспертов, именно благодаря этим ошибкам злоумышленники получают несанкционированный доступ в систему, могут скопировать учётные данные пользователей и т.д.

Итак, вот список главных ошибок.

1. Вы доверяете коду неизвестного происхождения.

В процессе написания программы почти каждый разработчик копирует фрагменты кода со стороны. Часто бывает так, что сторонние библиотеки не обеспечивают достаточного уровня безопасности. Последний пример такого рода — библиотека OpenSSL, в которой несколько месяцев назад обнаружили критическую уязвимость.

Что делать в такой ситуации? Конечно, писать всё с нуля — не выход, но нужно, по крайней мере, более тщательно относиться к заимствованию кода.

2. Указание паролей открытым текстом.

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

3. Отсутствие проверки входящих значений.

SQL-инъекции и удалённые выполнение кода — самые популярные и опасные уязвимости нашего времени. Такая ситуация возникла, потому что веб-приложения доверяют любым данным, полученным из внешнего источника через веб-форму. Манипулируя содержимым SQL-запроса, злоумышленник может заставить СУБД выполнить действие, которое разработчики не предусмотрели: например, скопировать все записи с именами пользователей и паролями.

4. Отсутствие защиты данных.

Отсутствие шифрования данных на сервере — одна из самых распространённых ошибок разработчиков. Нужно защищать всю чувствительную информацию: имена, пароли, персональные идентификаторы пользователей и проч. Простого использования шифрования недостаточно, нужно ещё грамотно его реализовать.

5. Игнорирование сетевого уровня OSI 8.

В стандарте OSI такого уровня не существует, но его часто упоминают, имея в виду людей, которые будут использовать ваше программное обеспечение. Нужно понимать, что зачастую взлом ПО осуществляется не через баги, а через людей, которые пользуются вашей программой. Речь идёт о социальной инженерии. Разработчик должен сделать пользовательский интерфейс максимально простым и понятным, чтобы никого нельзя было ввести в заблуждение.



10 комментариев

  1. 21.07.2014 at 21:15

    Поздравляю, Америку открыли.

  2. 21.07.2014 at 23:43

  3. http://watchmyservice.com/

    22.07.2014 at 10:24

    Статья нормальная. Информация — баян. Это значит, что человечество в целом, а программисты в частности эволюционируют очень медленно.

    • 23.07.2014 at 15:01

      что значит баян? Известно, что эти ошибки были 10 лет назад, есть сейчас и будут через 10 лет. А вот бороться с ними можно только напоминаниями. И эту статью довольно удобно добавить в закладки, чтобы проверять самого себя при программировании

      • http://watchmyservice.com/

        25.07.2014 at 10:46

        При том, что довольно стандартные ошибки, основанные на внимательности, можно устранить только лишь путем эволюции вида.

        • 26.07.2014 at 19:19

          мне кажется, вы не правильно понимаете слово «эволюция». Вы ни разу не бились об косяк или ножку стула? Если бились, то эту ошибку тоже можно исправить только эволюцией? А ведь проблема основана на той же внимательности

  4. 22.07.2014 at 18:51

    Вы долбанулись? тематика статьи организована как ЗАМЕТКА! Понимаете суть заметки, м? Вот и заткнули рты, только и можете говно лить.

  5. 24.07.2014 at 22:07

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

    • http://watchmyservice.com/

      25.07.2014 at 10:48

      А если компьютер выключен из сети, и вообще выключен… Хакеры смогут его взломать?

  6. http://watchmyservice.com/

    25.07.2014 at 10:48

    я доверяю css коду неизвестного происхождения

Оставить мнение