Tоshkеnt aхbоrоt tехnоlоgiyalari



Download 225,02 Kb.
bet4/6
Sana31.12.2021
Hajmi225,02 Kb.
#247272
1   2   3   4   5   6
Bog'liq
loyiha 2

Algoritmlar

OpenSSL turli xil kriptografik algoritmlarni qo'llab-quvvatlaydi:

Shifrlar

AES, Blowfish, Kameliya, Chacha20, Poly1305, Urug ', CAST-128, DES, IDEA, RC2, RC4, RC5, Uch karra DES, GOST 28147-89,[18] SM4

Kriptografik xash funktsiyalari

MD5, MD4, MD2, SHA-1, SHA-2, SHA-3, RIPEMD-160, MDC-2, GOST R 34.11-94,[18] Bleyk2, Girdob,[19] SM3

Ochiq kalitli kriptografiya

RSA, DSA, Diffie-Hellman kalit almashinuvi, Elliptik egri chiziq, X25519, Ed25519, X448, Ed448, GOST R 34.10-2001,[18] SM2

(Oldinga mukammal sir yordamida qo'llab-quvvatlanadi Diffie-Hellman elliptik egri chizig'i 1.0 versiyasidan beri.[20])

FIPS 140 tasdiqlash

FIPS 140 kriptografik modullarni sinovdan o'tkazish va sertifikatlash bo'yicha AQSh Federal dasturi. OpenSSL-ning FOM 1.0 uchun FIPS 140-1-ning dastlabki sertifikati 2006 yil iyul oyida "tasdiqlangan modulning tashqi dasturiy ta'minot bilan o'zaro ta'siri to'g'risida savollar tug'ilganda" bekor qilingan. Ushbu modul FIPS 140-2 ga yo'l qo'ymasdan oldin 2007 yil fevral oyida qayta sertifikatlangan.[21] OpenSSL 1.0.2, FIPS 140-2 tasdiqlangan muhitda FIPS tomonidan tasdiqlangan algoritmlarni etkazib berish uchun qurilgan OpenSSL FIPS ob'ekt modulidan (FOM) foydalanishni qo'llab-quvvatladi.[22][23] OpenSSL munozarali ravishda 1.0.2 arxitekturasini 2019 yil 31-dekabrdan kuchga kirgan holda "Hayotning oxiri" yoki "EOL" toifalariga kiritishga qaror qildi, ammo bu uning OpenSSL-ning FIPS versiyasi uchun qo'llab-quvvatlanadigan yagona versiyasi ekanligiga qarshi edi.[24] EOL natijasida ko'plab foydalanuvchilar FOM 2.0-ni to'g'ri joylashtira olmadilar va 1.0.2 arxitekturasi uchun kengaytirilgan qo'llab-quvvatlashni ta'minlamaganliklari sababli mos tushishdi, garchi FOM o'zi sakkiz oy davomida tasdiqlangan bo'lsa ham.

