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, 2021, Volume 33, Issue 6, Pages 51–66
DOI: https://doi.org/10.15514/ISPRAS-2021-33(6)-4
(Mi tisp645)
 

Using the identification of threads of execution when solving problems of full-system analysis of binary code

I. A. Vasilieva, P. M. Dovgalyukb, M. A. Klimushenkovaa

a Ivannikov Institute for System Programming of the RAS
b Yaroslav-the-Wise Novgorod State University
Abstract: Dynamic binary analysis, that is often used for full-system analysis, provides the analyst with a sequence of executed instructions and the content of RAM and system registers. This data is hard to process, as it is low-level and demands a deep understanding of studied system and a high-skileed professional to perform the analysis. To simplify the analysis process, it is necessary to bring the input data to a more user-friendly form, i.e. provide high-level information about the system. Such high-level information would be the program execution flow. To recover the flow of execution of a program, it is important to have an understanding of the procedures being called in it. You can get such a representation using the function call stack for a specific thread. Building a call stack without information about the running threads is impossible, since each thread is uniquely associated with one stack, and vice versa. In addition, the very presence of information about flows increases the level of knowledge about the system, allows you to more subtly profile the object of research and conduct a highly focused analysis, applying the principles of selective instrumentation. The virtual machine only provides low-level data, thus, there is a need to develop a method for automatic identification of threads in the system under study, based on the available data. In this paper, the existing approaches to the implementation of obtaining high-level information in full-system analysis are considered and a method is proposed for recovering thread info during full-system emulation with a low degree of OS-dependency. Examples of practical use of this method in the implementation of analysis tools are also given, namely: restoring the call stack, detecting suspicious return operations, and detecting calls to freed memory in the stack. The testing presented in the article shows that the slowdown imposed by the described algorithms allows working with the system under study, and comparison with the reference data confirms the correctness of the results obtained by the algorithms.
Keywords: full-system instrumentation, call stack, vulnerabilities detection.
Document Type: Article
Language: Russian
Citation: I. A. Vasiliev, P. M. Dovgalyuk, M. A. Klimushenkova, “Using the identification of threads of execution when solving problems of full-system analysis of binary code”, Proceedings of ISP RAS, 33:6 (2021), 51–66
Citation in format AMSBIB
\Bibitem{VasDovKli21}
\by I.~A.~Vasiliev, P.~M.~Dovgalyuk, M.~A.~Klimushenkova
\paper Using the identification of threads of execution when solving problems of full-system analysis of binary code
\jour Proceedings of ISP RAS
\yr 2021
\vol 33
\issue 6
\pages 51--66
\mathnet{http://mi.mathnet.ru/tisp645}
\crossref{https://doi.org/10.15514/ISPRAS-2021-33(6)-4}
Linking options:
  • https://www.mathnet.ru/eng/tisp645
  • https://www.mathnet.ru/eng/tisp/v33/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:6
    Full-text PDF :5
     
      Contact us:
     Terms of Use  Registration to the website  Logotypes © Steklov Mathematical Institute RAS, 2024