Closed NikitunPVLK closed 8 months ago
Користувачі - розробникі та користувачі вбудованих систем.
У wolfSSL до версії 5.5.2, якщо увімкнено функції зворотного виклику (через прапорець WOLFSSL_CALLBACKS), зловмисний клієнт TLS 1.3 або мережевий зловмисник може спровокувати перечитання буфера на ділянці 5 байт. (Прапорець WOLFSSL_CALLBACKS призначений лише для налагодження).
bf-cfb позначає режим шифрування Cipher Feedback Mode (CFB) для блочного шифру Blowfish (BF). Blowfish - це симетричний блоковий шифр, який розробив Брюс Шнайєр 1993 року.
#if defined(WOLFSSL_CALLBACKS)
/* add name later, add on record and handshake header part back on */
if (ssl->toInfoOn) {
int add = RECORD_HEADER_SZ + HANDSHAKE_HEADER_SZ;
AddPacketInfo(ssl, 0, handshake, input + *inOutIdx - add,
size + add, READ_PROTO, ssl->heap);
AddLateRecordHeader(&ssl->curRL, &ssl->timeoutInfo);
}
#endif
We have that `RECORD_HEADER_SZ = 5` and `HANDSHAKE_HEADER_SZ = 4` so `add = 9`
while `*inOutIdx` is still set to `4`. Therefore, the pointer indicating the
beginning of the alleged input that is given to the `AddPacketInfo` function
(argument `data`) is `data = input + *inOutIdx - add = input - 5`. This buffer
starts 5 bytes before the actual input buffer. The argument `sz = size + add` is
the total length of the input, which is too long here `16529` instead of `16524`
bytes.
5 балів
Завдання №1
Відомо, що Національний інститут стандартів і технологій США (National Institute of Standards and Technology, NIST) використовує дані системи оцінки поширених уразливостей (Common Vulnerability Scoring System, CVSS), які є у відкритому доступі за посиланням - https://nvd.nist.gov/vuln-metrics/cvss
Розглянувши приклад, номер якого співпадає з номером вашого варіанту виконання лабораторних робіт, надайте відповіді на наступні запитання.
Запитання №1.1 (1 бал)
Опишіть ПЗ або програму бібліотеку, в яких знайдено вразливість:
Запитання №1.2 (1 бал)
Опишіть знайдену вразливість , переклавшу на українську мову розділ Description.
Запитання №1.3 (1 бал)
Наведіть фрагменти прикладів уразливого програмного коду, розглянувши розділ References to Advisories, Solutions, and Tools.
Завдання № 2
В таблиці 2 наведено приклади назв криптографічних алгоритмів, які реалізовано в програмній бібліотеці OpenSSL.
Таблиця 2 – Приклад назв криптографічних алгоритмів
Оберіть криптографічний алгоритм, враховуючи номер вашого варіанту, та виконайте наступні завдання.
Запитання № 2.1 (1 бал)
Розшифруйте абревіатурну назву криптографічного алгоритму та режиму шифрування, а також вкажіть роки їх створення.
Запитання № 2.2 (1 бал)
Опишіть переваги та недоліки криптографічного алгоритму та режиму шифрування.