FIPS ob'ektiv moduli 2.0 FIPS 140-2 2020 yil 1 sentyabrgacha bir nechta formatlarda tasdiqlangan bo'lib, NIST FIPS 186-2 dan foydalanishni bekor qilganda Raqamli imzo standarti va mos kelmaydigan barcha modullarni "Tarixiy" deb belgilab qo'ydi. Ushbu belgi Federal agentliklarga modulni har qanday yangi xaridlarga qo'shmaslik to'g'risida ogohlantirishni o'z ichiga oladi. OpenSSL-ning uchta tekshiruvi ham eskirishga kiritilgan - OpenSSL FIPS ob'ekt moduli (sertifikat # 1747)[25], OpenSSL FIPS ob'ektiv moduli SE (sertifikat # 2398)[26]va OpenSSL FIPS ob'ektiv moduli RE (sertifikat # 2473)[27]. Maslahatchilar tomonidan yaratilgan ko'plab 'Private Label' OpenSSL-ga asoslangan tekshiruvlar va klonlar ham tarixiy ro'yxatga ko'chirildi, ammo almashtirishga mos keladigan ba'zi bir tasdiqlangan modullar, masalan Google-dan BoringCrypto[28] va SafeLogic-dan CryptoComply[29].

2020 yil oktyabridan boshlab OpenSSL-da faol FIPS 140 tekshiruvi mavjud emas. Uzoq vaqtdan beri va'da qilingan 3.0 arxitekturasi FIPS rejimini tiklashni va'da qilmoqda va FIPS 140-2 sinovidan o'tishi rejalashtirilgan, ammo bu muhim kechikishlar ushbu rejani shubha ostiga qo'ydi. Ushbu harakat birinchi marta 2016 yilda SafeLogic ko'magi bilan boshlangan[30][31][32] va 2017 yilda Oracle-ning qo'shimcha yordami[33][34], ammo bu jarayon juda qiyin bo'lgan.[35] FIPS 140-2 2021 yil 21-sentyabrda sinovlarni tugatadi va OpenSSL boshqaruv qo'mitasining ushbu kundan keyin testlarni hal qilish uchun FIPS 140-3 standartlarini aks ettirish bo'yicha harakatlarini qayta ko'rib chiqish ishtahasi noma'lum. 2020 yil 20-oktabrda OpenSSL FIPS Provayder 3.0 sinov laboratoriyasi bilan rasmiy aloqani va FIPS 140-2 tekshiruvini davom ettirish niyatini aks ettiruvchi sinovlar ro'yxatidagi CMVP dasturiga qo'shildi.[36]

Litsenziyalash

OpenSSL OpenSSL litsenziyasi va SSLeay litsenziyasi bo'yicha ikki tomonlama litsenziyaga ega, ya'ni har ikkala litsenziyaning shartlari ham amal qiladi.[37] OpenSSL litsenziyasi Apache litsenziyasi 1.0 va SSLeay litsenziyasi 4 bandga o'xshashdir BSD litsenziyasi.

OpenSSL litsenziyasi bo'lgani kabi Apache litsenziyasi 1.0, lekin Apache License 2.0 emas, reklama materialida va har qanday qayta tarqatishda ("OpenSSL" litsenziyasining 3 va 6-bo'limlari) paydo bo'lishi uchun "ushbu mahsulot OpenSSL Toolkit-da foydalanish uchun OpenSSL Project tomonidan ishlab chiqilgan dasturiy ta'minotni o'z ichiga oladi" iborasini talab qiladi. Ushbu cheklov tufayli OpenSSL litsenziyasi va Apache litsenziyasi 1.0 bilan mos kelmaydi GNU GPL.[38]Ba'zi GPL ishlab chiquvchilari qo'shilgan OpenSSL istisnosi ularning tizimida OpenSSL-dan foydalanishga maxsus ruxsat beruvchi litsenziyalariga. GNU Wget va ko'tarilish ikkalasi ham bunday istisnolardan foydalanadi.[39][40] Ba'zi paketlar (masalan To'fon) GPL litsenziyasini aniq litsenziyaning boshida qo'shimcha qismini qo'shib, istisnosizni hujjatlashtirgan holda o'zgartirish.[41] Boshqa paketlar LGPLlitsenziyalangan GnuTLS va MPLlitsenziyalangan NSS, ikkalasi ham bitta vazifani bajaradi.

OpenSSL 2015 yil avgust oyida aksariyat ishtirokchilarning imzo qo'yishini talab qilishini e'lon qildi Hissadorlar uchun litsenziya shartnomasi (CLA) va bu oxir-oqibat OpenSSL bo'ladi qayta litsenziyalangan shartlariga muvofiq Apache litsenziyasi 2.0.[42] Ushbu jarayon 2017 yil mart oyida boshlangan,[43] va 2018 yilda yakunlandi.[44]

E'tiborga loyiq zaifliklar

RSA tugmachalariga hujumlarni vaqtini belgilash

2003 yil 14 martda RSA tugmalariga qarshi hujum aniqlandi, bu OpenSSL 0.9.7a va 0.9.6 versiyalaridagi zaiflikni ko'rsatmoqda. Ushbu zaiflikka CAN-2003-0147 identifikatori berilgan Umumiy zaifliklar va ta'sirlar (CVE) loyihasi. RSA ko'r-ko'rona sukut bo'yicha OpenSSL-da yoqilmagan edi, chunki OpenSSL-dan foydalanib SSL yoki TLS-ni taqdim etish oson emas.

