Preview

Труды Института системного программирования РАН

Расширенный поиск

Метод поиска уязвимости форматной строки

https://doi.org/10.15514/ISPRAS-2015-27(4)-2

Аннотация

В статье рассматривается метод поиска уязвимостей форматной строки в исполняемом бинарном коде. Предлагаемый метод использует символьное выполнение и применяется к бинарным файлам программ, не требуя какой-либо отладочной информации. Метод был реализован в виде программного инструмента. Возможности инструмента были продемонстрированы на известных уязвимостях приложений, работающих под управлением ОС Linux.

Об авторах

И. А. Вахрушев
ИСП РАН
Россия


В. В. Каушан
ИСП РАН
Россия


В. А. Падарян
ИСП РАН; МГУ имени М.В. Ломоносова, 2-й учебный корпус, факультет ВМК
Россия


А. Н. Федотов
ИСП РАН
Россия


Список литературы

1. B.P. Miller; L. Fredriksen; B So. An Empirical Study of the Reliability of UNIX Utilities. // Commun. ACM. - 1990. - No 33.

2. В.П. Иванников, А.А. Белеванцев, А.Е. Бородин, В.Н. Игнатьев, Д.М. Журихин, А.И. Аветисян, М.И. Леонов. Статический анализатор Svace для поиска дефектов в исходном коде программ. // Труды Института системного программирования РАН Том 26. Выпуск 1. 2014 г. Стр. 231-250. DOI: DOI: 10.15514/ISPRAS-2014-26(1)-7

3. И.К. Исаев, Д.В. Сидоров, А.Ю. Герасимов, М.К. Ермаков. Avalanche: Применение динамического анализа для автоматического обнаружения ошибок в программах, использующих сетевые сокеты. // Труды Института системного программирования РАН, том 21, 2011, стр. 55-70.

4. Падарян В.А., Каушан В.В., Федотов А.Н. Автоматизированный метод построения эксплойтов для уязвимости переполнения буфера на стеке. // Труды Института системного программирования РАН, том 26, выпуск 3, 2014, стр. 127-144. DOI: 10.15514/ISPRAS-2014-26(3)-7.

5. King J.C. Symbolic execution and program testing. // Commun. ACM. - 1976. - No 19.

6. C. Cadar, K. Sen. Symbolic Execution for Software Testing: Three Decades Later. // Commun. ACM. - 2013. - No 56.

7. T. Avgerinos, S. K. Cha, Alexandre Rebert, Edard J. Schwartz, Maverick Woo, and D. Brumley. AEG: Automatic exploit generation // Commun. ACM. - 2014.- №2.

8. Sang Kil Cha, Thanassis Avgerinos, Alexandre Rebert and David Brumley. Unleashing MAYHEM on Binary Code // IEEE Symposium on Security and Privacy. - 2012.

9. G. C. Vitaly Chipounov, Volodymyr Kuznetsov. S2E: A platform for in-vivo multi-path analysis of software systems. // In Proc. of the International Conference on Architectural Support for Programming Languages and Operating Systems, 2011, pp. 265-278.

10. Каушан В.В., Мамонтов А.Ю., Падарян В.А., Федотов А.Н. Метод выявления некоторых типов ошибок работы с памятью в бинарном коде программ. // Труды Института системного программирования РАН, том 27, выпуск 2, 2015, стр. 105-126. DOI: 10.15514/ISPRAS-2015-27(2)-7

11. Ericson J. Hacking: The Art of Exploitation. 2nd Edition. // No Starch Press, 2008, pp.167-183.

12. Hong Hu, Zheng Leong Chua, Sendroiu Adrian, Prateek Saxena, Zhenkai Liang. Automatic Generation of Data-Oriented Exploits. // 24th USENIX Security Symposium 2015

13. А.Ю. Тихонов, А.И. Аветисян. Комбинированный (статический и динамический) анализ бинарного кода. // Труды Института системного программирования РАН, том 22, 2012, cтр. 131-152. DOI: 10.15514/ISPRAS-2012-22-9

14. П.М. Довгалюк, Н.И. Фурсова, Д.С. Дмитриев. Перспективы применения детерминированного воспроизведения работы виртуальной машины при решении задач компьютерной безопасности. // Материалы конференции РусКрипто’2013. Москва, 27 - 30 марта 2013.

15. Довгалюк П.М., Макаров В.А., Падарян В.А., Романеев М.С., Фурсова Н.И. Применение программных эмуляторов в задачах анализа бинарного кода. // Труды Института системного программирования РАН, том 26, выпуск 1, 2014, стр. 277-296. DOI: 10.15514/ISPRAS-2014-26(1)-9.

16. В.А. Падарян, А.И. Гетьман, М.А. Соловьев, М.Г. Бакулин, А.И. Борзилов, В.В. Каушан, И.Н. Ледовских, Ю.В. Маркин, С.С. Панасенко. Методы и программные средства, поддерживающие комбинированный анализ бинарного кода. // Труды Института системного программирования РАН, том 26, выпуск 1, 2014, стр. 251-276. DOI: 10.15514/ISPRAS-2014-26(1)-8.

17. Андрей Тихонов, Вартан Падарян. Применение программного слайсинга для анализа бинарного кода, представленного трассами выполнения. // Материалы XVIII Общероссийской научно-технической конференции «Методы и технические средства обеспечения безопасности информации». 2009. стр. 131

18. Падарян В. А., Соловьев М. А., Кононов А. И. Моделирование операционной семантики машинных инструкций. // Программирование, № 3, 2011 г. Стр. 50-64.

19. Silvio Ranise and Cesare Tinelli. The SMT-LIB Format: An Initial Proposal. Proceedings of PDPAR'03, July 2003

20. Nikolaj Bjørner, Leonardo de Moura. Z3: Applications, Enablers, Challenges and Directions // Sixth International Workshop on Constraints in Formal Verification Grenoble, 2009.

21. Huang S. K. et al. Software Crash Analysis for Automatic Exploit Generation on Binary Programs // Reliability, IEEE Transactions on. - 2014. - Т. 63. - №. 1. - С. 270-289.

22. Wu B. et al. Directed symbolic execution for binary vulnerability mining // Electronics, Computer and Applications, 2014 IEEE Workshop on. - IEEE, 2014. - С. 614-617.


Рецензия

Для цитирования:


Вахрушев И.А., Каушан В.В., Падарян В.А., Федотов А.Н. Метод поиска уязвимости форматной строки. Труды Института системного программирования РАН. 2015;27(4):23-38. https://doi.org/10.15514/ISPRAS-2015-27(4)-2

For citation:


Vakhrushev I.A., Kaushan V.V., Padaryan V.A., Fedotov A.N. Search method for format string vulnerabilities. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2015;27(4):23-38. (In Russ.) https://doi.org/10.15514/ISPRAS-2015-27(4)-2



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)