$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

[국내논문] 자연어 처리 모델을 활용한 퍼징 시드 생성 기법
A Fuzzing Seed Generation Technique Using Natural Language Processing Model 원문보기

情報保護學會論文誌 = Journal of the Korea Institute of Information Security and Cryptology, v.32 no.2, 2022년, pp.417 - 437  

김동영 (고려대학교 정보보호대학원) ,  전상훈 (고려대학교 정보보호대학원) ,  류민수 (고려대학교 정보보호대학원) ,  김휘강 (고려대학교 정보보호대학원)

초록
AI-Helper 아이콘AI-Helper

Fuzzing에서 seed corpus의 품질은 취약점을 보다 빠르게 찾기 위해서 중요한 요소 중 하나라고 할 수 있다. 이에 dynamic taint analysis와 symbolic execution 기법 등을 활용하여 효율적인 seed corpus를 생성하는 연구들이 진행되어왔으나, 높은 전문 지식이 요구되고, 낮은 coverage로 인해 광범위한 활용에 제약이 있었다. 이에 본 논문에서는 자연어 처리 모델인 Sequence-to-Sequence 모델을 기반으로 seed corpus를 생성하는 DDRFuzz 시스템을 제안한다. 본 논문에서 제안하는 시스템은 멀티미디어 파일을 입력값으로 하는 5개의 오픈소스 프로젝트를 대상으로 관련 연구들과 비교하여 효과를 검증하였다. 실험 결과, DDRFuzz가 coverage와 crash count 측면에서 가장 뛰어난 성능을 나타냄을 확인할 수 있었고, 또한 신규 취약점을 포함하여 총 3개의 취약점을 탐지하였다.

Abstract AI-Helper 아이콘AI-Helper

The quality of the fuzzing seed file is one of the important factors to discover vulnerabilities faster. Although the prior seed generation paradigm, using dynamic taint analysis and symbolic execution techniques, enhanced fuzzing efficiency, the yare not extensively applied owing to their high comp...

주제어

표/그림 (19)

AI 본문요약
AI-Helper 아이콘 AI-Helper

문제 정의

  • 이에 dynamic taint analysis와 symbolic execution 기법 등을 적용하여 효율적인 seed corpus를 생성하는 연구들이 진행되었으나 기법의 복잡도가 높고 전문 지식이 필요함으로 인해 기존 연구들이 광범위하게 적용되지 못했다. 본 논문에서는 이러한 문제를 해결하기 위해 기존 fuzzer와 다양한 seed corpus 생성 기술을 분석했다. 또한 이들의 한계와 문제점을 보완하여 seq2seq model을 기반으로 seed corpus를 생성하는 시스템인 DDRFuzz를 제안하였고, 이는 우리가 아는 한 mutation-based fuzzing에서 seed augmentation을 위해 seq2seq model이 적용된 첫 번째 연구라 할 수 있다.
  • 본 실험에서는 DDRFuzz에서 사용하는 3가지 model (Simple-seq2seq, seq2seq-attention, 그리고 transformer)에 대한 성능 비교를 통해 어떤 model이 seed generation에 가장 효과적인model인지 평가하는 것을 목표로 한다. 총 4개의 확장자에 대해서 3개의 model을 통해 생성된 seed corpus를 활용하여 프로젝트 별로 6시간 동안 fuzzing을 수행하여, 새로운 path 개수와 crash 개수를 비교한다.
  • 본 연구 valuable seed corpus 생성을 위해 seq2seq 기반으로 설계된 fuzzing 시스템인DDRFuzz를 제안하였으며, 우리가 아는 한 mutation based fuzzing에서 seq2seq model을 활용하는 최초의 연구이다.
  • 본 연구에서는 더 많은 crash와 path를 발견하기 위해 기존보다 더 효율적인 seed corpus를 제공하는데 중점을 둔다. 지난 몇 년 동안 dynamic taint analysis, symbolic execution과 같은 기법을 fuzzing에 활용하여 더 나은 seed corpus를생성하기 위한 여러 연구가 수행되어 왔다.

가설 설정

  • 따라서 본 연구는 interesting behavior를 발생시키는 입력 값을 mutation 전/후 data 형태로학습 데이터를 수집하였고, 이를 통해 mutation 과정의 knowledge를 학습할 수 있다. 이러한 seq2seq model을 학습하면 interesting behavior가 발생할 가능성이 높은 valuable seed corpus를 생성할 수 있을 것이라고 가정하고 연구를 진행했고, 위와 같은 가정을 증명하기 위해 실험을 통해 SOTA 연구보다 crash 및 coverage 측면에서 우수한 성능을 보이는 것을 확인하였다.
본문요약 정보가 도움이 되었나요?