Xizmatni rad etish: ASN.1ni tahlil qilish

OpenSSL 0.9.6k-da xatolik yuz berdi ASN.1 ketma-ketliklar Windows mashinalarida 2003 yil 4-noyabrda topilgan juda ko'p rekursiyalarni keltirib chiqardi. Windows katta rekursiyalarni to'g'ri boshqarolmadi, shuning uchun OpenSSL ishdan chiqdi. O'zboshimchalik bilan ko'p sonli ASN.1 ketma-ketliklarini yuborish natijasida OpenSSL ishlamay qolishi mumkin.

OCSP-ning asosiy zaifligi

Handshake yaratishda mijoz noto'g'ri formatlangan ClientHello xabarini yuborishi mumkin, bu esa xabar oxiridan ko'proq OpenSSL tahliliga olib keladi. Identifikator tayinlandi CVE-2011-0014 CVE loyihasi tomonidan barcha OpenSSL versiyalari 0.9.8h dan 0.9.8q gacha va OpenSSL 1.0.0 dan 1.0.0c gacha ta'sir ko'rsatdi. Ajralish noto'g'ri xotira manzilini o'qishga olib kelishi mumkinligi sababli, tajovuzkor a sabab bo'lishi mumkin edi DoS. Ba'zi ilovalar tahlil qilinganlarning mazmunini ochib berishi ham mumkin edi OCSP kengaytmalar, bu hujumchining ClientHello-dan keyin kelgan xotira tarkibini o'qiy olishiga olib keladi.[45]

ASN.1 BIO zaifligi

Asosiy kirish / chiqish (BIO) dan foydalanilganda[46] yoki ishonchsiz o'qish uchun FILE asosidagi funktsiyalar DER formatidagi ma'lumotlar, OpenSSL himoyasiz. Ushbu zaiflik 2012 yil 19 aprelda aniqlandi va unga CVE identifikatori tayinlandi CVE-2012-2110. OpenSSL-ning SSL / TLS kodiga bevosita ta'sir qilmasa ham, ASN.1 funktsiyalaridan foydalangan har qanday dastur (xususan, d2i_X509 va d2i_PKCS12) ham ta'sirlanmagan.[47]

SSL, TLS va DTLS oddiy matnni tiklash hujumi

SSL, TLS va DTLS-da CBC shifr-to'plamlari bilan ishlashda OpenSSL MACni qayta ishlash vaqtida xujumga qarshi himoyasiz deb topildi. Nadhem Alfardan va Kenni Paterson bu muammoni aniqladilar va o'zlarining xulosalarini nashr etdilar[48] 2013 yil 5 fevralda. Zaif tomonga CVE identifikatori berilgan CVE-2013-0169.

Bashoratli shaxsiy kalitlar (Debianga xos)

OpenSSL-ning psevdo-tasodifiy sonlar generatori murakkab dasturlash usullaridan foydalangan holda entropiyani oladi. Saqlab qolish uchun Valgrind Tegishli ogohlantirishlardan tahlil vositasi Debian tarqatish qo'llaniladi a yamoq OpenSSL to'plamining Debian variantiga, u tasodifiy raqamlar generatorini ishlab chiqarishi mumkin bo'lgan shaxsiy kalitlarning umumiy sonini 32 768 gacha cheklab qo'ygan.[49][50] Buzilgan versiya 2006 yil 17 sentyabrdagi Debian versiyasiga kiritilgan (0.9.8c-1 versiyasi), shuningdek Debian asosidagi boshqa tarqatishlarga zarar etkazgan. Ubuntu. Foydalanishga tayyor ekspluatatsiya osonlikcha mavjud.[51]

Xato haqida Debian 2008 yil 13-mayda xabar bergan. Debian 4.0 tarqatishida (etch) ushbu muammolar 0.9.8c-4etch3 versiyasida tuzatilgan, Debian 5.0 tarqatish (lenny) uchun tuzatishlar 0.9.8g versiyasida berilgan -9.[52]

CCS in'ektsiyasining zaifligi

CCS in'ektsiyasining zaifligi (CVE-2014-0224) - bu kalit material uchun ishlatiladigan OpenSSL usullarining zaifligi natijasida kelib chiqadigan xavfsizlikni chetlab o'tish zaifligi.[58]

Ushbu zaiflikdan o'rtada odam hujumi yordamida foydalanish mumkin,[59] bu erda tajovuzkor tranzitdagi trafikni parolini o'zgartirishi va o'zgartirishi mumkin. Uzoqdan tasdiqlanmagan tajovuzkor ushbu zaiflikdan zaif kalit materialidan foydalanishga majbur qilish uchun maxsus tayyorlangan qo'l siqish yordamida foydalanishi mumkin. Muvaffaqiyatli ekspluatatsiya buzg'unchining potentsial sezgir ma'lumotlarga kirish huquqini olish uchun xavfsizlikni chetlab o'tish holatiga olib kelishi mumkin. Hujum faqat zaif mijoz o'rtasida amalga oshirilishi mumkin va server.

OpenSSL mijozlari 0.9.8za, 1.0.0m va 1.0.1h versiyalaridan oldin OpenSSL-ning barcha versiyalarida zaifdirlar. Serverlar faqat OpenSSL 1.0.1 va 1.0.2-beta1-da himoyasiz ekanligi ma'lum. 1.0.1 dan oldingi OpenSSL serverlaridan foydalanuvchilarga ehtiyot chorasi sifatida yangilash tavsiya etiladi.[60]
Ma'lum bir fayl yoki papkani shifrlashingiz kerak bo'lganda to'liq vaziyatlar. Masalan, agar ma'lumotlar ochiq kanallar orqali uzatilgan bo'lsa yoki tashqi tashuvchiga turing. Ko'pchilik (shu jumladan, shu jumladan) truarrtetdan foydalanadi, ammo ushbu dasturning asosiy maqsadi shifrlangan bo'limlar bilan ishlashdir, shuning uchun bu holatda bu juda yaxshi emas.

Openssl bunday vazifalar uchun juda mos keladi - ishonchli krossovka platformadagi eritma. Openssl turli xil shifrlash algoritmlarini qo'llab-quvvatlaydi, shuningdek, u ko'plab operatsion tizimlarda o'rnatiladi va qolganlarning o'rnatilishi qiyin bo'lmaydi.

Xabracat ostida - Openssl-da nosimmetrik va assimetrik shifrlash asoslari, chunki bir marta ishlatiladigan kalit bilan amametrik shifrlashning skriptlari.

Ma'lumotni himoya qilishning eng oddiy usuli - nosimmetrik shifrlash. Quyidagi buyruqlar AES algoritmidan foydalanib, AES algoritmidan foydalangan holda 256 bit bilan:

Opensl Narx-256-CBC -Salt -in -in -in -in -in -in
Opensl Narx-Sc -A-256-CBC - Hujjatlar.zip

Ushbu buyruqlarning muammosi, ular parolni kiritishni talab qilishi mumkin. Keraksiz bo'lganda vaziyatlar mavjud. Masalan, avtomatik zaxira / shifrlash ma'lumotlari, yoki ma'lumotlar bitta kishi bilan shifrlangan bo'lsa va boshqalarni shifrlash.

Bunday holatlar uchun ochiq kalit shifrlash ixtiro qilingan. Umuman olganda, siz ochiq va yopiq kalitlarni yaratishingiz kerak. Birinchi buyruq shaxsiy kalit kalitni yaratadi xususiy kalitni yaratadi, ikkinchisi ochiq kalitni yaratadi. Davlat:

Opensl Genrsa -UUut xususiy.pem - 656 2048


Opensl RSA -in xususiy.pem -pubout -pubout -uut -pem

Natijada, siz 2048 bitni bir juft kalitni olasiz. Afsuski, RSA tizimida shifrlangan ma'lumotlar hajmi hajmi bilan cheklangan, shuning uchun u 2kb dan ortiq shifrlash uchun shifrlanmaydi. Ushbu ma'lumotni bir martalik kalit yordamida nosimmetrik algoritm (yuqoridagilarga o'xshash) yordamida shifrlashning bir usuli mavjud. Keyin ushbu bir martalik kalit ochiq kalit bilan shifrlanadi. Bir marta foydalaniluvchan kalitni o'chirish paytida yopiq. Bu haqda ko'proq narsa allaqachon yozilgan edi.

Avtomatlashtirishni avtomatlashtirish quyidagi skriptga yordam beradi, natijada siz shifrlangan shaklda (encrypt.sh) olasiz:

Filename \u003d "$ 1"


Publicky \u003d "$ 2"
Sessiyachey \u003d "$ 3"
Natija \u003d "$ 4"

# Tasodifiy nosimmetrik-kalitni yarating


O'tish \u003d 30.
agar [-C / dev / urland] bo'lsa; Keyin.
Kalit \u003d 'bosh - 30 / dev / urandalar | Openslce-yase64 '
Boshqa.
Kalit \u003d `opensl rand -base64
fi
Eksport kaliti

# Jamoat kalitidan foydalanib nosimmetrik tugmachani shifrlang


Opensl RsAtl -Ncrytle -Ninterey "$ centticky" - "$ sessionkey" -Pubin< $ Tugmasi.
EOF.
# Faylni shifrlash


Opensl Nece-256-CBC-Pass Hearch: "$ Fayl nomi" - "$" "natija"

Hujjatlarni shifrlash uchun quyidagi buyruq ommaviy axborot kalitidan foydalanadilar.zi fayl. U sessiya va shifrlangan hujjatlarning shifrlangan bir martali ishlatiladigan kalitini keltirib chiqaradi. Ma'lumotlar:

./encrypt.sh Hujjatlar.zip davlat.pem sessiyasi.key

Dicryt uchun skript (Dyrovpt.sh):

Xususiyxey \u003d "$ 1"
Sessiyakey \u003d "$ 2"
Shifrlangan \u003d "3 dollar"
Shrifted \u003d "$ 4"

# Xususiy kalit yordamida nosimmetrik tugmachani shifrlang


Kalit \u003d 'Openssl RsAutl -DecryPT -inkey "$ camegi" - "$ sessiyakey" "
Eksport kaliti

# Faylni shifrlang


Opensl Narx-256-CBC -D-DAST HIMOYA: "$ shifrlangan" - "$ shifrid"

Doimiy buyruq shaxsiy kalit kaliti xususiy kalitni va sessiyani va sessiya.keyi hujjatlarni aniqlash uchun bir marta ishlatiladigan kalitni ishlatadi. U hujjatlarni keltirib chiqaradi.ziP fayl:

./decrypt.sh xususiy.pem sessiyasi.key hujjatlar.zip

Ko'rinib turibdiki, ochiq kalit bilan shifrlash nosimmetrik kabi oddiy bo'lishi mumkin. Ammo yanada osonroq bor. Ushbu xabarni yozish uchun men SBF₅ blogi tomonidan so'raldim. Uning muallifi (shubhasiz, mendan I) papka arxivini yozdi, uni ochiq kalit bilan shifrlaydi va kerakli narsangizni o'z ichiga olgan boshqa skriptni keltirib chiqaradi: bir martalik kalit, ma'lumotlar va shifrlash uchun bu buyruqning o'zi. Bundan tashqari, skript siz uchun bir juft tugmalarni yaratishi mumkin:

./encrybt-file.sh -Keys byulletenlar.pem xususiy.pem
./encrap-file.pem\u003e Dipretth - -Fater.sh
ChmoD + X Dickrept -
./decryplplore.sh xususiy.pem\u003e Filder.tar

Shu misolda biz avval bir juft kalitni yaratdik. Shundan so'ng, papka papka dekrort -ple.sh skriptiga shifrlangan va keyin papka.tar arxiviga shifr berdi. Ushbu usulning mumkin bo'lgan minus - bu dekromer -ofl-dagi ma'lumotlar bazthe apparatdagi ma'lumotlar bazaviy64 formatida saqlanadi va shuning uchun ularning hajmi oshadi.




Download 225,02 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish