кибербезопасность какие языки программирования

Кибербезопасность какие языки программирования

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

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

1. C и С++

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

Эти языки позволяют работать с памятью и системными процессами на низком уровне, которые могут атаковать хакеры.

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

Вот замечательная цитата из Бьярна Страуструпа, создателя C++:

«C позволяет легко выстрелить себе в ногу, на С++ это сделать сложнее, но если вы попадете, то он отстрелит всю ногу».

Как эксперт в области безопасности, если у вас есть опыт работы с С/С++, то вы будете знать как реагировать атаки на низком уровне в вашем окружении.

2. Python

Python является языком программирования высокого уровня, который становится все более популярным среди специалистов по безопасности.

Он набирает обороты благодаря легкости написания кода, ясного и простого синтаксиса, а так же наличия большого количества готовых библиотек.

Любую задачу можно реализовать на Python.

Например, с помощью этого языка можно отправлять TCP-пакеты на компьютеры, выполнять анализ вредоносных программ и создавать системы обнаружения вторжений с минимальным использованием сторонних инструментов.

Однако, в отличие от C/C++ Python не является низкоуровневым, поэтому не дает доступа к аппаратным ресурсам компьютера.

Изучение Python для безопасности даст преимущество в вашей карьере. Вы получите навыки программирования, которые помогут вам найти уязвимости и понять как их исправить.

3. JavaScript

JavaScript является языком программирования высокого уровня, который часто называют языком интернета.

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

Хотя JavaScript изначально был реализован только на стороне клиента в веб-браузерах, теперь язык можно использовать на серверной части для работы с базами данных и в отдельных приложениях.

Широкое применение JavaScript позволит вам стать на шаг впереди хакеров.

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

Если у вас есть опыт использования языка JavaScript, то вы можете предотвратить такие типы атак.

4. PHP

Например, DDoS атаки обычно делают веб-приложение недоступных для реальных пользователей.

Благодаря знаниям программирования на PHP в сочетании с навыками в других технологиях, таких как JavaScript, вы можете реализовать надежные решения для защиты веб-приложений.

5. SQL

SQL используется для управления данными, которые хранятся в базах данных.

В бизнесе широко используются базы данных на SQL, поэтому умение работать с этими данными станет большим преимуществом.

Хакеры все чаще используют SQL для изменения сохраненных данных или для кражи. С помощью SQL инъекции возможно получить доступ к базе.

Хорошее понимание языка SQL имеет решающее значение в вашей карьере в безопасности.

Заключение

Список выше не является исчерпывающим списком лучших языков программирования в безопасности.

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

Например, если вы хотите сосредоточиться на защите фронтенда веб-приложения, изучение JavaScript может быть идеальным выбором.

Тем не менее чтобы быть всесторонним, вам нужно использовать такой подход: чем больше языков вы изучаете, тем лучше.

Источник

Собираешься работать в кибербезопасности? Прочитай это

Автор статьи — Брайан Кребс, известный журналист в сфере информационной безопасности.

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

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.

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

Редко спрашивают, какие практические навыки нужно освоить, чтобы стать более привлекательным кандидатом. Я всегда предупреждаю, что у меня самого нет никаких сертификатов и дипломов, но я регулярно разговариваю с руководителями отделов ИБ и рекрутерами — и часто спрашиваю о впечатлениях о современных кандидатах.

Типичный ответ — что очень многим кандидатам просто не хватает опыта работы с практическими задачами.

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

Один из ключевых советов — изучать основу, как компьютеры и другие устройства взаимодействуют друг с другом. Я говорю это потому, что умение работать в сети — фундаментальный навык, на котором строятся многие другие области обучения. Получить работу в сфере безопасности без глубокого понимания того, как работают пакеты данных, немного похожа на попытку стать инженером-химиком, не изучив сначала таблицу Менделеева.

