Скачиваний:
3
Добавлен:
15.04.2023
Размер:
748.84 Кб
Скачать

2.2 Задание 2

Схема шифрования CCMP представлена на рисунке 2.3. Красные стрелки показывают вычисление проверочной суммы MIC, зеленые стрелки показывают процесс шифрования.

Рисунок 2.3 – Схема шифрования CCMP

Схема шифрования CCMP состоит из следующих шагов:

  • увеличение счетчика PN и генерация Nonce. PN комбинируется с MAC-адресом отправителя и меткой приоритета QoS, в результате чего получается 104-битный Nonce (в данной работе MAC-адрес точки доступа(шестн.): 000726404eff , MAC-адрес клиента (шестн.): 9439e5b014e5);

  • все защищаемые поля заголовка составляются воедино, образуя AAD;

  • генерируется проверочная сумма MIC, при этом используется nonce и TK (часть ключа PTK). Результат шифрования последнего блока в цепочке из 128-бит которые и будут являться проверочной суммой, называемой MIC.

PTK = 6750644b12ab7963a0e9b8e1c8edc4d00c03310e35bce4896a0adc7e7bfbc5e3ca4f245b0f195ed6949606b154702e5b

TK = ca4f245b0f195ed6949606b154702e5b

MIC = 00000000000000000000000000000000

  • данные вместе с MIC шифруются алгоритмом AES в режиме счетчика;

  • генерируется заголовок CCMP, содержащий PN и идентификатор ключа (2 бита). Идентификатор ключа указывает на то, какой ключ использовался при шифровании – PTK (=6750644b12ab7963a0e9b8e1c8edc4d00c03310e35bce4896a0adc7e7bfbc5e3ca4f245b0f195ed6949606b154702e5) или GTK (40fd1604a1fe7153b85385f93a423effa0ae6aa9063098b553b03c1b06cba540);

  • заголовок CCMP добавляется к зашифрованным данным и кадр отправляется.

В схеме шифрования CCMP предусмотрено два режима:

  • режим шифрования блоками в цепочку (Cipher-Block Chaining);

  • режим счетчика (counter mode).[7]

Оба режима требуют подобия вектора инициализации в дополнение к ключу, поэтому в CCMP в качестве вектора инициализации используется Nonce.

Режимы шифрования CCMP представлены на рисунке 2.4.

Рисунок 2.4 – Режимы шифрования CCMP

Режим шифрования блоками в цепочку – Cipher-Block Chaining.

При шифровании в цепочку получившийся ранее 104 битный Nonce добивается 24 нулями для получения 128 битного вектора. Получившийся 128 битный nonce и 128 битный ключ TK (часть PTK) используется для шифрования по следующему алгоритму:

  • первый 128-битный блок шифруемых данных складывается по модулю 2 (XOR) со 128-битным nonce;

  • получившийся 128-битный вектор шифруется алгоритмом AES с помощью ключа TK, в результате получаем первые 128-бит зашифрованных данных;

  • следующий 128-битный блок данных складывается по модулю 2 (XOR) с зашифрованным предыдущим блоком вместо Nonce;

  • результат снова шифруется тем же ключом, тем самым получаем вторые 128-бит зашифрованных данных;

  • шаги 3 и 4 повторяются до тех пор, пока весь кадр не будет зашифрован.[7]

Таким образом, каждый шифруемый 128-битный блок данных использует предыдущий зашифрованный блок, образуя цепочку.

Режим счетчика – counter mode.

В режиме счетчика 104-битный nonce дополняется 24-битным счетчиком. В самом начале шифрования счетчик обнуляется. Данные шифруются следующим образом:

  • Nonce+счетчик шифруются алгоритмом AES с помощью ключа TK;

  • результат шифрования складывается по модулю 2 (XOR) с первыми 128-битами данных, образуя при этом первый зашифрованный блок;

  • далее счетчик увеличивается на единицу;

  • шаги 1-3 повторяются до тех пор, пока весь кадр не будет зашифрован.

По сравнению с предыдущим режимом, каждый 128-битный блок данных шифруется независимо от другого, что делает режим счетчика проще с точки зрения вычислительных затрат. Кроме того, в режиме счетчика существует возможность распараллелить вычисления, тем самым увеличив скорость шифрования.

Заключение

В данной курсовой работе были рассмотрены методы аутентификации в беспроводных сетях и различные алгоритмы шифрования, а также выполнены следующие задачи:

  • генерирование последовательности Anonce и Snonce;

  • генерирование группового ключа GTK;

  • вычисление ключа PTK и разделение его на части KEK, KCK и TK;

  • сконструированы четыре передаваемых EAPOL-Key кадра в процессе четырехкратного рукопожатия;

  • изображена и пояснена схема процесса шифрования с указанием вычисленных данных.

Сравнив различные алгоритмы шифрования в беспроводных сетях, сделан вывод, что алгоритм WEP-шифрования имеет множество недостатков и может быть взломан за короткое время, а стандарты WPA-шифрования являются в большей степени надежными и гарантируют относительно высокий уровень защищенности. Схема CCMP обеспечивает наилучшую защиту, а самая ненадежная реализация WPA - это режим PSK. В случае PSK не стоит использовать простые пароли, так как сеть будет просто взломать методом обычного перебора по словарю.

