Анализ методов выявления уязвимостей во встроенном программном обеспечении IOT устройств

Острая потребность в повышении эффективности методов выявления уязвимостей во встроенном программном обеспечении. Полная, либо частичная автоматизация этапов поиска уязвимостей по методологии OWASP. Автоматизация этапов процесса поиска уязвимостей.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 12.08.2020
Размер файла 126,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Анализ методов выявления уязвимостей во встроенном программном обеспечении IOT устройств

Тавасиев Д.А.

Команов П.А.

Ревазов Х.Ю.

Семиков В.С.

Аннотации

Актуальность и постановка задачи: На сегодняшний день, уязвимости во встроенном программном обеспечении устройств интернета вещей составляют серьезную угрозу, так как злоумышленники проэксплуатировав уязвимости получают удаленный доступ к устройствам, что позволяет им формировать ботнеты, которые в дальнейшем используются для захвата новых устройств или организации серьезных DDos атак. Поэтому на данный момент существует острая потребность в повышении эффективности методов выявления уязвимостей во встроенном программном обеспечении. Целью работы является повышение эффективности процесса обнаружения уязвимостей в встроенном программном обеспечении IoT устройств. Объектом исследования выступает защищенность встроенного программного обеспечения IoT устройств. Предметом исследования являются методы обнаружения уязвимостей в встроенном программном обеспечении IoT устройств. Используемые методы: решением проблемы является полная, либо частичная автоматизация этапов поиска уязвимостей по методологии OWASP Firmware Security Testing Methodology 2019 во встроенном программном обеспечении устройств интернета вещей. Новизна: элементами практической новизны являются предложенные в работе решения, позволяющее автоматизировать отдельные этапы процесса поиска уязвимостей. программный автоматизация уязвимость

Ключевые слова: IoT, уязвимости в встроенном программном обеспечении, поиск уязвимостей, OWASP Firmware Security Testing Methodology 2019.

ANALYSIS OF VULNERABILITY DETECTION METHODS IN THE FIRMWARE OF IOT DEVICES

Research article

Tavasiev D.A.1, *, Komanov P.A.2, Revazov H. Yu.3, Semikov V.S.4

1 ORCID: 0000-0001-7859-9461;

2 ORCID: 0000-0001-5640-2322;

3 ORCID: 0000-0002-3358-6197;

1, 2, 3, 4 National Research ITMO University, St. Petersburg, Russia

* Corresponding author (d.tavasiev1997[at]gmail.com)

Abstract

Relevance and statement of the problem: Today vulnerabilities in the firmware of the Internet of things devices constitute a serious threat, since attackers exploiting vulnerabilities gain remote access to devices, which allows them to form botnets, which are then used to capture new devices or organize serious DDoS attacks. At present, there is an urgent need to improve the effectiveness of methods for identifying vulnerabilities in embedded software. The purpose of the work is improving the efficiency of the vulnerability detection process in the firmware of IoT devices. Methods used: the solution to the problem is the full or partial automation of the stages of vulnerability search according to the OWASP Firmware Security Testing Methodology 2019 methodology in the firmware of the Internet of things devices. Novelty: elements of practical novelty are the solutions proposed in the work, which allows automating individual stages of the vulnerability search process.

Keywords: IoT, firmware vulnerabilities, vulnerability search, OWASP Firmware Security Testing Methodology 2019.

Введение

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

Анализ этапов выявления уязвимостей

Процесс поиска уязвимостей во встроенном программном обеспечении по методологии OWASP Firmware Security Testing Methodology 2019 состоит из следующих этапов [1], [2]:

1.Сбор информации. На данном этапе изучается техническая документация, инструкции.

2.Получение прошивки. Прошивка может быть получена следующими способами: от команды разработчиков или клиента, может быть собрана с нуля, с использованием инструкции от производителя, может быть получена с сайта производителя, может быть извлечена напрямую из аппаратного обеспечения через UART, JTAG, PICit и т.д.

3.Анализ прошивки. После получения образа прошивки, изучаются аспекты файла и его характеристики, проверяется не зашифрован ли бинарный файл, проверяется его энтропия [3].

4.Извлечение файловой системы. Исходя из данных, полученных на предыдущем этапе, из прошивки извлекается файловая система (и загрузчик).

5.Анализ содержимого файловой системы. На этом этапе собираются данные для этапов анализа времени выполнения и динамического анализа.

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

7.Динамический анализ. На этом этапе выполняется динамическое тестирование, когда устройство работает в нормальной или эмулируемой среде. Цели на этом этапе могут варьироваться в зависимости от проекта и уровня предоставляемого доступа. Как правило, данный этап включает в себя анализ загрузчика конфигурации, веб-тестирование и API, фаззинг (сетевые и прикладные сервисы) [4], а также активное сканирование.

