SVF를 활용한 스택 내에서만 사용되는 메모리 할당자 호출 지점 분석

Analysis of Memory Allocator Call sites Used Only Within The Stack Using SVF

  • 하선 (울산과학기술원 컴퓨터공학과) ;
  • 박찬영 (울산과학기술원 컴퓨터공학과) ;
  • 곽영준 (울산과학기술원 컴퓨터공학과) ;
  • 문현곤 (울산과학기술원 컴퓨터공학과)
  • Seon Ha (Dept. of Computer Science Engineering, UNIST) ;
  • Chanyoung Park (Dept. of Computer Science Engineering, UNIST) ;
  • Yeongjun Kwak (Dept. of Computer Science Engineering, UNIST) ;
  • Hyungon Moon (Dept. of Computer Science Engineering, UNIST)
  • 발행 : 2024.05.23

초록

해제 후 재사용 (Use-After-Free, UAF)는 오랜 시간 동안 소프트웨어 보안에서 중요한 문제로 인식되어 왔다. 이 문제를 해결하기 위해 다양한 완화 방법과 방어 연구가 활발히 진행되고 있다. 이러한 연구들은 대부분 기존 벤치마크 성능과 비교했을 때 낮은 성능을 보인다. 이는 메타 데이터와 코드 계측 정보가 증가하여 포인터를 많이 사용하는 벤치마크의 메모리 사용량이 증가하기 때문이다. 이 연구는 SVF를 활용하여 스택에서만 메모리 할당자 호출 지점을 분석한다. 추후 이 분석 정보를 여러 UAF 연구에 적용하여 런타임 오버헤드를 줄이는 것을 목표로 한다.

키워드

과제정보

본 연구는 정부(과학기술정보통신부)의 재원으로 한국연구재단의 지원을 받아 수행된 연구임(NRF-2022R1F1A1076100). 또한 이 논문은 2024년도 정부(과학기술정보통신부)의 재원으로 정보통신기획평가원의 지원을 받아 수행된 연구임(No. 2021-0-00724, 임베디드 시스템 악성코드 탐지·복원을 위한 RISC-V 기반 보안 CPU 아키텍처 핵심기술 개발)

참고문헌

  1. Roger S. Pressman "Software Engineering A Practltiners' Approach" 3rd Ed. McGraw Hill
  2. S. Nagarakatte, J. Zhao, M. M. K. Martin, and S. Zdancewic, "Cets: compiler enforced temporal safety for c." in ISMM, J. Vitek and D. Lea, Eds. ACM, 2010.
  3. H. Cho, J. Park, A. Oest, T. Bao, R. Wang, Y. Shoshi-taishvili, A. Doupe, and G.-J. Ahn, "Vik: practical mitigation of temporal memory safety violations through object id inspection,"in Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, 2022, pp. 271-284.
  4. B. Lee, C. Song, Y. Jang, T. Wang, T. Kim, L. Lu, and W. Lee, "Preventing use-after-free with dangling pointers nullification," in Proceedings of the 2015 Annual Network and Distributed System Security Symposium(NDSS), San Diego, CA, Feb. 2015.
  5. E. van der Kouwe, V. Nigade, and C. Giuffrida, "Dangsan: Scalable use-after-free detection," in Proceedings of the Twelfth European Conference on Computer Systems, ser. EuroSys '17. New York, NY, USA: Association for Computing Machinery, 2017, p. 405-419.
  6. Yulei Sui and Jingling Xue. 2016. SVF: interprocedural static value-flow analysis in LLVM. In Proceedings of the 25th International Conference on Compiler Construction (CC 2016). Association for Computing Machinery, New York, NY, USA, 265-266. https://doi.org/10.1145/2892208.2892235