Пожалуйста, не верьте мне на слово. Исследовательский институт SANS недавно провёл опрос более 500 практиков кибербезопасности в 284 различных компаниях в попытке выяснить, какие навыки они находят наиболее полезными для кандидатов на работу, а какие чаще всего отсутствуют.

В ходе опроса респондентам предлагалось ранжировать различные навыки от «критических» до «необязательных». Целых 85% назвали знание сети критическим или «очень важным» навыком, за которым следует владение операционной системой Linux (77%), Windows (73%), распространённые методы применения эксплоитов (73%), компьютерная архитектура и виртуализация (67%), обработка данных и криптография (58%). Довольно удивительно, что только 39% назвали программирование критическим или очень важным навыком (к этому вернёмся через минуту).

Как специалисты по кибербезопасности оценивали потенциальных кандидатов на работу по этим критическим и очень важным навыкам? Результаты кажутся ошеломляющими:

НавыкиСколько кандидатов не смогли решить даже базовые задачиСколько кандидатов продемонстрировали мастерство
Общие техники взлома66%4,5%
Компьютерные архитектуры47%12,5%
Сеть46%4%
Linux40%14%
Программирование32%11,5%
Данные и криптография30%2%

«Работодатели сообщают, что подготовка студентов по кибербезопасности в значительной степени неадекватна, и они разочарованы, что приходится тратить месяцы на поиски, прежде чем они найдут квалифицированных сотрудников начального уровня, если таковые вообще могут быть найдены, — говорит Алан Паллер, директор по исследованиям Института SANS. — Мы предположили, что для начала решения этих проблем и устранения разрыва следует сформулировать навыки, которые работодатели ожидают, но не находят у выпускников».

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

Скорее они попали в безопасность потому, что их страстно и сильно интересовала тема, и это любопытство заставляло как можно больше учиться — главным образом, читая, пробуя и делая ошибки (много ошибок).

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

Без овладения одним или несколькими из перечисленных навыков вас просто не будут считать очень привлекательным или выдающимся кандидатом.

Но… как?

Итак, на чём сосредоточиться и с чего лучше всего начать? Во-первых, хотя существует почти бесконечное количество способов получения знаний и практически нет предела глубинам, которые вы можете исследовать, но самый быстрый способ обучения — это запачкать руки.

Я не говорю о взломе чьей-то сети или какого-то плохого сайта. Пожалуйста, не делайте этого без разрешения. Если ломать сторонние сервисы и сайты, то выбирайте те, которые предлагают вознаграждение через программы bug bounty, а затем убедитесь, что соблюдаете правила этих программ.

Но почти всё можно воспроизвести локально. Хотите овладеть общими методами взлома и эксплуатации уязвимостей? Существует бесчисленное множество доступных бесплатных ресурсов; специально разработанные инструменты, такие как Metasploit и WebGoat, и дистрибутивы Linux, такие как Kali Linux, с большим количеством учебников и онлайновых туториалов. Кроме того, есть ряд бесплатных инструментов для пентестинга и обнаружения уязвимостей, такие как Nmap, Nessus, OpenVAS и Nikto. Это далеко не полный список.

Организуйте собственную хакерскую лабораторию. Можете сделать это на запасном компьютере или сервере или на старом ПК, которых в изобилии по дешёвке продаются на eBay или Craigslist. Бесплатные инструменты виртуализации, такие как VirtualBox, упрощают работу с различными операционными системами без необходимости установки дополнительного оборудования.

Или подумайте о том, чтобы заплатить кому-то за установку виртуального сервера, на котором можете ставить опыты. Amazon EC2 — хороший недорогой вариант. Если хотите тестировать веб-приложения, можно установить на компьютеры в собственной локальной сети любое количество веб-сервисов, таких как старые версии WordPress, Joomla или движки интернет-магазинов, такие как Magento.

Хотите изучить сети? Начните с приличной книги по TCP/IP, хорошенько изучите сетевой стек и то, как все слои взаимодействуют друг с другом.