8.Анализ времени выполнения. Анализ во время выполнения включает в себя подключение к работающему процессу или двоичному файлу, пока устройство работает в своей нормальной или эмулированной среде [4].

9.Бинарная эксплуатация. После выявления уязвимости в двоичном файле на предыдущих этапах необходимо надлежащее подтверждение концепции (PoC) для демонстрации реального воздействия и риска.

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

Этап анализа прошивки, для которого в основном используются следующие инструменты и утилиты: file, binwalk, strings, hexdump, может быть автоматизирован. Необходимо автоматически извлекать из бинарного файла прошивки архитектуру, под которую он скомпилирован, версию ядра и версию операционной системы. В случае ошибки извлечения этих данных, необходимо проверять энтропию файла [3]. Затем всю полученную информацию формировать в виде отчета и в виде выходного файла, необходимого для следующих этапов.

Для этапа извлечения файловой системы используются следующие инструменты и утилиты: binwalk, dd, unsquashfs, cpio, jefferson, ubidump.py, firmware-mod-kit [3]. Утилита binwalk (с ключем -e) позволяет автоматически извлекать некоторые файловые системы, но в ней не реализовано извлечение следующих файловых систем: squashfs, ubifs, romfs, jffs2, yaffs2, cramfs, initramfs. Для данных файловых систем необходимо реализовать автоматический расчет смещения, используя выходные данные с прошлого этапа, а затем их автоматическое извлечение. Выходными данными для следующих этапов является директория с распакованной файловой системой.

В ходе этапа анализа файловой системы необходимо автоматизировать поиск устаревших небезопасных сервисов, поиск в CVE-базах и Exploit-базах по версиям найденных сервисов, поиск жестко закодированных учетных данных (имена пользователей, пароли, ключи API, ключи SSH), функционал обновления прошивки, который может использоваться в качестве точки входа [2]. По окончании работы необходимо формировать выходные данные для следующих этапов и отчет с соответствующей информацией.

За счет введения автоматизации отдельных этапов процесса выявления уязвимостей во встроенном программном обеспечении IoT устройств, повышается скорость всего процесса в целом. Также при автоматизации исключается человеческий фактор, что снижает вероятность ошибки, тоесть повышает точность и полноту [5].

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

Расчет выявленных показателей эффективности процесса

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

(1)

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

Так как в работе этап анализа файловой системы и загрузчика автоматизируется частично (автоматизируется только анализ файловой системы), то можно представить в виде суммы времени затраченного на ручной анализ файловой системы и анализ загрузчика:

(2)

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

(3)

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

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

(4)

(5)

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

(6)

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

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

(7)

где a - количество верно найденных уязвимостей, c - количество не найденных уязвимостей.

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

(8)

где p - точность процесса, r - полнота процесса.

Чтобы рассчитать во сколько раз повысится точность и полнота процесса необходимо разделить значение F - меры ручного анализа на значение F-меры для анализа с автоматизацией отдельных этапов:

(9)

Заключение

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

Список литературы / References

1. Kolehmainen S. Security of firmware update mechanisms within SOHO routers / Kolehmainen S. // University of Jyvдskylд, Finland 2019, pp. 3-97.

2. Jeannotte B. Artorias: IoT Security Testing Framework / B. Jeannotte and A. Tekeoglu // 2019 26th International Conference on Telecommunications (ICT), Hanoi, Vietnam, 2019, pp. 233-237. doi: 10.1109/ICT.2019.8798846

3. Ma Y. SVM-based Instruction Set Identification for Grid Device Firmware / Y. Ma, L. Han, H. Ying, S. Yang, W. Zhao and Z. Shi // 2019 IEEE 8th Joint International Information Technology and Artificial Intelligence Conference (ITAIC), Chongqing, China, 2019, pp. 214-218. doi: 10.1109/ITAIC.2019.8785564

4. Prashast S. FirmFuzz: Automated IoT Firmware Introspection and Analysis. / Prashast Srivastava, Hui Peng, Jiahao Li, Hamed Okhravi, Howard Shrobe, and Mathias Payer // In Proceedings of the 2nd International ACM Workshop on Security and Privacy for the Internet-of-Things (IoT S&P'19). 2019, ACM, New York, NY, USA, 15-21. doi: https://doi.org/10.1145/3338507.3358616

5. Markov A. The experience of comparison of static security code analyzers / Markov A., Fadin A., Shvets V., Tsirlov V. // International Journal of Advanced Studies. 2015. V. 5. N 3. P. 55-63.

