Abstract

Despite the fact that software development uses various technologies and approaches to diagnose errors in the early stages of development and testing, some errors are discovered during operation. To the user, errors often look like a program crash while running. To collect reports on program crashes, a special analysis component is built into the operating system. Such a component is present in both Windows OS and Linux-based OS, in particular Ubuntu. An important parameter is the severity of the error found, and this information is useful to both the developer of the distribution kit and the user. In particular, users with such diagnostics can take organizational and technical measures before the release of a bug fix from the software developer. The article introduces CASR: a tool for analyzing a memory image at the time of a process termination (coredump) and reporting errors. The tool allows you to assess the severity of the detected crash by analyzing the memory image, as well as collect the necessary information for the developer to help fix the defect. Such information is: OS distribution version, package version, process memory card, state of registers, values of environment variables, call stack, signal number that led to abnormal termination, etc. Severity assessment enables the software developer to correct errors, which are the most dangerous in the first place. CASR can detect files and network connections that were open at the time of the crash. This information will help reproduce the error, and will help users and administrators take action in the event of an attack on the system. The tool is designed to work on Linux OS and supports x86 / 64, armv7 architectures and can be supplied as a package for Debian-based distributions. The tool has been successfully tested with several open source bugs.

Highlights

  • 25, Alexander Solzhenitsyn st., Moscow, 109004, Russia Abstract

  • Despite the fact that software development uses various technologies and approaches to diagnose errors in the early stages of development and testing, some errors are discovered during operation

  • Errors often look like a program crash while running

Read more

Summary

Введение

Безопасный цикл разработки программного обеспечения активно применяется как в России [1], так и за рубежом. Уже в готовом программном обеспечении могут быть ошибки, которые будут обнаружены лишь на стадии эксплуатации программного продукта. Такой компонент присутствует как в ОС Windows [2], так и в ОС на базе Linux, в частности в Ubuntu [3]. Все обнаруженные аварийные завершения на машине пользователя могут быть проанализированы и отправлены разработчикам в Microsoft или сообществом разработчиков дистрибутива Ubuntu. Разработчики стороннего ПО вынуждены либо разрабатывать свои компоненты для сбора информации о сбоях в программном обеспечении, либо совсем отказаться от получения отчётов об ошибках. В работе рассматривается casr – инструмент анализа образа памяти в момент завершения процесса (coredump) в системах ОС Linux, который позволяет проводить оценку критичности найденного дефекта, а также собирать информацию, которая поможет разработчику при анализе аварийного завершения. Метод был протестирован на нескольких известных уязвимостях в системе Astra Linux 1.6 «Орёл»

Обзор схожих работ
Ubuntu Apport
Детали реализации инструмента casr
Тестирование разработанного инструмента
Заключение
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call