<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">mais</journal-id><journal-title-group><journal-title xml:lang="ru">Моделирование и анализ информационных систем</journal-title><trans-title-group xml:lang="en"><trans-title>Modeling and Analysis of Information Systems</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1818-1015</issn><issn pub-type="epub">2313-5417</issn><publisher><publisher-name>Yaroslavl State University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.18255/1818-1015-2019-3-317-331</article-id><article-id custom-type="elpub" pub-id-type="custom">mais-1226</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Software</subject></subj-group></article-categories><title-group><article-title>Об автоматическом анализе практической стойкости обфусцирующих преобразований</article-title><trans-title-group xml:lang="en"><trans-title>On the Automatic Analysis of the Practical Resistance of Obfusting Transformations</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-8919-8310</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Борисов</surname><given-names>Петр Дмитриевич</given-names></name><name name-style="western" xml:lang="en"><surname>Borisov</surname><given-names>Petr D.</given-names></name></name-alternatives><bio xml:lang="ru"><p>аспирант</p></bio><bio xml:lang="en"><p>graduate student</p></bio><email xlink:type="simple">borisovpetr@mail.ru</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-1491-524X</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Косолапов</surname><given-names>Юрий Владимирович</given-names></name><name name-style="western" xml:lang="en"><surname>Kosolapov</surname><given-names>Yu. V.</given-names></name></name-alternatives><bio xml:lang="ru"><p>канд. техн. наук</p></bio><bio xml:lang="en"><p>PhD</p></bio><email xlink:type="simple">itaim@mail.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Южный Федеральный Университет</institution><country>Россия</country></aff><aff xml:lang="en"><institution>Southern Federal University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2019</year></pub-date><pub-date pub-type="epub"><day>28</day><month>09</month><year>2019</year></pub-date><volume>26</volume><issue>3</issue><fpage>317</fpage><lpage>331</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Борисов П.Д., Косолапов Ю.В., 2019</copyright-statement><copyright-year>2019</copyright-year><copyright-holder xml:lang="ru">Борисов П.Д., Косолапов Ю.В.</copyright-holder><copyright-holder xml:lang="en">Borisov P.D., Kosolapov Y.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.mais-journal.ru/jour/article/view/1226">https://www.mais-journal.ru/jour/article/view/1226</self-uri><abstract><p>Разрабатывается способ оценки практической стойкости обфусцирующих преобразований программ, основанный на вычислении показателя похожести для исходной, обфусцированной и деобфусцированной программ. Предлагаются кандидаты для показателей похожести, в основе вычисления которых лежат такие характеристики программ, как граф потока управления, время символьного выполнения и степень покрытия при символьном выполнении. Граф потока управления рассматривается как основа для построения других кандидатов для показателей похожести программ. На его основе предлагается новый кандидат для показателя похожести, при вычислении которого находится расстояние Хэмминга между матрицами смежности графов потока управления сравниваемых программ. Строится схема оценки (анализа) стойкости обфусцирующих преобразований, в соответствии с которой для исходной, обфусцированной и деобфусцированной программ вычисляются или находятся характеристики этих программ, которые сравниваются в соответствии с выбранной моделью сравнения. Разработанная схема, в частности, подходит для сравнения программ на основе показателей похожести. В работе разрабатывается и реализуется один из ключевых блоков построенной схемы – блок получения характеристик программ, скомпилированных для архитектуры x86/x86_64. Разработанный блок позволяет находить граф потока управления, время символьного выполнения и степень покрытия при символьном выполнении. Приводятся некоторые результаты работы построенного блока.</p><p> </p></abstract><trans-abstract xml:lang="en"><p>A method is developed for assessing the practical persistence of obfuscating transformations of programs based on the calculation of the similarity index for the original, obfuscated and deobfuscated programs. Candidates are proposed for similarity indices, which are based on such program characteristics as the control flow graph, symbolic execution time and degree of coverage for symbolic execution. The control flow graph is considered as the basis for building other candidates for program similarity indicators. On its basis, a new candidate is proposed for the similarity index, which, when calculated, finds the Hamming distance between the adjacency matrices of control flow graphs of compared programs. A scheme for estimating (analyzing) the persistence of obfuscating transformations is constructed, according to which for the original, obfuscated and deobfuscated programs, the characteristics of these programs are calculated and compared in accordance with the chosen comparison model. The developed scheme, in particular, is suitable for comparing programs based on similarity indices. This paper develops and implements one of the key units of the constructed scheme - a block for obtaining program characteristics compiled for the x86/x86 64 architecture. The developed unit allow to find the control flow graph, the time for symbolic execution and the degree of coverage for symbolic execution. Some results of work of the constructed block are given.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>обфускация кода</kwd><kwd>стойкость</kwd><kwd>символьное исполнение</kwd></kwd-group><kwd-group xml:lang="en"><kwd>code obfuscation</kwd><kwd>resistance</kwd><kwd>symbolic execution</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Siegmund J., “Program Comprehension: Past, Present, and Future”, IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), 5 (2016), 13–20.</mixed-citation><mixed-citation xml:lang="en">Siegmund J., “Program Comprehension: Past, Present, and Future”, IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), 5 (2016), 13–20.</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Avidan E., Feitelson D. G., “From Obfuscation to Comprehension”, Proceedings of the 2015 IEEE 23rd International Conference on Program Comprehension, 2015, 178–181.</mixed-citation><mixed-citation xml:lang="en">Avidan E., Feitelson D. G., “From Obfuscation to Comprehension”, Proceedings of the 2015 IEEE 23rd International Conference on Program Comprehension, 2015, 178–181.</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Поздеев А. Г., Кривопалов В. Н., Ромашкин Е. В., Радченко Е. Д., “Математические и программные средства обфускации программ”, ПДМ, 1 (2009), 52–53;</mixed-citation><mixed-citation xml:lang="en">Pozdeev A. G., Krivopalov V. N., Romashkin E. V., Radchenko E. D., “Matematicheskie i programmnye sredstva obfuskacii programm”, PDM, 1 (2009), 52–53, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Чернов А. В., “Анализ запутывающих преобразований программ”, 2002, http://www.citforum.ru/security/articles/analysis/;</mixed-citation><mixed-citation xml:lang="en">Chernov A. V., “Analiz zaputyvayushchih preobrazovanij programm”, 2002, http://www.citforum.ru/ security/articles/analysis/, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Kuzurin N., Shokurov A., Varnovsky N., Zakharov V., “On the Concept of Software Obfuscation in Computer Security”, International Conference on Information Security. – Springer, Berlin, Heidelberg, 2007, 281–298.</mixed-citation><mixed-citation xml:lang="en">Kuzurin N., Shokurov A., Varnovsky N., Zakharov V., “On the Concept of Software Obfuscation in Computer Security”, International Conference on Information Security. – Springer, Berlin, Heidelberg, 2007, 281–298.</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Diﬃe W., Hellman M., “New directions in cryptography”, IEEE Transactions on Information Theory, 22:6 (1976), 644–654.</mixed-citation><mixed-citation xml:lang="en">Diﬃe W., Hellman M., “New directions in cryptography”, IEEE Transactions on Information Theory, 22:6 (1976), 644–654.</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Collberg C. S., Thomborson C., “Watermarking, Tamper-Prooﬁng, and Obfuscation Tools for Software Protection”, IEEE transactions on software engineering, 28:8 (2002), 735– 746.</mixed-citation><mixed-citation xml:lang="en">Collberg C. S., Thomborson C., “Watermarking, Tamper-Prooﬁng, and Obfuscation Tools for Software Protection”, IEEE transactions on software engineering, 28:8 (2002), 735– 746.</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Lee B., Kim Y., Kim J., “binOb+: a Framework for Potent and Stealthy Binary Obfuscation”, Proceedings of the 5th ACM Symposium on Information, Computer and Communications Security, ASIACCS 2010, 2010, 271–281.</mixed-citation><mixed-citation xml:lang="en">Lee B., Kim Y., Kim J., “binOb+: a Framework for Potent and Stealthy Binary Obfuscation”, Proceedings of the 5th ACM Symposium on Information, Computer and Communications Security, ASIACCS 2010, 2010, 271–281.</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Borello J.M., Me L., “Code Obfuscation Techniques for Metamorphic Viruses”, Journal in Computer Virology, 4:3 (2008), 211–220.</mixed-citation><mixed-citation xml:lang="en">Borello J.M., Me L., “Code Obfuscation Techniques for Metamorphic Viruses”, Journal in Computer Virology, 4:3 (2008), 211–220.</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Moser A., Kruegel C., Kirda E., “Limits of Static Analysis for Malware Detection”, Proceedings of Twenty-Third Annual Computer Security Applications Conference (ACSAC 2007), 2007, 421–430.</mixed-citation><mixed-citation xml:lang="en">Moser A., Kruegel C., Kirda E., “Limits of Static Analysis for Malware Detection”, Proceedings of Twenty-Third Annual Computer Security Applications Conference (ACSAC 2007), 2007, 421–430.</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Baiardi F., Sgandurra D., “An obfuscation-based approach against injection attacks”, Proceedings of the Sixth International Conference on Availability, Reliability and Security (ARES), 2011, 51–58.</mixed-citation><mixed-citation xml:lang="en">Baiardi F., Sgandurra D., “An obfuscation-based approach against injection attacks”, Proceedings of the Sixth International Conference on Availability, Reliability and Security (ARES), 2011, 51–58.</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Нурмухаметов А. Р., “Применение диверсифицирующих и обфусцирующих преобразований для изменения сигнатуры программного кода”, Труды ИСП РАН, 28:5 (2016), 93–104;</mixed-citation><mixed-citation xml:lang="en">Nurmukhametov A. R., “Primenenie diversiﬁciruyushchih i obfusciruyushchih preobrazovanij dlya izmeneniya signatury programmnogo koda”, Trudy ISP RAN, 28:5 (2016), 93–104, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Косолапов Ю. В., “Об обнаружении атак типа повторного использования исполнимого кода”, Моделирование и анализ информационных систем, 26:2 (2019), 213–228;</mixed-citation><mixed-citation xml:lang="en">Kosolapov Y. V., “About Detection of Code Reuse Attacks”, Modeling and Analysis of Information Systems, 26:2 (2019), 213–228, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Collberg C., Thomborson C., Low D., “A taxonomy of obfuscating transformations”, Technical Report 148, The University of Auckland, New Zealand, 1997.</mixed-citation><mixed-citation xml:lang="en">Collberg C., Thomborson C., Low D., “A taxonomy of obfuscating transformations”, Technical Report 148, The University of Auckland, New Zealand, 1997.</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Walenstein A., El-Ramly M., Cordy J. R., Evans W. S., Mahdavi K., Pizka M., Ramalingam G., von Gudenberg J. W., “Similarity in Programs”, Duplication, Redundancy, and Similarity in Software, 2007, 1–8.</mixed-citation><mixed-citation xml:lang="en">Walenstein A., El-Ramly M., Cordy J. R., Evans W. S., Mahdavi K., Pizka M., Ramalingam G., von Gudenberg J. W., “Similarity in Programs”, Duplication, Redundancy, and Similarity in Software, 2007, 1–8.</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">Chipounov V., Kuznetsov V., Candea G., “The S2E Platform: Design, Implementation, and Applications”, ACM Transactions on Computer Systems, 30:1 (2012), 1–49.</mixed-citation><mixed-citation xml:lang="en">Chipounov V., Kuznetsov V., Candea G., “The S2E Platform: Design, Implementation, and Applications”, ACM Transactions on Computer Systems, 30:1 (2012), 1–49.</mixed-citation></citation-alternatives></ref><ref id="cit17"><label>17</label><citation-alternatives><mixed-citation xml:lang="ru">Saudel F., Salwan J., “Triton: A Dynamic Symbolic Execution Framework”, Symposium Sur La Security Des Technologies de L’information et Des Communications, SSTIC, 2015, 31–54.</mixed-citation><mixed-citation xml:lang="en">Saudel F., Salwan J., “Triton: A Dynamic Symbolic Execution Framework”, Symposium Sur La Security Des Technologies de L’information et Des Communications, SSTIC, 2015, 31–54.</mixed-citation></citation-alternatives></ref><ref id="cit18"><label>18</label><citation-alternatives><mixed-citation xml:lang="ru">Wang Z, Ming J., Jia C., Gao D., “Linear Obfuscation to Combat Symbolic Execution”, Proceedings of Computer Security - ESORICS 2011, 6879 (2011), 210–226.</mixed-citation><mixed-citation xml:lang="en">Wang Z, Ming J., Jia C., Gao D., “Linear Obfuscation to Combat Symbolic Execution”, Proceedings of Computer Security - ESORICS 2011, 6879 (2011), 210–226.</mixed-citation></citation-alternatives></ref><ref id="cit19"><label>19</label><citation-alternatives><mixed-citation xml:lang="ru">Brumley D., Hartwig C., Liang Z., Newsome J., Song D., Yin H., “Automatically Identifying Trigger-based Behavior in Malware”, Botnet Detection. Advances in Information Security, 36 (2008), 65–88.</mixed-citation><mixed-citation xml:lang="en">Brumley D., Hartwig C., Liang Z., Newsome J., Song D., Yin H., “Automatically Identifying Trigger-based Behavior in Malware”, Botnet Detection. Advances in Information Security, 36 (2008), 65–88.</mixed-citation></citation-alternatives></ref><ref id="cit20"><label>20</label><citation-alternatives><mixed-citation xml:lang="ru">King J. C., “Symbolic execution and program testing”, Communications of the ACM, 19:7 (1976), 385–394.</mixed-citation><mixed-citation xml:lang="en">King J. C., “Symbolic execution and program testing”, Communications of the ACM, 19:7 (1976), 385–394.</mixed-citation></citation-alternatives></ref><ref id="cit21"><label>21</label><citation-alternatives><mixed-citation xml:lang="ru">Cadar C., Dunbar D., Engler D. R., “KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Systems Programs”, 8th USENIX Symposium on Operating Systems Design and Implementation, 8 (2008), 209–224.</mixed-citation><mixed-citation xml:lang="en">Cadar C., Dunbar D., Engler D. R., “KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Systems Programs”, 8th USENIX Symposium on Operating Systems Design and Implementation, 8 (2008), 209–224.</mixed-citation></citation-alternatives></ref><ref id="cit22"><label>22</label><citation-alternatives><mixed-citation xml:lang="ru">Shoshitaishvili Y.et al., “SoK: (State of) The Art of War: Oﬀensive Techniques in Binary Analysis”, IEEE Symposium on Security and Privacy, 2016, 138–157.</mixed-citation><mixed-citation xml:lang="en">Shoshitaishvili Y.et al., “SoK: (State of) The Art of War: Oﬀensive Techniques in Binary Analysis”, IEEE Symposium on Security and Privacy, 2016, 138–157.</mixed-citation></citation-alternatives></ref><ref id="cit23"><label>23</label><citation-alternatives><mixed-citation xml:lang="ru">Sharif M. I., Lanzi A., Giﬃn J. T., Lee W., “Impeding Malware Analysis Using Conditional Code Obfuscation”, Proceedings of NDSS, 2008, 1–13.</mixed-citation><mixed-citation xml:lang="en">Sharif M. I., Lanzi A., Giﬃn J. T., Lee W., “Impeding Malware Analysis Using Conditional Code Obfuscation”, Proceedings of NDSS, 2008, 1–13.</mixed-citation></citation-alternatives></ref><ref id="cit24"><label>24</label><citation-alternatives><mixed-citation xml:lang="ru">Udupa S. K., Debray S. K., Madou M., “Deobfuscation: Reverse Engineering Obfuscated Code”, Proceedings of the 12th Working Conference on Reverse Engineering (WCRE’05), 2005, 44–53.</mixed-citation><mixed-citation xml:lang="en">Udupa S. K., Debray S. K., Madou M., “Deobfuscation: Reverse Engineering Obfuscated Code”, Proceedings of the 12th Working Conference on Reverse Engineering (WCRE’05), 2005, 44–53.</mixed-citation></citation-alternatives></ref><ref id="cit25"><label>25</label><citation-alternatives><mixed-citation xml:lang="ru">Nagarajan V., Gupta R., Zhang X., Madou M., De Sutter B., “Matching Control Flow of Program Versions”, IEEE International Conference on Software Maintenance, 2007, 84–93.</mixed-citation><mixed-citation xml:lang="en">Nagarajan V., Gupta R., Zhang X., Madou M., De Sutter B., “Matching Control Flow of Program Versions”, IEEE International Conference on Software Maintenance, 2007, 84–93.</mixed-citation></citation-alternatives></ref><ref id="cit26"><label>26</label><citation-alternatives><mixed-citation xml:lang="ru">Bonfante G., Kaczmarek M., Marion J.Y., “Control Flow Graphs as Malware Signatures”, International Workshop on the Theory of Computer Viruses, 2007, 1–6.</mixed-citation><mixed-citation xml:lang="en">Bonfante G., Kaczmarek M., Marion J.Y., “Control Flow Graphs as Malware Signatures”, International Workshop on the Theory of Computer Viruses, 2007, 1–6.</mixed-citation></citation-alternatives></ref><ref id="cit27"><label>27</label><citation-alternatives><mixed-citation xml:lang="ru">Park Y., Reeves D., Mulukutla V., Sundaravel B., “Fast Malware Classiﬁcation by Automated Behavioral Graph Matching”, Proceedings of the Sixth Annual Workshop on Cyber Security and Information Intelligence Research, 2010, 1–4.</mixed-citation><mixed-citation xml:lang="en">Park Y., Reeves D., Mulukutla V., Sundaravel B., “Fast Malware Classiﬁcation by Automated Behavioral Graph Matching”, Proceedings of the Sixth Annual Workshop on Cyber Security and Information Intelligence Research, 2010, 1–4.</mixed-citation></citation-alternatives></ref><ref id="cit28"><label>28</label><citation-alternatives><mixed-citation xml:lang="ru">Kinable J., Kostakis O., “Malware classiﬁcation based on call graph clustering”, Journal in Computer Virology, 7:4 (2011), 233–245.</mixed-citation><mixed-citation xml:lang="en">Kinable J., Kostakis O., “Malware classiﬁcation based on call graph clustering”, Journal in Computer Virology, 7:4 (2011), 233–245.</mixed-citation></citation-alternatives></ref><ref id="cit29"><label>29</label><citation-alternatives><mixed-citation xml:lang="ru">Lim H.I., “Comparing Control Flow Graphs of Binary Programs through Match Propagation”, IEEE 38th Annual Computer Software and Applications Conference, 2014, 598–599.</mixed-citation><mixed-citation xml:lang="en">Lim H.I., “Comparing Control Flow Graphs of Binary Programs through Match Propagation”, IEEE 38th Annual Computer Software and Applications Conference, 2014, 598–599.</mixed-citation></citation-alternatives></ref><ref id="cit30"><label>30</label><citation-alternatives><mixed-citation xml:lang="ru">Dullien T., Rolles R., “Graph-based comparison of executable objects”, 5:1 (2005), 1–8.</mixed-citation><mixed-citation xml:lang="en">Dullien T., Rolles R., “Graph-based comparison of executable objects”, 5:1 (2005), 1–8.</mixed-citation></citation-alternatives></ref><ref id="cit31"><label>31</label><citation-alternatives><mixed-citation xml:lang="ru">Chan P.P.F., Collberg C., “A Method to Evaluate CFG Comparison Algorithms”, 14th International Conference on Quality Software, 2014, 95–104.</mixed-citation><mixed-citation xml:lang="en">Chan P.P.F., Collberg C., “A Method to Evaluate CFG Comparison Algorithms”, 14th International Conference on Quality Software, 2014, 95–104.</mixed-citation></citation-alternatives></ref><ref id="cit32"><label>32</label><citation-alternatives><mixed-citation xml:lang="ru">Axenovich M., Kezdy A., Martin R., “On the editing distance of graphs”, J. Graph Theory, 58:2 (2008), 123–138.</mixed-citation><mixed-citation xml:lang="en">Axenovich M., Kezdy A., Martin R., “On the editing distance of graphs”, J. Graph Theory, 58:2 (2008), 123–138.</mixed-citation></citation-alternatives></ref><ref id="cit33"><label>33</label><citation-alternatives><mixed-citation xml:lang="ru">Борисов П. Д., Косолапов Ю. В., “О выборе характеристик для оценки стойкости обфусцирующих преобразований”, Современные информационные технологии: тенденции и перспективы развития. Труды XXVI научной конференции СИТО-2019., 2019, 42–44;</mixed-citation><mixed-citation xml:lang="en">Borisov P. D., Kosolapov Y. V., “O vybore harakteristik dlja ocenki stojkosti obfuscirujushhih preobrazovanij”, Sovremennye informacionnye tekhnologii: tendencii i perspektivy razvitiya. Trudy XXV nauchnoj konferencii SITO-2019., 2019, 42–44, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit34"><label>34</label><citation-alternatives><mixed-citation xml:lang="ru">Lehman M. M., Belady L. A. Program Evolution. Processes of Software Change., Academic press, 1985.</mixed-citation><mixed-citation xml:lang="en">Lehman M. M., Belady L. A. Program Evolution. Processes of Software Change., Academic press, 1985.</mixed-citation></citation-alternatives></ref><ref id="cit35"><label>35</label><citation-alternatives><mixed-citation xml:lang="ru">Schnappinger M., Osman M. H., Pretschner A., Pizka M., Fietzke A., “Software Quality Assessment in Practice: a Hypothesis-Driven Framework”, Proceedings of the 12th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, 2018, 1–6.</mixed-citation><mixed-citation xml:lang="en">Schnappinger M., Osman M. H., Pretschner A., Pizka M., Fietzke A., “Software Quality Assessment in Practice: a Hypothesis-Driven Framework”, Proceedings of the 12th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, 2018, 1–6.</mixed-citation></citation-alternatives></ref><ref id="cit36"><label>36</label><citation-alternatives><mixed-citation xml:lang="ru">Борисов П. Д., Косолапов Ю. В., “Модель экспериментального анализа стойкости алгоритмов обфускации”, Современные информационные технологии: тенденции и перспективы развития. Труды XXV научной конференции СИТО-2018., 2018, 37–39;</mixed-citation><mixed-citation xml:lang="en">Borisov P. D., Kosolapov Y. V., “Model’ eksperimental’nogo analiza stojkosti algoritmov obfuskacii”, Sovremennye informacionnye tekhnologii: tendencii i perspektivy razvitiya. Trudy XXV nauchnoj konferencii SITO-2018., 2018, 37–39, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit37"><label>37</label><citation-alternatives><mixed-citation xml:lang="ru">“IDA Pro”, https://www.hex-rays.com/products/ida/.</mixed-citation><mixed-citation xml:lang="en">“IDA Pro”, https://www.hex-rays.com/products/ida/.</mixed-citation></citation-alternatives></ref><ref id="cit38"><label>38</label><citation-alternatives><mixed-citation xml:lang="ru">“The LLVM Compiler Infrastructure”, https://llvm.org/.</mixed-citation><mixed-citation xml:lang="en">“The LLVM Compiler Infrastructure”, https://llvm.org/.</mixed-citation></citation-alternatives></ref><ref id="cit39"><label>39</label><citation-alternatives><mixed-citation xml:lang="ru">“McSema”, https://github.com/trailofbits/mcsema.</mixed-citation><mixed-citation xml:lang="en">“McSema”, https://github.com/trailofbits/mcsema.</mixed-citation></citation-alternatives></ref><ref id="cit40"><label>40</label><citation-alternatives><mixed-citation xml:lang="ru">Junod P., Rinaldini J., Wehrli J., Michieliny J., “Obfuscator-LLVM – Software Protection for the Masses”, Conference: 2015 IEEE/ACM 1st International Workshop on Software Protection (SPRO), 2015, 3–9.</mixed-citation><mixed-citation xml:lang="en">Junod P., Rinaldini J., Wehrli J., Michieliny J., “Obfuscator-LLVM – Software Protection for the Masses”, Conference: 2015 IEEE/ACM 1st International Workshop on Software Protection (SPRO), 2015, 3–9.</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
