Интеллектуальный метод мутации входных корпусов с обратной связью

Обложка

Цитировать

Полный текст

Аннотация

Фаззинг-тестирование представляется одним из эффективных способов повышения надежности программного обеспечения и входит в обязательный перечень мероприятий, проводимых на этапе квалификационного тестирования согласно национальному стандарту ГОСТ Р 56939-2016. Использование штатных мутаторов сводит реализацию данной задачи практически к полному перебору, что негативно сказывается на времени обнаружения некорректного поведения программы. В этой связи актуальным является вопрос рационализации подбора входных данных, при котором учитывается специфика корпуса данных, а также контекст, описывающий реакцию тестируемого программного обеспечения и позволяющий определить область и метод мутации на следующей итерации тестирования.Цель настоящей работы ‒ повышение эффективности фаззинг-тестирования за счет интеллектуализации штатного мутатора с использованием аппарата нейронных сетей, предполагающей учет синтаксических и семантических особенностей входного корпуса и использующей обратную связь от тестируемой программы.Методы исследования. При выполнении работы использовались методы анализа и синтеза, теории алгоритмов, дискретной и вычислительной математики, машинного обучения. Результаты. Рассмотрены преимущества и недостатки штатного модуля модификации входных корпусов – мутатора – фаззера AFL. Приведено обоснование выбора искусственной нейронной сети на базе архитектуры долгой краткосрочной памяти в качестве механизма, реализующего интеллектуальное управление процессом генерации и преобразования входных корпусов. Описан предлагаемый метод мутации, подразумевающий интеграцию в работу штатного мутатора механизма принятия решения об объеме и формате необходимых мутаций для увеличения покрытия кода, а также последующее уточнение входных данных шелл-кодом для проверки работоспособности фрагмента, вызвавшего нештатное поведение программного обеспечения. Представлена схема работы модуля мутации, включающего в себя компонент преобразования входных корпусов для генерации трасс исполнения программы и компонент, направленный на подтверждение концепта и повторный вызов нештатного поведения программного обеспечения с использованием сформированного шелл-кода.Научная новизна. В отличие от известных предлагаемый метод использует обратную связь, фиксирующую реакцию программного обеспечения, при формировании стратегии мутации данных, что определяет научную новизну полученных результатов. Значимость. Предложенное решение позволяет уменьшить время тестирования программы при сохранении уровня покрытия кода. Полученные в работе результаты являются универсальными и, в перспективе, могут быть использованы при фаззинг-тестировании методами белого, черного и серого ящика.

Об авторах

Н. Н. Самарин

Научно-исследовательский институт «Квант»

Email: samarin_nik@mail.ru
ORCID iD: 0009-0007-4911-8471
SPIN-код: 6697-8926

А. В. Тулинова

Научно-исследовательский институт «Квант»

Email: yarmak.av@ibks.spbstu.ru
ORCID iD: 0000-0002-7121-6031
SPIN-код: 2176-0939

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

  1. Muduli S.K., Roy S. Satisfiability modulo fuzzing: a synergistic combination of SMT solving and fuzzing // Proceedings of the ACM on Programming Languages. 2022. Vol. 6. Iss. OOPSLA2. PP. 1236−1263. doi: 10.1145/3563332. EDN:VUQLTQ
  2. Liu Z., Qian P., Yang J., Liu L., Xu X., He Q., et. al. Rethinking Smart Contract Fuzzing: Fuzzing with Invocation Ordering and I mportant Branch Revisiting // IEEE Transactions on Information Forensics and Security. 2023. Vol. 18. PP. 1237−1251. doi: 10.1109/tifs.2023.3237370. EDN:ZWKGJS
  3. Ерышов В.Г. Фаззинг тестирование. Классификация современных средств фаззинга // Сборник избранных статей по материалам научных конференций ГНИИ "Нацразвитие" Международные научные конференции (Санкт-Петербург, Россия, 26–31 августа 2021 года). СПб.: ГНИИ «Нацразвитие», 2021. С. 287−289. doi: 10.37539/AUG298.2021.94.77.007. EDN:QZILPI
  4. Situ L.-Y., Zuo Z.-Q., Guan L., Wang L.-Z., Li X.-D., Shi J., et. al. Vulnerable Region-Aware Greybox Fuzzing // Journal of Computer Science and Technology. 2021. Vol. 36. Iss. 5. PP. 1212−1228. doi: 10.1007/s11390-021-1196-0. EDN:PAPPKT
  5. Kim S.J., Shon T. Field classification-based novel fuzzing case generation for ICS protocols // The Journal of Supercomputing. 2018. Vol. 74. Iss. 9. PP. 4434−4450. doi: 10.1007/s11227-017-1980-3. EDN:TLEZVS
  6. Wei W., Li X., Zhang B., Li L., Damaševičius R., Scherer R. LSTM-SN: complex text classifying with LSTM fusion social network // The Journal of Supercomputing. 2023. Vol. 79. Iss. 9. PP. 9558−9583. doi: 10.1007/s11227-022-05034-w. EDN:TSXGJI
  7. Bayram F., Aupke P., Bestoun S.A., Kassler A., Theocharis A., Forsman J. DA-LSTM: A dynamic drift-adaptive learning framework for interval load forecasting with LSTM networks // Engineering Applications of Artificial Intelligence. 2023. Vol. 123. P. 106480. doi: 10.1016/j.engappai.2023.106480. EDN:WOXZSB
  8. Pierre A.A., Akim S.A., Semenyo A.K., Babiga B. Peak Electrical Energy Consumption Prediction by ARIMA, LSTM, GRU, ARIMA-LSTM and ARIMA-GRU Approaches // Energies. 2023. Vol. 16. Iss. 12. P. 4739. doi: 10.3390/en16124739. EDN:RKROHA
  9. Singh P., Kumar Ch., Kumar A. Next-LSTM: a novel LSTM-based image captioning technique // International Journal of System Assurance Engineering and Management. 2023. Vol. 14. Iss. 4. PP. 1492−1503. doi: 10.1007/s13198-023-01956-7. EDN:QUOVUU
  10. Wen X., Li W. Wen X. Time Series Prediction Based on LSTM-Attention-LSTM Model // IEEE Access. 2023. Vol. 11. PP. 48322−48331. doi: 10.1109/access.2023.3276628. EDN:ZAABGZ
  11. Ding T., Fu J., Shen R. Research on Multidimensional Mutation Strategy Method of Fuzzing Test // Proceedings of the 40th Chinese Control Conference (CCC, Shanghai, China 26–28 July 2021). Shanghai: IEEE, 2021. PP. 8639−8644. doi: 10.23919/CCC52363.2021.9550435. EDN:MJGBJG
  12. Manès V.J.M., Han H., Han C., Cha S.K., Egele M., Woo M. The Art, Science, and Engineering of Fuzzing: A Survey // IEEE Transactions on Software Engineering. 2021. Vol. 47. Iss. 11. PP. 2312−2331. doi: 10.1109/TSE.2019.2946563. EDN:ZDDKFN

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML


Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution 4.0 International License.

