ABSTRACT
Buffer overflow vulnerabilities have been the most common form of software vulnerabilities. It is very difficult and time consuming to detect possible types of vulnerabilities from a program. This paper proposes an analysis model of buffer overflow vulnerability based on finite state machine (FSM). The model conducts static analysis on source code. And then it analyzes the formation of buffer overflow vulnerabilities and process of data overflow. For the two types of buffer overflow vulnerabilities caused by function call errors and loop copy errors, the corresponding vulnerability analysis model is designed. The vulnerability analysis model proposed in this paper is verified by two scenarios. The experimental results show that the model can detect buffer overflow vulnerability automatically and effectively.
- Peng J, Guo M, Quan J. Software Vulnerability and Application Security Risk. Information Resources Management Journal (IRMJ), 2019, 32(1): 48--57.Google ScholarCross Ref
- Li J, Chen J, Huang M, et al. An integration testing framework and evaluation metric for vulnerability mining methods. China Communications, 2018, 15(2): 190--208.Google ScholarCross Ref
- Medeiros I, Neves N, Correia M. Detecting and removing web application vulnerabilities with static analysis and data mining. IEEE Transactions on Reliability, 2016, 65(1): 54--69.Google ScholarCross Ref
- Markov A S, Fadin A A, Tsirlov V L. Multilevel metamodel for heuristic search of vulnerabilities in the software source code. International Journal of Control Theory and Applications, 2016, 9(30): 313--320.Google Scholar
- Smith J, Johnson B, Murphy-Hill E, et al. Questions developers ask while diagnosing potential security vulnerabilities with static analysis. Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering. ACM, 2015: 248--259. Google ScholarDigital Library
- Zhu J, Chu B, Lipford H, et al. Mitigating access control vulnerabilities through interactive static analysis. Proceedings of the 20th ACM Symposium on Access Control Models and Technologies. ACM, 2015: 199--209. Google ScholarDigital Library
- Shoshitaishvili Y, Wang R, Salls C, et al. Sok:(state of) the art of war: Offensive techniques in binary analysis. 2016 IEEE Symposium on Security and Privacy (SP). IEEE, 2016: 138--157.Google Scholar
- Barabanov A V, Markov A S, Tsirlov V L. Methodological Framework for Analysis and Synthesis of a Set of Secure Software Development Controls. Journal of Theoretical & Applied Information Technology, 2016, 88(1).Google Scholar
- Li H, Kwon H, Kwon J, et al. CLORIFI: software vulnerability discovery using code clone verification. Concurrency and Computation: Practice and Experience, 2016, 28(6): 1900--1917. Google ScholarDigital Library
- Cai J, Zou P, Ma J, et al. Sworddta: A dynamic taint analysis tool for software vulnerability detection. Wuhan University Journal of Natural Sciences, 2016, 21(1): 10--20.Google ScholarCross Ref
- Holland B, Santhanam G R, Awadhutkar P, et al. Statically-informed dynamic analysis tools to detect algorithmic complexity vulnerabilities. Source Code Analysis and Manipulation (SCAM), 2016 IEEE 16th International Working Conference on. IEEE, 2016: 79--84.Google Scholar
- Graziano M, Canali D, Bilge L, et al. Needles in a haystack: Mining information from public dynamic analysis sandboxes for malware intelligence. 24th {USENIX} Security Symposium ({USENIX} Security 15). 2015: 1057--1072. Google ScholarDigital Library
- Ghaffarian S M, Shahriari H R. Software vulnerability analysis and discovery using machine-learning and data-mining techniques: a survey. ACM Computing Surveys (CSUR), 2017, 50(4): 56. Google ScholarDigital Library
- Sadeghi A, Bagheri H, Garcia J, et al. A taxonomy and qualitative comparison of program analysis techniques for security assessment of android software. IEEE Transactions on Software Engineering, 2017, 43(6): 492--530.Google ScholarDigital Library
- Mechtaev S, Yi J, Roychoudhury A. Angelix: Scalable multiline program patch synthesis via symbolic analysis. Proceedings of the 38th international conference on software engineering. ACM, 2016: 691--701. Google ScholarDigital Library
- Liu L, Xu J, Guo C, et al. Exposing SQL Injection Vulnerability through Penetration Test based on Finite State Machine. Computer and Communications (ICCC), 2016 2nd IEEE International Conference on. IEEE, 2016: 1171--1175.Google Scholar
- Chen Q, Zhao X, Yin H, et al. Structured Algorithm for Software Behavior Model based on Finite State Automaton. DEStech Transactions on Computer Science and Engineering, 2017 (csae).Google Scholar
- Shar L K, Briand L C, Tan H B K. Web application vulnerability prediction using hybrid program analysis and machine learning. IEEE Transactions on Dependable and Secure Computing, 2015, 12(6): 688--707.Google ScholarDigital Library
- Liu B, Shi L, Cai Z, et al. Software vulnerability discovery techniques: A survey. Multimedia Information Networking and Security (MINES), 2012 Fourth International Conference on. IEEE, 2012: 152--156. Google ScholarDigital Library
- Li Y, Ji S, Lv C, et al. V-Fuzz: Vulnerability-Oriented Evolutionary Fuzzing. arXiv preprint arXiv:1901.01142, 2019.Google Scholar
- Arzt S, Rasthofer S, Hahn R, et al. Using targeted symbolic execution for reducing false-positives in dataflow analysis. Proceedings of the 4th ACM SIGPLAN International Workshop on State of the Art in Program Analysis. ACM, 2015: 1--6. Google ScholarDigital Library
- Reps T, Schwoon S, Jha S, et al. Weighted pushdown systems and their application to interprocedural dataflow analysis. Science of Computer Programming, 2005, 58(1-2): 206--263. Google ScholarDigital Library
Index Terms
- An Analysis Model of Buffer Overflow Vulnerability Based on FSM
Recommendations
Realization of Buffer Overflow
IFITA '10: Proceedings of the 2010 International Forum on Information Technology and Applications - Volume 01In recent decades, the buffer overflow has been a source of many serious security issues. In recent years, by the CERT/CC (Computer Emergency Response Term/Coodination Center) issued advice on the buffer overflow vulnerability for more than accounted ...
Microarchitectural Protection Against Stack-Based Buffer Overflow Attacks
Although researchers have proposed several software approaches to preventing buffer overflow attacks, adversaries still extensively exploit this vulnerability. A microarchitecture-based, software-transparent mechanism offers protection against stack-...
Buffer overflow and format string overflow vulnerabilities
Special issue: Security softwareBuffer overflow vulnerabilities are among the most widespread of security problems. Numerous incidents of buffer overflow attacks have been reported and many solutions have been proposed, but a solution that is both complete and highly practical is yet ...
Comments