참고문헌 (25)

  1. NVD, "CVE." https://cve.mitre.org/cve/, Accessed: Nov 2020. 

  2. A. Rebert, S. K. Cha, T. Avgerinos, J. Foote, D. Warren, G. Grieco, and D. Brumley, "Optimizing seed selection for fuzzing", Proceedings of the 23rd USENIX Security Symposium, pp. 861-875, Aug. 2014. 

  3. C. Lyu, S. Ji, Y. Li, J. Zhou, J. Chen, and J. Chen, "Smartseed: Smart seed generation for efficient fuzzing", arXiv, preprint arXiv:1807.02606, Jun. 2019. 

  4. V. J. M. Manes, H. Han, C. Han, S.K. Cha, M. Eglele, E. J. Schwartz, and M. Woo, "The art, science, and engineering of fuzzing: A survey", IEEE Transaction on Software Engineering, pp. 2312-2331, Nov. 2021. 

  5. K. Fang and G. Yan, "Emulation-instrumented fuzz testing of 4g/lte android mobile devices guided by reinforcement learning", European Symposium on Research in Computer Security, pp. 20-40, Sep. 2018. 

  6. K. Bottinger, P. Godefroid, and R. Singh, "Deep reinforcement fuzzing", IEEE Security and Privacy Workshops(SPW), pp. 116-122, Oct. 2018. 

  7. S. Karamcheti, G. Mann, and D. Rosenberg, "Adaptive grey-boxfuzz-testing with thompson sampling", Proceedings of the 11th ACM Workshop on Artificial Intelligence and Security, pp. 37-47, Oct. 2018. 

  8. M. Rajpal, W. Blum, and R. Singh, "Not all bytes are equal: Neural bytesieve for fuzzing", arXiv, preprint arXiv:1711.04596, Nov. 2017. 

  9. W. Drozd and M. D. Wagner, "Fuzzergym: A competitive framework for fuzzing and learning", arXiv, preprint arXiv:1807.07490, Jul. 2018. 

  10. libFuzzer, "https://llvm.org/docs/LibFuzzer.html" accessed: Nov. 2020. 

  11. X. Liu, R. Prajapati, X. Li, and D. Wu, "Reinforcement compiler fuzzing", arXiv, preprint arXiv:1801.04589, Jan. 2018. 

  12. Z. Zhang, B. Cui, and C. Chen, "Reinforcement learning-based fuzzing technology", International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, pp. 244-253, Jun. 2020. 

  13. Y. Wang, Z. Wu, Q. Wei, and Q. Wang, "Neufuzz: Efficient fuzzing with deep neural network," IEEE Access, vol. 7, pp. 36340-36352, Mar. 2019. 

  14. J. Wang, B. Chen, L. Wei, and Y. Liu, "Skyfire: Data-driven seed generation for fuzzing", 2017 IEEE Symposium on Security and Privacy (SP), pp. 579-594, Jun. 2017. 

  15. P. Godefroid, H. Peleg, and R. Singh, "Learn&fuzz: Machine learning for input fuzzing", Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, pp. 50-59, Oct. 2017. 

  16. L. Cheng, Y. Zhang, Y. Zhang, C. Wu, Z. Li, Y. Fu, and H. Li, "Optimizing seed inputs in fuzzing with machine learning", 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), pp. 244-245, Aug. 2019. 

  17. L. Joffe, "Machine learning augmented fuzzing", 2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW), pp. 178-183, Oct. 2018. 

  18. R. Fan and Y. Chang, "Machine learning for black-box fuzzing of network protocols", International Conference on Information and Communications Security, pp. 621-632, Apr. 2018. 

  19. Z. Hu, J. Shi, Y. Huang, J. Xiong, and X. Bu, "Ganfuzz: a gan-based industrial network protocol fuzzing framework", Proceedings of the 15th ACM International Conference on Computing Frontiers, pp. 138-145, May. 2018. 

  20. Z. Li, H. Zhao, J. Shi, Y. Huang, and J. Xiong, "An intelligent fuzzing data generation method based on deep adversarial learning," IEEE Access, vol. 7, pp. 49327-49340, Apr. 2019. 

  21. N. Nichols, M. Raugas, R. Jasper, and N. Hilliard, "Faster fuzzing: Reinitialization with deep neural models", arXiv, preprint arXiv:1711.02807, Nov. 2017. 

  22. AFLi, "American Fuzzy Loop." https://lcamtuf.coredump.cx/afl/, Accessed: Nov 2020. 

  23. M. Bohme, V.-T. Pham, and A. Roychoudhury, "Coverage-based greybox fuzzing as markov chain", Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pp. 1032-1043, Oct. 2016. 

  24. S. Rawat, V. Jain, A. Kumar, L. Cojocar, C. Giuffrida, and H. Bos, "Vuzzer: Application-aware evolutionary fuzzing", NDSS, vol. 17, pp. 1-14, Feb. 2017. 

  25. H. Peng, Y. Shoshitaishvili, and M. Payer, "T-fuzz: fuzzing by program transformation", 2018 IEEE Symposium on Security and Privacy(SP), pp. 697-710, May. 2018. 

저자의 다른 논문 :

관련 콘텐츠

오픈액세스(OA) 유형

FREE

Free Access. 출판사/학술단체 등이 허락한 무료 공개 사이트를 통해 자유로운 이용이 가능한 논문

이 논문과 함께 이용한 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로