Как вы, возможно, знаете, современная архитектура программного обеспечения работает намного лучше, чем когда-либо. Несомненно, он более адаптируемый, требует больших объемов данных и работает быстрее, чем его предшественники. Тем не менее, это настоящая проблема, особенно в наше время, - защитить то же программное обеспечение от сетевых угроз (также известных как кибератаки). Поскольку в наши дни программные системы работают на всем - от мобильных устройств до камер наблюдения, от умных автомобилей до умных домов, от производственных предприятий до атомных электростанций, современное программное обеспечение слишком важно, чтобы его взломали или взломали.
Например, в октябре 2019 года была взломана атомная электростанция в Куданкуламе, Индия. При атаке использовалось вредоносное ПО, запрограммированное для извлечения данных, но, к счастью, внутренняя сеть станции не была взломана. Если бы вредоносная программа могла проникнуть во внутреннюю сеть, она могла бы украсть важные данные о электростанции, тем самым вторгнувшись в критически важную инфраструктуру страны. Более того, если бы цель атаки заключалась в захвате электростанции и если бы ее план увенчался успехом, она могла бы нанести огромный ущерб, подавив электростанцию.
К счастью, серьезного ущерба нанесено не было. Однако Индии — или любой другой стране в этом случае — в будущем может так не повезти. Именно поэтому современное программное обеспечение должно разрабатываться с нуля с учетом его безопасности. Кроме того, его необходимо регулярно тестировать на наличие ошибок и уязвимостей. Однако тестирование безопасности приложений — дорогостоящий процесс, поэтому автоматизированное тестирование — это насущная необходимость . Среди стратегий автоматизированного тестирования одним из наиболее распространенных и эффективных решений является автоматизированное тестирование на проникновение.
Автоматизированное тестирование на проникновение
Относится к процессу автоматического запуска смоделированных атак на сеть или систему для поиска ошибок и уязвимостей безопасности. Цель состоит в том, чтобы найти уязвимости и устранить их до того, как киберпреступники узнают о них и воспользуются ими. Обычно это часть полного аудита кибербезопасности, который может потребоваться по причинам соответствия и юридическим причинам. Например, PCI DSS (стандарт безопасности данных индустрии платежных карт) требует от организаций регулярно проводить пентестинг.
Автоматизированное тестирование на проникновение выполняется с помощью программного обеспечения , в отличие от ручного тестирования на проникновение, которое проводят эксперты по кибербезопасности. Поскольку оно выполняется программным обеспечением, его возможности ограничены возможностями этого программного обеспечения, которые, в свою очередь, ограничены знаниями и навыками специалистов по безопасности, разрабатывающих это программное обеспечение. Кроме того, оно оказывается менее эффективным для новых угроз, поскольку выявляет или проверяет только известные уязвимости, что делает его неэффективным против неизвестных угроз.
« Именно здесь на помощь приходит искусственный интеллект — автоматизация, которую можно достичь с помощью искусственного интеллекта, вполне может значительно упростить проведение пентестинга, сделав его более последовательным и масштабным. В свою очередь, это поможет организациям решить проблемы, связанные с квалификацией и корпоративной культурой, и серьезно отнестись к своим стратегиям кибербезопасности », — пишет Packt Hub . Искусственный интеллект помогает масштабировать автоматизированный процесс пентестинга, одновременно улучшая его функции сканирования на наличие неизвестных уязвимостей.
Искусственный интеллект и его влияние
С развитием искусственного интеллекта в последние десятилетия эксперты по автоматизации и компьютерные ученые пытаются автоматизировать все, и технологии киберзащиты не являются исключением. Например, существует множество автоматизированных инструментов, которые дополняют инструменты тестирования на проникновение для предоставления интеллектуальных отчетов. Эти автоматизированные решения обладают некоторыми базовыми возможностями искусственного интеллекта, но они постепенно расширяются благодаря постоянным исследованиям и открытым конкурсам.
Например, Cyber Grand Challenge 2016 - соревнование, спонсируемое DARPA, - предлагало людям создавать хакерских ботов и соревноваться с ними. Эти боты с искусственным интеллектом выполняют тестирование на проникновение для поиска и исправления уязвимостей системы безопасности до того, как конкурирующие команды смогут их использовать. Его победитель, известный как Mayhem, мог находить, исправлять и искать вторжения в свою хост-систему, находя и используя уязвимости безопасности в конкурирующих системах.
Тем не менее, искусственный интеллект помогает повысить эффективность решений для киберзащиты, особенно решений для тестирования на проникновение. Причина в том, что это помогает улучшить различные этапы автоматического тестирования на проникновение, как описано ниже.
Этап 1: планирование
Первый этап - планирование и разведка - сбор информации о цели. И это требует много ресурсов, поскольку чем больше информации вы соберете, тем больше у вас шансов на успех. На этом этапе использование ИИ помогает обеспечить лучшие результаты при меньшем количестве ресурсов. ИИ вместе с компьютерным зрением и обработкой естественного языка может помочь создать полный профиль целевой организации и ее сотрудников, сети, состояния безопасности и т. Д.
Этап 2: сканирование
Второй этап требует комплексного охвата целевых систем. То есть вы должны сканировать сотни, если не тысячи компьютеров и других устройств и анализировать результаты. Используя ИИ, инструменты можно настроить для интеллектуального сканирования устройств и сбора требуемых результатов, что упрощает процесс анализа.
Этап 3: Получение доступа
Третий этап - получение доступа к одной из целевых сетей или систем. Затем эту скомпрометированную систему можно использовать для извлечения данных или запуска атак на другие системы в сети. Используя ИИ, инструменты могут опробовать различные атаки и многочисленные комбинации паролей для получения доступа. Затем они также могут использовать алгоритмы для поиска слабых паттернов или тенденций, которые могут быть нарушены.
Этап 4: Поддержание доступа
Четвертый этап - поддержание доступа к скомпрометированной системе. Используя ИИ, инструменты могут искать известные или неизвестные бэкдоры, зашифрованные каналы и следить за учетными записями и журналами, чтобы обнаруживать подозрительные или несанкционированные действия и сообщать о них. Например, новая учетная запись администратора или канал доступа к сети могут указывать на взломанную систему и / или неавторизованный доступ.
Этап 5: Анализ и отчетность
Последний этап - это проверка того, может ли неавторизованный объект скрывать следы, то есть удалять историю и журналы из ваших систем, делая невозможным обнаружение атак. Используя ИИ, инструменты могут обнаруживать скрытые бэкдоры, конечные точки несанкционированного доступа и т. Д. Кроме того, эти инструменты могут лучше анализировать сообщения об ошибках и системные журналы для поиска ошибок, отсутствующих записей или других подозрительных действий. Наконец, этот анализ помещается в легко читаемый отчет с подробными полными результатами тестирования объекта.
