\documentclass[a4paper, final]{article} %\usepackage{literat} % Нормальные шрифты \usepackage[14pt]{extsizes} % для того чтобы задать нестандартный 14-ый размер шрифта \usepackage{tabularx} \usepackage{booktabs} \usepackage[T2A]{fontenc} \usepackage[utf8]{inputenc} \usepackage[russian]{babel} \usepackage{amsmath} \usepackage[left=25mm, top=20mm, right=20mm, bottom=20mm, footskip=10mm]{geometry} \usepackage{ragged2e} %для растягивания по ширине \usepackage{setspace} %для межстрочного интервала \usepackage{moreverb} %для работы с листингами \usepackage{indentfirst} % для абзацного отступа \usepackage{moreverb} %для печати в листинге исходного кода программ \usepackage{pdfpages} %для вставки других pdf файлов \usepackage{tikz} \usepackage{graphicx} \usepackage{afterpage} \usepackage{longtable} \usepackage{float} % Рекомендуется для biblatex (кавычки/локализация цитат и т.п.) \usepackage{csquotes} % ГОСТ-стили для biblatex \usepackage[ backend=biber, bibstyle=gost-numeric, % ссылки вида: [1] citestyle=gost-numeric, sorting=none % порядок в списке = по первому цитированию ]{biblatex} % Все источники хранятся в отдельном файле \addbibresource{refs.bib} \renewcommand*{\bibfont}{\small} % \usepackage[paper=A4,DIV=12]{typearea} \usepackage{pdflscape} % \usepackage{lscape} \usepackage{array} \usepackage{multirow} \renewcommand\verbatimtabsize{4\relax} \renewcommand\listingoffset{0.2em} %отступ от номеров строк в листинге \renewcommand{\arraystretch}{1.4} % изменяю высоту строки в таблице \usepackage[font=small, singlelinecheck=false, justification=centering, format=plain, labelsep=period]{caption} %для настройки заголовка таблицы \usepackage{listings} %листинги \usepackage{xcolor} % цвета % \usepackage{hyperref}% для гиперссылок \usepackage{enumitem} %для перечислений \newcommand{\specialcell}[2][l]{\begin{tabular}[#1]{@{}l@{}}#2\end{tabular}} \setlist[enumerate,itemize]{leftmargin=1.2cm} %отступ в перечислениях % \hypersetup{colorlinks, % allcolors=[RGB]{010 090 200}} %красивые гиперссылки (не красные) % подгружаемые языки — подробнее в документации listings (это всё для листингов) \lstloadlanguages{ SQL} % включаем кириллицу и добавляем кое−какие опции \lstset{tabsize=2, breaklines, basicstyle=\footnotesize, columns=fullflexible, flexiblecolumns, numbers=left, numberstyle={\footnotesize}, keywordstyle=\color{blue}, inputencoding=cp1251, extendedchars=true } \lstdefinelanguage{MyC}{ language=SQL, % ndkeywordstyle=\color{darkgray}\bfseries, % identifierstyle=\color{black}, % morecomment=[n]{/**}{*/}, % commentstyle=\color{blue}\ttfamily, % stringstyle=\color{red}\ttfamily, % morestring=[b]", % showstringspaces=false, % morecomment=[l][\color{gray}]{//}, keepspaces=true, escapechar=\%, texcl=true } \textheight=24cm % высота текста \textwidth=16cm % ширина текста \oddsidemargin=0pt % отступ от левого края \topmargin=-1.5cm % отступ от верхнего края \parindent=24pt % абзацный отступ \parskip=5pt % интервал между абзацами \tolerance=2000 % терпимость к "жидким" строкам \flushbottom % выравнивание высоты страниц % Настройка листингов \lstset{ language=python, extendedchars=\true, inputencoding=utf8, keepspaces=true, % captionpos=b, % подписи листингов снизу } % Настройка содержания \usepackage{tocloft} \usepackage[hidelinks]{hyperref} % section в содержании НЕ жирным \renewcommand{\cftsecfont}{\normalfont} \renewcommand{\cftsecpagefont}{\normalfont} % убрать отступ у subsection \setlength{\cftsubsecindent}{0pt} % subsubsection курсивом \usepackage{titlesec} \titleformat{\subsubsection} {\normalfont\large\itshape} % стиль: обычный + курсив {\thesubsubsection} % номер (убери если не нужен) {1em} {} \begin{document} % ТИТУЛЬНЫЙ ЛИСТ \begin{center} \hfill \break \hfill \break \normalsize{МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ\\ федеральное государственное автономное образовательное учреждение высшего образования «Санкт-Петербургский политехнический университет Петра Великого»\\[10pt]} \normalsize{Институт компьютерных наук и кибербезопасности}\\[10pt] \normalsize{Высшая школа технологий искусственного интеллекта}\\[10pt] \normalsize{Направление: 02.03.01 <<Математика и компьютерные науки>>}\\ \hfill \break \hfill \break \hfill \break \large{Отчёт по практическим работам по дисциплине}\\ \large{<<Защита информации>>}\\ \hfill \break \hfill \break \hfill \break \end{center} \small{ \begin{tabular}{lrrl} \!\!\!Студент, & \hspace{2cm} & & \\ \!\!\!группы 5130201/20101 & \hspace{2cm} & \underline{\hspace{3cm}} & Тищенко А. А. \\\\ \!\!\!Руководитель & \hspace{2cm} & & \\ \!\!\! & \hspace{2cm} & \underline{\hspace{3cm}} & Силиненко А. В. \\\\ &&\hspace{4cm} \end{tabular} \begin{flushright} <<\underline{\hspace{1cm}}>>\underline{\hspace{2.5cm}} 2026г. \end{flushright} } \hfill \break \hfill \break \begin{center} \small{Санкт-Петербург, 2026} \end{center} \thispagestyle{empty} % выключаем отображение номера для этой страницы \newpage \tableofcontents \thispagestyle{empty} % выключаем отображение номера для этой страницы \newpage \section*{Введение} \addcontentsline{toc}{section}{Введение} В рамках курса <<Защита информации>> было выполнено несколько практических работ, по результатам которых был составлен данный отчёт, содержащий информацию по всем практическим работам. Отчетная информация по каждой работе – это отдельный раздел в общем отчете. В отчёте представлены результаты следующих практических работ: \begin{enumerate} \item Практическая работа №1. Анализ уязвимостей программного обеспечения. Данная практическая работа посвящена анализу уязвимостей программного обеспечения с использованием Банка данных угроз безопасности информации ФСТЭК России~\cite{fstec-bdu}. В ходе выполнения работы предусмотрено изучение структуры разделов «Угрозы» и «Уязвимости», а также поиск уязвимостей по заданным критериям. Особое внимание уделяется выявлению уязвимостей, соответствующих используемым версиям операционных систем личных устройств, и рассмотрению возможных мер по их устранению. \end{enumerate} \newpage \section{Практическая работа №1. Анализ уязвимостей программного обеспечения} \subsection{Знакомство с разделом <<Угрозы>> Банка угроз} Раздел <<Угрозы>> Банка данных угроз безопасности информации ФСТЭК России предназначен для систематизированного представления сведений об актуальных угрозах безопасности информации. Данный раздел содержит структурированную информацию, позволяющую оценить характер угроз, возможные последствия их реализации и способы противодействия. Раздел включает в себя следующие основные аспекты: \begin{enumerate} \item Классификация угроз: угрозы распределяются по различным категориям в зависимости от источника возникновения, способа реализации и объекта воздействия. Это позволяет упорядочить информацию и упростить её анализ. \item Описание угроз: для каждой угрозы приводится развернутое описание, включающее возможные сценарии реализации, цели нарушителя и потенциальные последствия для информационной системы. \item Объекты воздействия: указываются типы информационных систем, ресурсов или процессов, на которые может быть направлена угроза. \item Уровень опасности: каждой угрозе присваивается определённый уровень опасности, отражающий степень потенциального ущерба при её реализации. \item Рекомендации по противодействию: приводятся общие меры и подходы, направленные на предупреждение реализации угрозы или снижение возможных негативных последствий. \end{enumerate} \subsection{Знакомство с разделом <<Уязвимости>> Банка угроз} Раздел <<Уязвимости>> Банка данных угроз безопасности информации ФСТЭК России предназначен для получения сведений об актуальных уязвимостях программного обеспечения и их характеристиках. В рамках работы были рассмотрены подразделы: <<Список уязвимостей>>, <<Наиболее опасные уязвимости>> и <<Инфографика>>. Список уязвимостей представляет собой структурированный перечень выявленных уязвимостей в программном обеспечении. Для каждой уязвимости указывается идентификатор, наименование, описание, затронутое программное обеспечение и его версии, уровень опасности, а также оценка по шкале CVSS. Уязвимости классифицируются по уровню критичности (критический, высокий, средний и др.), что позволяет определить приоритетность их устранения. Также приводятся рекомендации по устранению или минимизации последствий эксплуатации уязвимости. Подраздел <<Наиболее опасные уязвимости>> содержит перечень уязвимостей с наивысшим уровнем опасности. Как правило, к ним относятся уязвимости, позволяющие выполнить удалённое выполнение кода, повысить привилегии, обойти механизмы аутентификации или получить несанкционированный доступ к информации. Данный раздел позволяет оперативно определить наиболее критичные риски для информационных систем. \begin{figure}[h!] \centering \includegraphics[width=0.7\linewidth]{img/top_vulnerabilities.png} \caption{Пример отображения наиболее опасных уязвимостей} \label{fig:top_vuln} \end{figure} Подраздел <<Инфографика>> предназначен для наглядного представления статистических данных по уязвимостям. В нём отображается распределение уязвимостей по уровням опасности, типам ошибок, видам программного обеспечения и производителям. Инфографика позволяет визуально оценить текущее состояние защищённости программных продуктов и выявить наиболее проблемные направления. \begin{figure}[h!] \centering \includegraphics[width=0.7\linewidth]{img/vulnerability_stats.png} \caption{Пример статистического распределения уязвимостей} \label{fig:stats_vuln} \end{figure} \newpage \subsection{Версии ОС, используемые в личных устройствах} На личном компьютере используется операционная система Ubuntu 25.10 (см. Рис.~\ref{fig:laptop-os-version}). \begin{figure}[h!] \centering \includegraphics[width=0.5\linewidth]{img/laptop-os-version.png} \caption{Версия операционной системы личного компьютера} \label{fig:laptop-os-version} \end{figure} На личном мобильном устройстве используется операционная система Android 11 с графической оболочкой MIUI Global 12.5.14, сборка 12.5.14.0 RKURUXM (см. Рис.~\ref{fig:mobile-os-version}). \begin{figure}[h!] \centering \includegraphics[width=0.5\linewidth]{img/mobile-os-version.jpg} \caption{Версия операционной системы личного мобильного устройства} \label{fig:mobile-os-version} \end{figure} \subsection{Уязвимости ОС личного компьютера} Для поиска уязвимостей ОС личного компьютера на сайте Банка данных угроз безопасности информации ФСТЭК России были использованы следующие критерии: \begin{enumerate} \item Операционная система: Ubuntu 25.10. \item Уровень опасности: высокий. \end{enumerate} Использовался уровень опасности <<высокий>>, так как критических уязвимостей для данной ОС не найдено. По заданным критериям было найдено 10 уязвимостей (см. Рис.~\ref{fig:laptop-vulnerabilities}). \begin{figure}[h!] \centering \includegraphics[width=0.8\linewidth]{img/laptop-vulnerabilities.png} \caption{Уязвимости ОС личного компьютера} \label{fig:laptop-vulnerabilities} \end{figure} Наиболее свежей является уязвимость BDU:2025-15300 <<Уязвимость интерфейсов cpu\_latency\_qos\_add, remove, update\_request модуля drivers/ufs/core/ufs-sysfs.c драйвера поддержки устройств SCSI ядра операционной системы Linux связана с ошибками синхронизации при использовании общего ресурса («Ситуация гонки»). Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, вызвать отказ в обслуживании>>. Развёрнутое описание уязвимости представлено на рисунке~\ref{fig:laptop-vulnerabilities-details}. Базовый вектор уязвимости CVSS 2.0: AV:A/AC:L/Au:S/C:C/I:C/A:C. AV: A (Access Vector: Adjacent Network) — параметр, указывающий на то, что атакующий должен находиться в той же локальной сети или в непосредственной сетевой близости (например, в одной Wi-Fi сети) для реализации атаки. AC: L (Access Complexity: Low) — низкая сложность эксплуатации уязвимости. Для успешной атаки не требуется выполнения сложных условий или специальной подготовки среды. Au: S (Authentication: Single) — для осуществления атаки требуется прохождение аутентификации один раз. Это означает, что атакующий должен обладать учетной записью или иным способом пройти проверку подлинности. C: C (Confidentiality Impact: Complete) — полное нарушение конфиденциальности. Уязвимость позволяет получить полный доступ к защищаемой информации. I: C (Integrity Impact: Complete) — полное нарушение целостности. Злоумышленник может изменять или уничтожать данные без ограничений. A: C (Availability Impact: Complete) — полное нарушение доступности. Эксплуатация уязвимости может привести к отказу в обслуживании или полной недоступности системы. \begin{figure}[h!] \centering \includegraphics[width=0.9\linewidth]{img/laptop-vulnerabilities-details.png} \caption{Развёрнутое описание уязвимости BDU:2025-15300} \label{fig:laptop-vulnerabilities-details} \end{figure} Уязвимость была устранена в версии 25.10-6.17.0-14.14, поэтому для её устранения достаточно было обновить ОС до этой версии. \newpage \subsection{Уязвимости ОС личного мобильного устройства} Для поиска уязвимостей ОС личного мобильного устройства на сайте Банка данных угроз безопасности информации ФСТЭК России были использованы следующие критерии: \begin{enumerate} \item Операционная система: Android 11. \item Уровень опасности: критический. \end{enumerate} По заданным критериям была найдена 1 уязвимость (см. Рис.~\ref{fig:mobile-vulnerabilities}). \begin{figure}[h!] \centering \includegraphics[width=0.8\linewidth]{img/mobile-vulnerabilities.png} \caption{Уязвимости ОС личного мобильного устройства} \label{fig:mobile-vulnerabilities} \end{figure} Развёрнутое описание уязвимости BDU:2023-08587 <<Уязвимость функции \\ callback\_thread\_event (com\_android\_bluetooth\_btservice\_AdapterService.cpp) операционной системы Android связана с использованием памяти после её освобождения. Эксплуатация уязвимости может позволить нарушителю, действующему удалённо, выполнить произвольный код>>, представлено на рисунке~\ref{fig:mobile-vulnerabilities-details}. Базовый вектор уязвимости CVSS 2.0: AV:N/AC:L/Au:N/C:C/I:C/A:C. AV: N (Access Vector: Network) — параметр, указывающий на то, что атакующий может осуществить атаку удалённо через сеть (например, через Интернет), без необходимости физического доступа или нахождения в локальной сети. AC: L (Access Complexity: Low) — низкая сложность эксплуатации уязвимости. Для успешной атаки не требуется специальных условий или сложной подготовки. Au: N (Authentication: None) — для эксплуатации уязвимости не требуется аутентификация. Атакующий может выполнить атаку без наличия учетной записи или прохождения процедуры входа в систему. C: C (Confidentiality Impact: Complete) — полное нарушение конфиденциальности. Уязвимость позволяет злоумышленнику получить полный доступ к конфиденциальной информации. I: C (Integrity Impact: Complete) — полное нарушение целостности. Атакующий может изменять, подменять или удалять данные без ограничений. A: C (Availability Impact: Complete) — полное нарушение доступности. Эксплуатация уязвимости может привести к полной недоступности системы или отказу в обслуживании. \begin{figure}[h!] \centering \includegraphics[width=0.9\linewidth]{img/mobile-vulnerabilities-details.png} \caption{Развёрнутое описание уязвимости BDU:2023-08587} \label{fig:mobile-vulnerabilities-details} \end{figure} \newpage \section*{Заключение} \addcontentsline{toc}{section}{Заключение} В ходе выполнения практической работы №1 был проведён анализ уязвимостей программного обеспечения с использованием Банка данных угроз ФСТЭК России. Были изучены структура разделов <<Угрозы>> и <<Уязвимости>>, определены версии операционных систем личного компьютера и смартфона, а также выполнен поиск уязвимостей с уровнем опасности <<Критический>> и <<Высокий>>. Проведён анализ наиболее актуальных уязвимостей, рассмотрены их характеристики и векторы CVSS, а также рекомендации по устранению. В процессе выполнения работы были получены практические навыки поиска, анализа и оценки уязвимостей информационных систем. \newpage \printbibliography[heading=bibintoc] \end{document}