Библиография

  1. Туранцев Дмитрий Сергеевич Проблемы безопасности в беспроводных ЛВС IEEE 802. 11 // Научно-технический вестник информационных технологий, механики и оптики. 2008. №51. URL: https://cyberleninka.ru/article/n/problemy-bezopasnosti-v-besprovodnyh-lvs-ieee-802-11 (дата обращения: 03.04.2020).

  2. Лабутин Николай Григорьевич Инновационные способы защиты беспроводных компьютерных соединений в целях обеспечения экономической безопасности // Юридическая наука и практика. 2010. №1 (12). URL: https://cyberleninka.ru/article/n/innovatsionnye-sposoby-zaschity-besprovodnyh-kompyuternyh-soedineniy-v-tselyah-obespecheniya-ekonomicheskoy-bezopasnosti (дата обращения: 03.04.2020).

  3. WPA (Wi-Fi Protected Access) // Национальная библиотека им. Н. Э. Баумана. 2017. URL: https://ru.bmstu.wiki/WPA_(Wi-Fi_Protected_Access) (дата обращения: 03.04.2020).

  4. CCMP (CCM mode Protocol) // Национальная библиотека им. Н. Э. Баумана. 2017. URL: https://ru.bmstu.wiki/CCMP_(CCM_mode_Protocol) (дата обращения: 03.04.2020).

  5. Password-Based Key Derivation Function 2 (PBKDF2) A JavaScript implementation (version 1.5) // Password-Based Key Derivation Function 2 (PBKDF2). URL: http://anandam.name/pbkdf2/ (дата обращения: 02.04.2020).

  6. QuickHash.com // QuickHash.com: MD5, CRC32, SHA1, SHA256, Hash Online, Online Hash Generator, Hash Calculator. URL: https://quickhash.com/ (дата обращения 02.04.2020).

  7. ЗИБСС: Защита информации в сетях IEEE 802.11 (Wi-Fi) // Защита информации в сетях IEEE 802.11 (Wi-Fi) – URL:https://eios.sibsutis.ru/mod/lesson/view.php?id=22376&pageid=2280&startlastseen=yes (дата обращения:03.04.2020).

Приложение А. Кадры EAPOL

Таблица A.1 – Первое рукопожатие

Название поля

Размер

поля

байт/бит

Значение поля (двоичный B или

шестнадцатеричный вид)

ProtocolVersion

2 бита

00 B

0b00

Type

2 бита

00 B

SubType

4 бита

1011 B

To DS

1 бит

0 B

From DS

1 бит

0 B

Moreflag

1 бит

0 B

Retry

1 бит

0 B

PwrMgt

1 бит

0 B

MoreData

1 бит

0 B

Protected

1 бит

0 B

Order

1 бит

0 B

Duration ID

2 байта

N/A - Зависит от модуляции

DestinationAddress

6 байт

9439e5b014e5

SourceAddress

6 байт

000726404eff

BSSID Address

6 байт

000726404eff

SequenceControl

FragmentNumber

4 бита

0000 B

SequenceNumber

12 бит

000000000000b

Frame Body

EAPOL frame

DescriptorType

1 байт

02

KeyInformation

2 байта

010 0 00 0 1 0 0 0 0 0 000 B = 4100

Keylength

2 байта

0010

Keyreplaycounter

8 байт

0000000000000000

KeyNonce

32 байта

4014c50f75dfc436a8ae365a5e93686dc2a0ae75337a6e1e1fd3e04677ae9040

EAPOL-Key IV

16 байт

00000000000000000000000000000000

Key RSC

8 байт

0000000000000000

Reserved

8 байт

0000000000000000

Key MIC

16 байт

00000000000000000000000000000000

Key Data Length

2 байта

0016

Key

Data -

PMKID

KDE

Type

1 байт

dd

Length

1 байт

14

OUI

3 байта

000fac02

DataType

1 байт

04

PMKID

16 байт

00000000000000000000000000000000

CRC

4 байта

N/A, т.к. Duration ID неизвестно

CRC

4 байта

Таблица А.2 – Второе рукопожатие

Название поля

Размер

поля

байт/бит

Значение поля (двоичный B или

шестнадцатеричный вид)

ProtocolVersion

2 бита

00 B

0b00

Type

2 бита

00 B

SubType

4 бита

1011 B

To DS

1 бит

0 B

From DS

1 бит

0 B

Moreflag

1 бит

0 B

Retry

1 бит

0 B

PwrMgt

1 бит

0 B

MoreData

1 бит

0 B

Protected

1 бит

0 B

Order

1 бит

0 B

Duration ID

2 байта

N/A - Зависит от модуляции

DestinationAddress

6 байт

000726404eff

SourceAddress

6 байт

9439e5b014e5

BSSID Address

6 байт

000726404eff

SequenceControl

FragmentNumber

4 бита

0000 B

SequenceNumber

12 бит

000000000001b

Frame Body

EAPOL frame

DescriptorType

1 байт