Пока усваиваете эту информацию, научитесь использовать некоторые инструменты, которые помогут применить знания на практике. Например, познакомьтесь с Wireshark и Tcpdump, удобными инструментами, используемыми сетевыми администраторами для устранения неполадок сети и безопасности, а также для понимания того, как работают (или не работают) сетевые приложения. Начните с проверки собственного сетевого трафика, просмотра веб-страниц и повседневного использования компьютера. Попытайтесь понять, что делают приложения на вашем компьютере, глядя на то, какие данные они отправляют и получают, как и где.

О программировании

Работодатели могут требовать или не требовать навыки программирования на таких языках, как Go, Java, Perl, Python, C или Ruby. Независимо от этого, знание одного или нескольких языков не только сделает вас более привлекательным кандидатом, но и облегчит дальнейшее обучение и переход на более высокие уровни мастерства.

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

Если вас пугает идея изучения языка, начните с основных инструментов командной строки в Linux. Просто научиться писать базовые скрипты для автоматизации рутинных задач — уже прекрасный шаг вперёд. Более того, мастерство в создании шелл-скриптов принесёт солидные дивиденды на протяжении всей вашей карьеры практически в любой технической роли, связанной с компьютерами (независимо от того, изучаете вы конкретный язык программирования или нет).

Получите помощь

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

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

Многие из этих мероприятий бесплатны, в том числе встречи BSides, группы DEFCON и собрания OWASP. И поскольку в технологической индустрии по-прежнему преимущественно представлены мужчины, существует ряд встреч по кибербезопасности и групп, ориентированных на женщин, таких как Женское общество Cyberjutsu и другие, перечисленные здесь.

Если вы не живёте в глуши, скорее всего, в вашем районе есть несколько конференций и встреч по ИБ. Но даже если вы в глуши, многие из этих встреч сейчас проводятся виртуально из-за пандемии COVID-19.

Короче говоря, не рассчитывайте, что диплом или сертификат дадут вам навыки, которые работодатели по понятным причинам ожидают от вас. Это может быть несправедливо или нет, но вам придётся развивать и совершенствовать навыки, которые послужат будущему работодателю(-ям) и возможности трудоустройства в этой области.

Уверен, у читателей есть собственные идеи, на чём лучше всего сосредоточить свои усилия новичкам и студентам. Пожалуйста, не стесняйтесь высказываться в комментариях.

Источник

Информационная безопасность — что нужно знать и уметь, чтобы считаться хорошим специалистом по ИБ?

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.

Действительно, эксперты в сфере кибербезопасности защищают деньги, данные, репутацию компаний, их сотрудников и пользователей. Гордиться есть чем. Тем не менее, о тех, кто защищает нашу с вами безопасность в интернет-пространстве, известно далеко не так много, как о разработчиках, о которых говорят и пишут. Кто-то написал приложение или игру, которые принесли создателю популярность и деньги, еще кто-то разработал криптовалютную платформу, на которую обратили внимание криптобиржи. Работа «инфобезопасников» остается скрытой от любопытных глаз.

Тем не менее, она важна не менее, чем дело рук программистов, ведь их продукты в какой-то мере становятся популярными и благодаря слаженной работе экспертов по кибербезопасности. О том, что представляет собой сама профессия и на что можно рассчитывать, когда начинаешь свой путь в качестве ИБ, и рассказывает эта статья. Разобраться в этой сложной теме помог Виктор Чаплыгин преподаватель факультета GeekBrains по информационной безопасности (ИБ).

Кто может назвать себя специалистом по ИБ?

Как и во многих других технических специальностях, в инфобезе специалист — тот, кто обладает значительным техническим бэкграундом. У такого человека должен быть солидный опыт практической работы с разными технологиями (какими именно — поговорим ниже), но должна быть на высоте и теоретическая подготовка. Плюс ко всему, и это то, чего нет в большинстве других специальностей — он должен неплохо разбираться и в комплаенсе, т.е. знать законодательные нормы и требования области защиты информации и информационной безопасности в целом.

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

Наиболее важные специальности в ИБ

Здесь много возможных вариантов ответа, поскольку специальности можно делить на разные типы и разновидности. Кроме того, можно долго спорить, какие направления в ИБ всех главнее. Поэтому сделаем субъективное выделение трех важных направлений работы:

Пентестер. Мы живем в мире приложений, они везде — в смартфоне, ноутбуке, на стационаре и даже в холодильнике. К сожалению, далеко не все разработчики ПО имеют более-менее продвинутые навыки в информационной безопасности. А если и так, то уязвимость может возникнуть при взаимодействии, например, фронтенда приложения с бэкендом. Ошибки могут быть и в написанном коде. Эксперт, который может подсказать, как защитить приложение или сервис от взлома — весьма ценный специалист.

Пентестер (penetration tester) — по сути, белый хакер. Его задача — исследование безопасности веб-сайтов, мобильных приложений, программных платформ и т.п. В отличие от злоумышленников, которых за их деятельность ждет наказание, пентестеры за обнаружение уязвимости получают бонусы. Среди пентестеров есть и фрилансеры — это, зачастую, охотники за Bug Bounty, вознаграждением, предлагаемым какой-либо компанией за обнаружение уязвимости в ее сервисе или приложении. Кстати, факультет информационной безопасности GeekBrains готовит, в том числе, пентестеров. Об успехах некоторых студентов мы планируем опубликовать отдельную статью.

Специалист по безопасной разработке приложений. Такой эксперт уже не просто ищет потенциальные уязвимости используя готовые инструменты или тулзы собственной разработки. Он способен разобраться в коде проектов, написанных на разных языках программирования, определить типовые ошибки кода и указать разработчикам на их наличие. В своей работе специалист использует различные инструменты, использует статический и динамический анализ кода, знает разные инструменты и способен выступать в качестве эксперта для команды разработки. Он может указать разработчикам на потенциально уязвимые части кода, которые необходимо переписать.

Специалист по ИБ широкого профиля. Здесь речь о профессионалах, которые могут быть экспертами в 2-3 направлениях информационной безопасности и хорошо разбираться еще в 4-5 смежных направлений. Такие профессионалы могут погружаться в экспертизу и выступать в качестве консультантов или архитекторов сложных высоконагруженных проектов.

Ну а сколько времени нужно на то, чтобы стать хорошим специалистом?

Здесь есть два варианта развития событий. Если в информационную безопасность пришел, например, журналист, который ранее писал о путешествиях, то ему нужно потратить около полутора лет на то, чтобы выйти на уровень джуниора. Это при условии, если в неделю заниматься по 5-7 часов, целенаправленно изучать определенные темы.

Но если инфобезом решил заняться, например, системный администратор, то ему понадобится гораздо меньше времени. Он уже знает, что и как работает, остается на солидную основу (ее солидность зависит от опыта и времени работы) нанести новые знания и практику. При аналогичных названным выше условиям обучения — 5-7 часов в неделю техническому спецу хватит около полугода на выход на уровень джуниора по ИБ или даже более высокую ступень.

В любом случае рекомендуется изучать международные практики, например, с ISO/IEC 27000 — серией международных стандартов, которые включают стандарты по информационной безопасности, опубликованные совместно Международной Организацией по Стандартизации (ISO) и Международной Электротехнической Комиссии (IEC). Кроме того, передовые практики по ИБ можно найти в стандартах различных институтов. Так, некоммерческая организация MITRE ATT&CK позволяет получить детальную информацию о методах работы киберпреступников — например, как они начинают разведку, затем взламывают один из элементов защиты, проникают и закрепляются в системе. В фреймворке MITRE ATT&CK подробно описывается, как злоумышленники могут выполнить свою задачу, описаны меры противодействия или указываются эффективные способы минимизации ущерба, если взлом все же произошел.

