Тема курсовой работы: Разработка алгоритма определения потенциальных кибератак влияющих на элементы АСУ военного назначения
Заказать уникальную курсовую работу- 37 37 страниц
- 3 + 3 источника
- Добавлена 28.04.2019
- Содержание
- Часть работы
- Список литературы
- Вопросы/Ответы
Разработка в рамках данной среды ведется в двух режимах, которые можно условно называть «дизайнер» и «разработчик». Работа в режиме дизайнера представлена на рисунке 5. Разработчик распределяет по форме готовые компоненты, которые впоследствии программируются на выполнение определенных функций, проявление реакции на событие.
Рисунок 5 - Форма с компонентами в режиме «Дизайнер»
Пользователь должен самостоятельно вводить данные для расчетов (обеспечивается программированием полей для ввода) и получать на выходе конечные значения итоговых показателей (программирование кнопок).
В режиме разработчика программист имеет возможность работы с двумя файлами, которые отражают настройки формы в редакторе кода:
Unit2.h - файл заголовка, в котором прописана информация о подключенных библиотеках и размещенных компонентах, рисунок 6;
Unit2.cpp - непосредственно файл исходного кода на языке C++, для программирования функций компонентов, рисунок 7.
Рисунок 6 - Файл заголовка в редакторе кода
Рисунок 7 - Файл исходного кода на языке C++
Кнопка запрограммирована на расчет показателя мощности автоматизированной системы управления.
3.1. Отладка программного модуля
При разработке программ, особенно в первое время, возможны ошибки как синтаксические, так и логические. Чем сложнее программа, тем труднее их обнаружить. Дня облегчения обнаружения и устранения ошибок в среде разработки Embarcadero RAD Studio XE7 Architect существует встроенный отладчик программ. Он позволяет выполнять программу по шагам, устанавливать точки останова, просматривать переменные и т. п.
В среде разработки имеется возможность выполнения «помодульной» отладки программного кода, т.е. такая опция позволяет не затрачивать время на компоновку и отладку всего проекта, а проверить только отдельный фрагмент кода в рамках модуля. Выполнить отладку модуля позволяет команда главного меню Project - Build Unit2.cpp, рисунок 8. На рисунках 9 и 10 представлен процесс отладки и ее результат. Если ошибок не имеется, то в окне отладки появляется надпись «Done», информирующая об успешном завершении процесса безошибочной отладки.
Рисунок 8 - Вызов отладчика модуля Unit2.cpp
Рисунок 9 - Процесс отладки модуля Unit2.cpp
Рисунок 10 - Результат отладки модуля Unit2.cpp, успешное завершение
3.2. Тестирование программного модуля
Выполнить тестирование модуля можно прямо в среде разработки посредством выполнения команды «Run» главного меню. При успешной сборке и компиляции проекта, пользователь должен увидеть окно модуля, запущенное в режиме исполняемого файла, рисунок 11.
Чтобы протестировать работоспособность модуля, был придуман пример с гипотетическими пользовательскими данными. Во время тестирования основной целью была проверка функциональной работоспособности программного модуля, а не подбор значений, соответствующих реальным представлениям о расчете мощности АСУ.
Рисунок 11 - Успешный запуск модуля расчета мощности АСУ
Рисунок 12 - Результат тестирования модуля расчета мощности АСУ
Таким образом, в результате работы модуля был рассчитан показатель мощности автоматизированной системы управления.
3.3. Оптимизация программного кода модуля
К мероприятиям по оптимизации кода модуля можно отнести объявление глобальных переменных вместо локальных. Некоторые формулы, по которым производится расчет, построены таким образом, что один рассчитанный показатель связан с вычислением другого. Например, чтобы рассчитать персонал (П), необходимо предварительно рассчитать персонал эксплуатационный (ПЭ) и управленческий (ПУ). Объявление глобальной переменной позволяет не рассчитывать несколько раз один и тот же показатель и объявлять одну и ту же переменную в теле другой функции. Если переменная объявлена глобально, то она объявляется и рассчитывается один раз, а ее последующее использование возможно в теле других функций без повторного расчета и объявления, рисунок 13.
Рисунок 13 - Глобальное объявление всех переменных для расчета в файле программного кода
3.4 Выводы по главе
В данной главе был подробно описан процесс разработки программного модуля расчета мощности АСУ.
Были выполнены мероприятия по отладке программного модуля, оптимизации программного кода и тестирование модуля на некотором гипотетическом примере.
В результате работы модуля было получено итоговое значение показателя мощности автоматизированной системы управления.
ЗАКЛЮЧЕНИЕ
В рамках курсового проектирования были достигнуты цели и успешно решены поставленные задачи работы.
В рамках первой главы был выполнен аналитический обзор существующих видов кибератак, а также средств и методик их обезвреживания. По результатам обзора были проведены сбор и систематизация полученных теоретических знаний.
Было установлено, что наиболее опасными являются таргетированные (целенаправленные) атаки, которые имеют прямой целью доступ к защищенным данным или кражу денежных средств. Кроме этого, такие атаки сложнее поддаются идентификации и обезвреживанию.
В рамках второй главы были приведены структурная схема АСУ ВН на примере соединений ПВО, а также организационная структура. Для каждого компонента было представлено подробное элементное описание.
Также в рамках главы было выполнено моделирование процесса атаки АСУ ВН на уровне прецедентов и на уровне моделирования информационных потоков. По результатам моделирования выполнены диаграмма прецедентов и диаграмма потоков данных соответственно.
В третьей главе был подробно описан процесс разработки программного модуля расчета мощности АСУ.
Были выполнены мероприятия по отладке программного модуля, оптимизации программного кода и тестирование модуля на некотором гипотетическом примере.
В результате работы модуля было получено итоговое значение показателя мощности автоматизированной системы управления.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Палаева Л.В., Хафизов А.М., Гилязетдинова А.М., Вахитова А.Р., Давыдова К.Н., Сиротина Е.Р. ОСНОВНЫЕ ВИДЫ КИБЕРАТАК НА АВТОМАТИЗИРОВАННЫЕ СИСТЕМЫ УПРАВЛЕНИЯ ТЕХНОЛОГИЧЕСКИМ ПРОЦЕССОМ И СРЕДСТВА ЗАЩИТЫ ОТ НИХ // Фундаментальные исследования. – 2017. – № 10-3. – С. 507-511.
Информационный ресурс о кибератаках «Хакерские ататки» / [Электронный ресурс], режим доступа: свободный / ссылка на источник: https://sites.google.com/site/hakerskieataki/home/vidy-hakerskih-atak, (дата обращения: 05.10.2018).
Автоматизированные системы управления и связь в ВВС: учеб. – Тверь: ВА ВКО, 2009.
ПРИЛОЖЕНИЕ А
Исходный код программы
Файл Unit1.cpp
//---------------------------------------------------------------------------
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int ASU;
int P;
int KSA;
int PU;
int PE;
int K;
int NSH;
int OBU;
int I;
int T;
int M;
int ARM;
int PTK;
int USO;
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
K = Edit1->Text.ToInt();
NSH = Edit2->Text.ToInt();
OBU = Edit3->Text.ToInt();
M = Edit4->Text.ToInt();
I = Edit5->Text.ToInt();
T = Edit6->Text.ToInt();
ARM = Edit7->Text.ToInt();
PTK = Edit8->Text.ToInt();
USO = Edit9->Text.ToInt();
KSA = ARM + PTK + USO;
PE = I + T + M;
PU = K + NSH + OBU;
P = PU + PE;
ASU = P + KSA;
Edit10->Text = ASU;
}
Файл Unit1.h
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include
#include
#include
#include
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TEdit *Edit1;
TLabel *Label1;
TLabel *Label2;
TLabel *Label3;
TLabel *Label4;
TLabel *Label5;
TLabel *Label6;
TEdit *Edit2;
TLabel *Label7;
TEdit *Edit3;
TLabel *Label8;
TEdit *Edit4;
TLabel *Label9;
TLabel *Label10;
TEdit *Edit5;
TEdit *Edit6;
TLabel *Label11;
TLabel *Label12;
TLabel *Label13;
TLabel *Label14;
TEdit *Edit7;
TEdit *Edit8;
TEdit *Edit9;
TButton *Button1;
TLabel *Label15;
TEdit *Edit10;
void __fastcall Button1Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
231а.02.08 КР Изм Лист № докум. Подпись Дата Разраб. Пояснительная записка Лит. Лист Листов Консульт. Руковод. Военная академия ВКО Кафедра № 8 Утверд.
231а.02.08 ПЗ 30 Изм. Лист № докум. Подп. Дата
1. Палаева Л.В., Хафизов А.М., Гилязетдинова А.М., Вахитова А.Р., Давыдова К.Н., Сиротина Е.Р. ОСНОВНЫЕ ВИДЫ КИБЕРАТАК НА АВТОМАТИЗИРОВАННЫЕ СИСТЕМЫ УПРАВЛЕНИЯ ТЕХНОЛОГИЧЕСКИМ ПРОЦЕССОМ И СРЕДСТВА ЗАЩИТЫ ОТ НИХ // Фундаментальные исследования. – 2017. – № 10-3. – С. 507-511.
2. Информационный ресурс о кибератаках «Хакерские ататки» / [Электронный ресурс], режим доступа: свободный / ссылка на источник: https://sites.google.com/site/hakerskieataki/home/vidy-hakerskih-atak, (дата обращения: 05.10.2018).
3. Автоматизированные системы управления и связь в ВВС: учеб. – Тверь: ВА ВКО, 2009.
Вопрос-ответ:
Что такое АСУ военного назначения?
АСУ военного назначения - это автоматизированная система управления, предназначенная для использования в военных целях.
Чем отличаются режимы "дизайнер" и "разработчик" в рамках данной среды?
В режиме "дизайнер" происходит разработка форм и распределение компонентов по этим формам, а в режиме "разработчик" программирование этих компонентов для выполнения определенных функций и для реагирования на события.
Какие задачи решает разработка алгоритма определения потенциальных кибератак?
Разработка алгоритма определения потенциальных кибератак для элементов АСУ военного назначения позволяет выявлять и предотвращать возможные атаки на систему, обеспечивая ее безопасность и непрерывную работу.
Как происходит программирование компонентов в режиме "разработчик"?
В режиме "разработчик" готовые компоненты распределяются по формам и программируются для выполнения определенных функций и реагирования на события в системе АСУ военного назначения.
На каком рисунке представлена работа в режиме "дизайнер"?
Работа в режиме "дизайнер" представлена на рисунке 5, где показана форма с распределенными по ней компонентами, которые впоследствии будут программироваться для выполнения определенных функций и реагирования на события.
Зачем нужен алгоритм определения потенциальных кибератак на элементы АСУ военного назначения?
Алгоритм определения потенциальных кибератак на элементы АСУ военного назначения необходим для обеспечения безопасности военных систем и предотвращения возможных киберугроз.
Какие режимы разработки предусмотрены в рамках данной среды?
В рамках данной среды предусмотрены два режима разработки: "дизайнер" и "разработчик".
Что представляет собой работа в режиме дизайнера?
Работа в режиме дизайнера представляет собой распределение готовых компонентов по форме, которые впоследствии программируются на выполнение определенных функций и реагируют на события.
Какие функции выполняют готовые компоненты в рамках данной среды?
Готовые компоненты в данной среде выполняют определенные функции, такие как реакция на события и выполнение задач.
Что изображено на рисунке 5?
На рисунке 5 изображена форма с компонентами в режиме "дизайнер", где готовые компоненты распределены по форме для последующей программирования.
Зачем нужна разработка алгоритма определения потенциальных кибератак на элементы АСУ военного назначения?
Разработка алгоритма определения потенциальных кибератак на элементы АСУ военного назначения необходима для повышения безопасности военной системы. Алгоритм позволяет выявлять возможные угрозы и атаки, чтобы быть готовым к ним и предотвратить негативные последствия.
В чем заключается режим работы "дизайнера" при разработке алгоритма определения потенциальных кибератак?
Режим работы "дизайнера" представляет собой размещение готовых компонентов на форме. В этом режиме происходит планирование алгоритма, определение структуры и взаимодействия компонентов.