skip to main content
10.1145/3630138.3630437acmotherconferencesArticle/Chapter ViewAbstractPublication PagespccntConference Proceedingsconference-collections
research-article

A variable value range analysis method based on path propagation

Published:17 January 2024Publication History

ABSTRACT

In modern research on program analysis and static vulnerability detection techniques, variables have consistently remained a critical focal point, especially concerning hazardous variables associated with crucial program operations. Analyzing the value ranges of variables in a program not only enhances the accuracy of program analysis but also provides further support for static vulnerability detection. This paper proposes a variable value range analysis method based on path analysis. By combining control flow graph analysis, data flow analysis, and abstract interpretation, it comprehensively analyzes the process from variable definition to its usage, iteratively capturing value ranges during the process to obtain more precise value range results. Experimental results demonstrate that the method presented in this paper accurately determines variable value ranges and is compatible with the analysis of various types of variables. Moreover, the paper's method successfully validates multiple security vulnerabilities, thereby substantiating its practical application value.

References

  1. Alefeld G and Mayer G. 2000. Interval analysis: theory and applications. J. Comput. Appl. Math. 121, 12, 421–464.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Chapoutot A and Martel M. 2009. Abstract simulation: A static analysis of simulink models. In: International Conference on Embedded Software and Systems, ICESS 2009, pp. 83–92.Google ScholarGoogle Scholar
  3. Xu Z and Zhang J. 2006. A test data generation tool for unit testing of C programs. QSIC, pp. 107-116.Google ScholarGoogle Scholar
  4. Xu Z, Zhang J, Xu Z and Wang J. 2014. Canalyze: A static bug-finding tool for C programs. ISSTA, pp. 425-428.Google ScholarGoogle Scholar
  5. Ma C, Chen L, Yi X, Fan G and Wang J. 2022. NuMFUZZ: A Floating-Point Format Aware Fuzzer for Numerical Programs. 2022 29th Asia-Pacific Software Engineering Conference (APSEC), pp. 338-347.Google ScholarGoogle Scholar
  6. Bagnara R, Bagnara A, Biselli B, Chiari M and Gori R. 2022. Correct approximation of IEEE 754 floating-point arithmetic for program verification. Constraints 27, 1-2, 29.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Barr E T, Vo T, Le V and Su Z. 2013. Automatic detection of floating-point exceptions. In The 40th annual ACM SIGPLAN-SIGACT symposium on principles of programming languages, POPL ‘13, Rome, Italy-January 23-25, 2013, pp. 549–560.Google ScholarGoogle Scholar
  8. Brain M, D'Silva V, Griggio A, Haller L and Kroening D. 2014. Deciding floating-point logic with abstract conflict driven clause learning. Formal Methods in System Design 45, 2, 213–245.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Dernehl C, Hansen N and Kowalewski S. 2016. Combining abstract interpretation with symbolic execution for a static value range analysis of block diagrams. Software Engineering and Formal Methods: 14th International Conference, SEFM 2016, Held as Part of STAF 2016, Vienna, Austria, July 4-8, 2016, Proceedings 14. Springer International Publishing.Google ScholarGoogle Scholar
  10. Chen C, 2021. A range adjusted measure of super-efficiency in integer-valued data envelopment analysis with undesirable outputs. Journal of Systems Science and Information 9.4, pp. 378-398.Google ScholarGoogle ScholarCross RefCross Ref
  11. Schubert P D, Hermann B and Bodden E. 2019. Phasar: An inter-procedural static analysis framework for c/c++. International Conference on Tools and Algorithms for the Construction and Analysis of Systems. Cham: Springer International Publishing.Google ScholarGoogle Scholar
  12. Gershuni E, 2019. Simple and precise static analysis of untrusted Linux kernel extensions. Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Filus K, 2021. Efficient feature selection for static analysis vulnerability prediction. Sensors 21, 4, 1133.Google ScholarGoogle ScholarCross RefCross Ref
  14. Lu K, Pakki A and Wu Q. 2019. Detecting Missing-Check Bugs via Semantic-and Context-Aware Criticalness and Constraints Inferences. In 28th USENIX Security Symposium (USENIX Security 19), pp. 1769-1786.Google ScholarGoogle Scholar

Index Terms

  1. A variable value range analysis method based on path propagation
        Index terms have been assigned to the content through auto-classification.

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Other conferences
          PCCNT '23: Proceedings of the 2023 International Conference on Power, Communication, Computing and Networking Technologies
          September 2023
          552 pages
          ISBN:9781450399951
          DOI:10.1145/3630138

          Copyright © 2023 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 17 January 2024

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed limited
        • Article Metrics

          • Downloads (Last 12 months)3
          • Downloads (Last 6 weeks)1

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format