Согласие на обработку персональных данных с помощью сервиса «Яндекс.Метрика»

1. Я (далее – «Пользователь» или «Субъект персональных данных»), осуществляя использование сайта https://journals.rcsi.science/ (далее – «Сайт»), подтверждая свою полную дееспособность даю согласие на обработку персональных данных с использованием средств автоматизации Оператору - федеральному государственному бюджетному учреждению «Российский центр научной информации» (РЦНИ), далее – «Оператор», расположенному по адресу: 119991, г. Москва, Ленинский просп., д.32А, со следующими условиями.

2. Категории обрабатываемых данных: файлы «cookies» (куки-файлы). Файлы «cookie» – это небольшой текстовый файл, который веб-сервер может хранить в браузере Пользователя. Данные файлы веб-сервер загружает на устройство Пользователя при посещении им Сайта. При каждом следующем посещении Пользователем Сайта «cookie» файлы отправляются на Сайт Оператора. Данные файлы позволяют Сайту распознавать устройство Пользователя. Содержимое такого файла может как относиться, так и не относиться к персональным данным, в зависимости от того, содержит ли такой файл персональные данные или содержит обезличенные технические данные.

3. Цель обработки персональных данных: анализ пользовательской активности с помощью сервиса «Яндекс.Метрика».

4. Категории субъектов персональных данных: все Пользователи Сайта, которые дали согласие на обработку файлов «cookie».

5. Способы обработки: сбор, запись, систематизация, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передача (доступ, предоставление), блокирование, удаление, уничтожение персональных данных.

6. Срок обработки и хранения: до получения от Субъекта персональных данных требования о прекращении обработки/отзыва согласия.

7. Способ отзыва: заявление об отзыве в письменном виде путём его направления на адрес электронной почты Оператора: info@rcsi.science или путем письменного обращения по юридическому адресу: 119991, г. Москва, Ленинский просп., д.32А

8. Субъект персональных данных вправе запретить своему оборудованию прием этих данных или ограничить прием этих данных. При отказе от получения таких данных или при ограничении приема данных некоторые функции Сайта могут работать некорректно. Субъект персональных данных обязуется сам настроить свое оборудование таким способом, чтобы оно обеспечивало адекватный его желаниям режим работы и уровень защиты данных файлов «cookie», Оператор не предоставляет технологических и правовых консультаций на темы подобного характера.

9. Порядок уничтожения персональных данных при достижении цели их обработки или при наступлении иных законных оснований определяется Оператором в соответствии с законодательством Российской Федерации.

10. Я согласен/согласна квалифицировать в качестве своей простой электронной подписи под настоящим Согласием и под Политикой обработки персональных данных выполнение мною следующего действия на сайте: https://journals.rcsi.science/ нажатие мною на интерфейсе с текстом: «Сайт использует сервис «Яндекс.Метрика» (который использует файлы «cookie») на элемент с текстом «Принять и продолжить».