6. Барабанов А.В. Статистика выявления уязвимостей программного обеспечения при проведении сертификационных испытаний / Барабанов А.В., Марков А.С., Фадин А.А., Цирлов В.Л. // Вопросы кибербезопасности. № 2 (20). С. 2-8.

7. Zhang. IoT Security: Ongoing Challenges and Research Opportunities / Z. Zhang, M. C. Y. Cho, C. Wang, C. Hsu, C. Chen and S. Shieh // 2014 IEEE 7th International Conference on Service-Oriented Computing and Applications, Matsue, 2014, pp. 230-234. doi: 10.1109/SOCA.2014.58

8. Hossain M.M. Towards an Analysis of Security Issues, Challenges, and Open Problems in the Internet of Things / M. M. Hossain, M. Fotouhi and R. Hasan // 2015 IEEE World Congress on Services, New York, NY, 2015, pp. 21-28. doi: 10.1109/SERVICES.2015.12

9. Riahi. A Systemic Approach for IoT Security / A. Riahi, Y. Challal, E. Natalizio, Z. Chtourou and A. Bouabdallah // 2013 IEEE International Conference on Distributed Computing in Sensor Systems, Cambridge, MA, 2013, pp. 351-355. doi: 10.1109/DCOSS.2013.78

10. Zhou N.D. IoT as a Land of Opportunity for DDoS Hackers / N. Vlajic, D. Zhou // in Computer, vol. 51, no. 7, pp. 26-34, July 2018. doi: 10.1109/MC.2018.3011046

Список литературы на английском языке/References in English

1. Kolehmainen S. Security of firmware update mechanisms within SOHO routers / Kolehmainen S. // University of Jyvдskylд, Finland 2019, pp. 3-97.

2. Jeannotte B. Artorias: IoT Security Testing Framework / B. Jeannotte and A. Tekeoglu // 2019 26th International Conference on Telecommunications (ICT), Hanoi, Vietnam, 2019, pp. 233-237. doi: 10.1109/ICT.2019.8798846

3. Ma Y. SVM-based Instruction Set Identification for Grid Device Firmware / Y. Ma, L. Han, H. Ying, S. Yang, W. Zhao and Z. Shi // 2019 IEEE 8th Joint International Information Technology and Artificial Intelligence Conference (ITAIC), Chongqing, China, 2019, pp. 214-218. doi: 10.1109/ITAIC.2019.8785564

4. Prashast S. FirmFuzz: Automated IoT Firmware Introspection and Analysis. / Prashast Srivastava, Hui Peng, Jiahao Li, Hamed Okhravi, Howard Shrobe, and Mathias Payer // In Proceedings of the 2nd International ACM Workshop on Security and Privacy for the Internet-of-Things (IoT S&P'19). 2019, ACM, New York, NY, USA, 15-21. doi: https://doi.org/10.1145/3338507.3358616

5. Markov A. The experience of comparison of static security code analyzers / Markov A., Fadin A., Shvets V., Tsirlov V. // International Journal of Advanced Studies. 2015. V. 5. N 3. P. 55-63.

6. Barabanov A.V. Statistika vyyavleniya uyazvimostej programmnogo obespecheniya pri provedenii sertifikacionnyh ispytanij [Software vulnerability detection statistics for certification testing] / Barabanov A.V., Markov A.S., Fadin A.A., Cirlov V.L. // Voprosy kiberbezopasnosti. 2017. № 2 (20). P. 2-8. [in Russian]

7. Zhang. IoT Security: Ongoing Challenges and Research Opportunities / Z. Zhang, M. C. Y. Cho, C. Wang, C. Hsu, C. Chen and S. Shieh // 2014 IEEE 7th International Conference on Service-Oriented Computing and Applications, Matsue, 2014, pp. 230-234. doi: 10.1109/SOCA.2014.58

8. Hossain M.M. Towards an Analysis of Security Issues, Challenges, and Open Problems in the Internet of Things / M. M. Hossain, M. Fotouhi and R. Hasan // 2015 IEEE World Congress on Services, New York, NY, 2015, pp. 21-28. doi: 10.1109/SERVICES.2015.12

9. Riahi. A Systemic Approach for IoT Security / A. Riahi, Y. Challal, E. Natalizio, Z. Chtourou and A. Bouabdallah // 2013 IEEE International Conference on Distributed Computing in Sensor Systems, Cambridge, MA, 2013, pp. 351-355. doi: 10.1109/DCOSS.2013.78

10. Zhou N.D. IoT as a Land of Opportunity for DDoS Hackers / N. Vlajic, D. Zhou // in Computer, vol. 51, no. 7, pp. 26-34, July 2018. doi: 10.1109/MC.2018.3011046

Размещено на Allbest.ru

...

Подобные документы

  • Анализ потенциальных уязвимостей материала, размещенного на сайте. Анализ потенциальных уязвимостей материала с использованием методов шифрования и стеганографии. Использование водяного знака для защиты изображений. Разработка php-скрипта для защиты.

    курсовая работа [4,2 M], добавлен 11.05.2014

  • Принципы построения безопасных информационных систем. Организация ядра ОС МСВС. Начальное тестирование оборудования. Определение способов устранения уязвимостей. Политика безопасности сетевого брандмауэра. Запрещение доступа с некоторых адресов.

    дипломная работа [270,8 K], добавлен 19.04.2012

  • Концепция адаптивного управления безопасностью. Средства анализа защищенности сетевых протоколов и сервисов. Компоненты и архитектура IDS. Классификация систем обнаружения атак. Поиск уязвимостей в современных системах IDS. Методы реагирования на атаки.

    курсовая работа [488,5 K], добавлен 13.12.2011

  • Проникновение в BIOS ROM, аппаратная защита. Искажение содержимого Video ROM. Перекрытие адресных диапазонов, остановка вентиляторов. Превышение потребляемой мощности. Разрушение дисковых устройств. Манипуляции с программно-управляемыми напряжениями.

    реферат [31,4 K], добавлен 29.05.2012

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

    дипломная работа [807,8 K], добавлен 28.08.2014

  • Место компилятора в программном обеспечении. Принципы работы и автоматизация построения синтаксического анализатора. Дерево разбора и его преобразование в дерево операций. Назначение и этапы семантического анализа. Идентификация языков программирования.

    реферат [265,1 K], добавлен 20.12.2007

  • Система анализа защищенности Internet Scanner как средство решения одного из важных аспектов управления сетевой безопасностью - обнаружения уязвимостей. Ее принцип действия, достоинства и недостатки, особенности функционирования в информационных сетях.

    контрольная работа [1,1 M], добавлен 22.03.2012

  • Анализ рисков информационной безопасности. Идентификация уязвимостей активов. Оценка существующих и планируемых средств защиты. Комплекс проектируемых нормативно-правовых и организационно-административных средств обеспечения информационной безопасности.

    дипломная работа [1,1 M], добавлен 03.04.2013

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

    курсовая работа [303,4 K], добавлен 19.01.2016

  • Вредоносное использование фундаментальных уязвимостей DNS. Использование Fast flux для распределения нагрузки, защита веб-сайтов. Отравление кеша. Криптография, проверка подлинности адресной информации. Административная структура управления доменами.

    презентация [3,6 M], добавлен 23.04.2015

  • Анализ хозяйственной деятельности, технического и программного обеспечения ООО НПФ "Интек". Полная автоматизация настройки контроллеров, предназначенных для процесса отслеживания показателей в нефтяных установках. Оценка экономической эффективности ИС.

    дипломная работа [2,6 M], добавлен 18.06.2013

  • Анализ уязвимостей в многопоточных программах, написанных на языке С++. Создание программного обеспечения, выполняющего анализ многопоточных программ, написанных на С++, на предмет наличия в них ошибок синхронизации типа "гонки" и "заброшенные замки".

    курсовая работа [755,9 K], добавлен 20.09.2016

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

    курсовая работа [586,0 K], добавлен 23.06.2011

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

    курсовая работа [865,8 K], добавлен 02.02.2015

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

    дипломная работа [918,6 K], добавлен 20.06.2013

  • Бизнес-процессы, создание единого информационного пространства для отображения финансово-хозяйственной деятельности в программном продукте "1С: Комплексная автоматизация 8". Общая структура и прикладные механизмы программы. Интеграция с другими системами.

    курсовая работа [264,8 K], добавлен 09.01.2010

  • История ОС семейства Windows. Основные принципы администрирования ОС. Создание домашней группы. Присоединение к домашней группе или ее создание. Особенности ОС Windows 7. Анализ уязвимостей Microsoft Windows 7. Особенности версий ОС Windows 7.

    курсовая работа [2,2 M], добавлен 13.12.2010

  • Описание основных уязвимостей технологии передачи информации Wi-Fi: атаки, угрозы криптозащиты, анонимность. Принципы и методы обеспечения безопасности беспроводных сетей. Технологии целостности и конфиденциальности передаваемых через сеть данных.

    контрольная работа [539,3 K], добавлен 25.12.2014

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

    презентация [223,8 K], добавлен 11.04.2018

  • Значение применения криптоалгоритмов в современном программном обеспечении. Классификация методов и средств защиты информации, формальные, неформальные средства защиты. Традиционные симметричные криптосистемы. Принципы криптографической защиты информации.

    методичка [359,6 K], добавлен 30.08.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.