02

KeyInformation

2 байта

010 0 00 0 0 1 0 0 0 0 000 B = 4080

Keylength

2 байта

0010

Keyreplaycounter

8 байт

0000000000000000

KeyNonce

32 байта

40398518913d33a6d13bdfe57575e346c21848ab33b01d041831878407936a40

EAPOL-Key IV

16 байт

00000000000000000000000000000000

Key RSC

8 байт

0000000000000000

Reserved

8 байт

0000000000000000

Key MIC

16 байт

00000000000000000000000000000000

KeyDataLength

2 байта

0016

Key

Data -

PMKID

RSN

Element ID

1 байт

30

Length

1 байт

14

Version

2 байта

0100

GroupCipherSuite

4 байта

000fac02

PairwiseChiperSuiteCount

2 байта

0100

PairwiseChiperSuitelist

4 байта

000fac02

AKM SuiteCount

2 байта

0100

AKM SuiteList

4 байта

000fac02

RSN capabilities

2 байта

1000000000000000 = 8000

CRC

4 байта

N/A, т.к. Duration ID неизвестно

Таблица А.3 – Третье рукопожатие

Название поля

Размер

поля

байт/бит

Значение поля (двоичный B или

шестнадцатеричный вид)

Frame Control

ProtocolVersion

2 бита

00 B

0b00

Type

2 бита

00 B

SubType

4 бита

1011 B

To DS

1 бит

0 B

From DS

1 бит

0 B

Moreflag

1 бит

0 B

Retry

1 бит

0 B

PwrMgt

1 бит

0 B

MoreData

1 бит

0 B

Protected

1 бит

0 B

Order

1 бит

0 B

Duration ID

2 байта

N/A - Зависит от модуляции

DestinationAddress

6 байт

9439e5b014e5

SourceAddress

6 байт

000726404eff

BSSID Address

6 байт

000726404eff

SequenceControl

FragmentNumber

4 бита

0000 B

SequenceNumber

12 бит

000000000010b

Frame Body

EAPOL frame

DescriptorType

1 байт

02

KeyInformation

2 байта

010 1 00 1 1 1 1 0 0 1 000 B = 53c8

Keylength

2 байта

0010

Keyreplaycounter

8 байт

0000000000000001

KeyNonce

32 байта

0000000000000000000000000000000000000000000000000000000000000000

EAPOL-Key IV

16 байт

00000000000000000000000000000000

Key RSC

8 байт

0000000000000001

Reserved

8 байт

0000000000000000

Key MIC

16 байт

00000000000000000000000000000000

KeyDataLength

2 байта

003е

Key

Data -

PMKID

RSN

Element ID

1 байт

30

Length

1 байт

14

Version

2 байта

0100

GroupCipherSuite

4 байта

000fac02

PairwiseChiperSuiteCount

2 байта

0100

PairwiseChiperSuitelist

4 байта

000fac02

AKMSuiteCount

2 байта

0100

AKM SuiteList

4 байта

000fac02

RSN capabilities

2 байта

1000000000000000 = 8000

Type

1 байт

dd

Length

1 байт

26

OUI

3 байта

000fac

DataType

1 байт

01

Data

KeyID

1 бит

0 B

Tx

2 бита

01 B

Reserved

5 бит

00000 B

Reserved

1 байт

00

GTK

32 байт

40fd1604a1fe7153b85385f93a423effa0ae6aa9063098b553b03c1b06cba540

PMKID

16 байт

00000000000000000000000000000000

CRC

4 байта

N/A, т.к. Duration ID неизвестно

Таблица А.4 – Четвертое рукопожатие

Название поля

Размер

поля

байт/бит

Значение поля (двоичный B или

шестнадцатеричный вид)

Frame Control

ProtocolVersion

2 бита

00 B

0b00

Type

2 бита

00 B

SubType

4 бита

1011 B

To DS

1 бит

0 B

From DS

1 бит

0 B

Moreflag

1 бит

0 B

Retry

1 бит

0 B

PwrMgt

1 бит

0 B

MoreData

1 бит

0 B

Protected

1 бит

0 B

Order

1 бит

0 B

Duration ID

2 байта

N/A - Зависит от модуляции

DestinationAddress

6 байт

000726404eff

SourceAddress

6 байт

9439e5b014e5

BSSID Address

6 байт

000726404eff

SequenceControl

FragmentNumber

4 бита

0000 B

SequenceNumber

12 бит

000000000011b

Frame Body

EAPOL frame

DescriptorType

1 байт

02

KeyInformation

2 байта

010 1 00 0 0 1 1 0 0 1 000 b = 50C8

Keylength

2 байта

0010

Keyreplaycounter

8 байт

0000000000000001

KeyNonce

32 байта

000000000000000000000000000000

0000000000000000000000000000000000

EAPOL-Key IV

16 байт

00000000000000000000000000000000

Key RSC

8 байт

0000000000000001

Reserved

8 байт

0000000000000000

Key MIC

16 байт

00000000000000000000000000000000

KeyDataLength

2 байта

0000

KeyData

CRC

4 байта

N/A, т.к. Duration ID неизвестно