Как всегда, есть «но». В том случае, если обучение выполняется формально, например, ради оценок, ничего хорошего из этого не получится. Да и знания без практики не сделают из новичка специалиста.

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

А какие инструменты используют «безопасники»?

Сотрудникам коммерческих организаций проще — здесь можно работать с инструментами от Cisco, Palo Alto, других международных или отечественных компаний.

Новичку в информационной безопасности стоит начать с самостоятельного изучения опенсорс-инструментария, прежде, чем переходить к платным инструментам. Широкий спектр программных продуктов, которые нужны в ежедневной работе, есть в Kali Linux, Parrot OS. Нужно освоить Wireshark, SqlMap, Nmap, John the Ripper и многие другие вещи.

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.

Что касается компетенций, наиболее необходимыми для начинающего специалиста можно назвать:

Вот несколько примеров — реальные вакансии на сервисе «Мой круг».

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.

Сколько получает эксперт по ИБ?

Разброс зарплат довольно большой, как обычно, все зависит от региона и специальности. Но оплата труда специалиста по информационной безопасности сейчас достойная, а ее размер понемногу увеличивается. Во многом рост обусловлен кадровым «голодом» в сфере ИБ.

Для понимания уровня зарплат специалистов стоит ознакомиться с данными зарплатного калькулятора «Моего круга».

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.

Стажеру-джуниору можно надеяться на диапазон от 35 тыс. руб. до 60-70 тысяч.

Средний уровень для миддла — от 60-70 тысяч до 80 тыс. руб. Кстати, пентестер может рассчитывать на зарплату от 100 тысяч, если есть хотя бы небольшой опыт реальной работы и хорошая подготовка.

Дальше уже идут «универсальные солдаты», которые знают языки программирование, могут писать скрипты, обладают знаниями в смежных сферах. Их зарплата начинается от 100 тысяч и может доходить до 300-500 тыс. руб. Но таких предложений на рынке не очень много, плюс чтобы достичь подобного уровня заработной платы, нужно быть очень, очень хорошим специалистом. За экспертизу готовы платить многие компании.

В целом же в таких городах, как Москва, Питер и Новосибирск можно рассчитывать на 60-120 тысяч рублей.

Завершая статью, стоит сказать, что защита информации — приоритетное направление ИТ-рынка. Несмотря на явный прогресс инструментов автоматизации, технологий искусственного интеллекта, на переднем краю информационной защиты все же находится человек. На хороших специалистов спрос есть всегда, а по мере роста кадрового голода в ИБ-сфере предложения становятся все более интересными.

Источник

Какие языки программирования наименее безопасны?

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.

Обзор от WhiteSource показал, какие из языков программирования имеют наибольшие дыры в безопасности. Победитель антирейтинга — Си. Но это только начало истории.

Технологии в целом нашпигованы ошибками безопасности. На низком уровне это ошибки в железе. Так это было с уязвимостью Intel и ошибками Spectre. Чуть выше — дыры в безопасности языков программирования. И их ну очень много!

Недавно Open-Source компания WhiteSource, занимающаяся вопросами безопасности, провела исследование уязвимостей в семи наиболее распространённых языках программирования за последние десять лет. Для обнаружения ошибок компания использовала свою базу данных языковой безопасности. Она содержит уязвимости с открытым исходным кодом из нескольких источников, таких как Национальная База данных Уязвимостей (NVD), инструкции по безопасности, трекеры GitHub`a и проектов с открытым исходным кодом.

Компания выделила следующие языки: C, Java, JavaScript, Python, Ruby, PHP и C++. И это не удивительно. Как и то, какой язык имеет наибольшее число ошибок безопасности. С большим отрывом это Си. Более 50% обнаруженных уязвимостей были в нём.

Как недавно заметил Киис «Кэйз» Кук (Kees «Case» Cook), инженер по безопасности ядра Linux в Google: «Cи — это улучшенный ассемблер. Почти машинный код». Кроме того, «Cи несёт вызывающий беспокойство багаж, неопределённое поведение и другие слабые стороны, которые ведут к пробелам в безопасности и уязвимостям инфраструктуры».

Однако, в WhiteSource утверждают, что «нельзя говорить, что Си менее безопасен, чем другие языки. Большое число уязвимостей в открытом исходном коде Си может объясняться рядом факторов. Для начала, Си использовался дольше, чем другие языки, которые мы исследовали. Он имеет наибольший объём написанного кода. Это также один из языков, который стоит за такими важными инфраструктурами как OpenSSL и ядро Linux. Такая комбинация объёма и центрального положения объясняет большое число известных уязвимостей в open-source».

В WhiteSource уловили суть. Но, несмотря на десятилетия программирования и борьбы с Си, в этом языке действительно есть способы слишком легко сделать ужасные ошибки безопасности. Например, в Си есть большое количество примеров неопределённого поведения, что открывает возможности для всех видов неприятностей.

C++ при этом «прославился» уязвимостями наиболее высокой степени опасности за последние пять лет. Ошибки буфера, которые долгое время терзали Си, зачастую обнаруживаются и в C++.

кибербезопасность какие языки программирования. картинка кибербезопасность какие языки программирования. кибербезопасность какие языки программирования фото. кибербезопасность какие языки программирования видео. кибербезопасность какие языки программирования смотреть картинку онлайн. смотреть картинку кибербезопасность какие языки программирования.
Цифры не отражают всю картину, если говорить о том, какой язык наиболее или наименее защищён.
(Изображение WhiteSource)

При этом JavaScript, возможно, наиболее популярный язык. И единственный, который показал «непрерывное увеличение количества уязвимостей за последние 10 лет».

WhiteSource подчёркивает, что прежде чем насмехаться над JavaScript, следует учесть, что эти результаты обманчивы. Большую часть из Общего Перечня Уязвимостей (Common Weakness Enumeration) в JavaScript составляют выходы за пределы назначенного каталога и дыры в криптозащите пакетов JavaScript, которые едва используются и поддерживаются.

Почему тогда эти и другие языковые проблемы на виду? Новые автоматизированные программы, такие как Source Code Analysis Tools, обнаруживают уязвимости, которые в ином случае проглядели бы.

Единственный язык, который хорошо показал себя в отношении дыр безопасности это (барабанная дробь!) — Python. Да-да, старый добрый часто высмеиваемый Python.

Почти все языки вносят свой вклад в Общий Перечень Уязвимостей. Две ошибки из перечня лидировали и были представлены в 70% случаев: Межсайтовый скриптинг (XSS), также известный как CWE-79 и Недостаточная проверка входных данных (CWE-20).

Другие часто встречающиеся ошибки: Утечка / раскрытие информации (CWE-200), Выход за пределы назначенного каталога (CWE-22) и CWE-264 — Разрешения, привилегии и средства управления доступом. Последнее с недавних пор вытесняется своим более конкретным и близким родственником — Неправильным контролем доступа (CWE-284).

Но действительно ли Си наихудший, а Python наилучший? В WhiteSource считают, что это слишком простой вывод: «Хотя игра «Мой язык программирования безопасней, чем твой» — это определённо весёлый способ провести время … ответ по всей видимости не поможет вам создать более инновационный или защищённый софт».

И напротив, вам следует проводить больше времени «оставаясь на острие знаний уязвимостей с открытым исходным кодом, понимая сильные и слабые стороны того языка программирования, который используете вы и ваша команда».

В конечном итоге безопасность сводится не к языкам программирования, а к тому, как вы их используете.

Стивен Дж. Воган-Николс (Steven J. Vaughan-Nichols) для Linux and Open Source

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *