Proceedings of the Institute for System Programming of the RAS
RUS  ENG    JOURNALS   PEOPLE   ORGANISATIONS   CONFERENCES   SEMINARS   VIDEO LIBRARY   PACKAGE AMSBIB  
General information
Latest issue
Archive

Search papers
Search references

RSS
Latest issue
Current issues
Archive issues
What is RSS



Proceedings of ISP RAS:
Year:
Volume:
Issue:
Page:
Find






Personal entry:
Login:
Password:
Save password
Enter
Forgotten password?
Register


Proceedings of the Institute for System Programming of the RAS, 2022, Volume 34, Issue 6, Pages 51–66
DOI: https://doi.org/10.15514/ISPRAS-2022-34(6)-4
(Mi tisp738)
 

Irbis: static taint analyzer for vulnerabilities detection in C/C++

N. V. Shimchika, V. N. Ignatyevba, A. A. Belevancevba

a Ivannikov Institute for System Programming of the RAS
b Lomonosov Moscow State University
Abstract: Static taint analysis can be used to find various security weaknesses and vulnerabilities in programs by discovering dataflow paths from taint sources to taint sinks. In most cases the data is called ”tainted” if it was obtained from an untrusted source without proper sanitization. In this paper we present a static taint analyzer Irbis. It implements analysis based on IFDS (Interprocedural Finite Distributive Subset) dataflow problem, as well as various extensions aimed at improving accuracy and completeness of the analysis. It supports different definitions of tainted data, which enables it to find such weaknesses as out of buffer access, use of freed memory, hardcoded passwords, data leaks and discover dataflow paths between user-defined sources and sinks. All sources, sinks and propagators definitions are stored in JSON format and can be adjusted to meet the users’ needs. We compare analysis results on Juliet Test Suite for C/C++ with several other analyzers, such as Infer, Clang Static Analyzer and Svace. Irbis manages to demonstrate 100% coverage on taint-related subset of tests for implemented CWEs, while suppressing all the false positives using heuristics. We also show performance and false positive rate on real projects, with examples of real vulnerabilities, which can be detected by Irbis.
Keywords: static analysis, taint analysis, vulnerabilities detection
Funding agency Grant number
Russian Foundation for Basic Research 20-01-00581 А
Document Type: Article
Language: Russian
Citation: N. V. Shimchik, V. N. Ignatyev, A. A. Belevancev, “Irbis: static taint analyzer for vulnerabilities detection in C/C++”, Proceedings of ISP RAS, 34:6 (2022), 51–66
Citation in format AMSBIB
\Bibitem{ShiIgnBel22}
\by N.~V.~Shimchik, V.~N.~Ignatyev, A.~A.~Belevancev
\paper Irbis: static taint analyzer for vulnerabilities detection in C/C++
\jour Proceedings of ISP RAS
\yr 2022
\vol 34
\issue 6
\pages 51--66
\mathnet{http://mi.mathnet.ru/tisp738}
\crossref{https://doi.org/10.15514/ISPRAS-2022-34(6)-4}
Linking options:
  • https://www.mathnet.ru/eng/tisp738
  • https://www.mathnet.ru/eng/tisp/v34/i6/p51
  • Citing articles in Google Scholar: Russian citations, English citations
    Related articles in Google Scholar: Russian articles, English articles
    Proceedings of the Institute for System Programming of the RAS
    Statistics & downloads:
    Abstract page:14
    Full-text PDF :3
     
      Contact us:
     Terms of Use  Registration to the website  Logotypes © Steklov Mathematical Institute RAS, 2024