Портты қағу - Port knocking

Жылы компьютерлік желі, порт қағу сыртқы ашудың әдісі болып табылады порттар үстінде брандмауэр алдын-ала белгіленген жабық порттардың жиынтығына қосылу әрекетін жасау арқылы. Байланыстырудың дұрыс дәйектілігі алынғаннан кейін, брандмауэр ережелері динамикалық түрде өзгертіліп, байланыс әрекеттерін жіберген хост белгілі бір порттар (порт) арқылы қосыла алады. Нұсқа деп аталады бір пакеттік авторизация (SPA) бар, мұнда тек бір ғана «соғу» қажет, ол аннан тұрады шифрланған пакет.[1][2][3][4]

Портты тықылдатудың басты мақсаты - шабуылдаушының a жасау арқылы жүйені ықтимал пайдаланылатын қызметтерге қарап шығуына жол бермеу портты қарап шығу, өйткені шабуылдаушы дұрыс соққы ретін жібермесе, қорғалған порттар жабық болып көрінеді.

Шолу

Портты қағу әдетте a теңшеуімен жүзеге асырылады демон брандмауэр журналы файлын белгілі бір нүктелерге қосылу әрекеттері үшін қарау, содан кейін брандмауэр конфигурациясын сәйкесінше өзгерту. Оны ядро ​​деңгейінде де орындауға болады (мысалы, деңгей деңгейіндегі пакеттік сүзгіні қолдану арқылы) iptables[5]) немесе қолданушы кеңістігі процесін зерттеумен пакеттер жоғары деңгейде (сияқты пакеттік түсіру интерфейстерін қолдану арқылы) pcap ), қазірдің өзінде «ашық» TCP порттарын пайдалануға мүмкіндік береді.

Порттың «қағуы» өзі құпия қол алысуға ұқсас және кез келген саннан тұруы мүмкін TCP, UDP немесе кейде ICMP және басқа протокол пакеттері тағайындалған машинадағы нөмірленген порттарға. Тықылудың күрделілігі қарапайым реттелген тізімнен (мысалы, TCP порт 1000, TCP порт 2000, UDP порт 3000) күрделі уақытқа тәуелді, дереккөзге және басқа факторларға негізделген шифрланған хэшке дейін болуы мүмкін.

Брандмауэр машинасындағы портнок демоны белгілі бір порттардағы пакеттерді тыңдайды (брандмауэр журналы арқылы немесе пакеттерді түсіру арқылы). Клиенттік пайдаланушы қосымша утилитаны алып жүруі мүмкін, ол қарапайым болуы мүмкін netcat немесе өзгертілген пинг-бағдарлама немесе толық хэш-генератор сияқты күрделі және оларды машинамен әдеттегідей қосылуға тырыспас бұрын қолданыңыз.

Көбінесе портноктардың күйі жүйелер болып табылады, өйткені егер «тықылдатудың» бірінші бөлігі сәтті алынған болса, қате екінші бөлігі қашықтағы пайдаланушыға жалғастыруға мүмкіндік бермейді және шынымен де қашықтағы пайдаланушыға қашықтыққа өту туралы ешқандай түсінік бермейді. олар орындалмады. Әдетте сәтсіздіктің бірден-бір белгісі - бұл нока-кезек аяқталғаннан кейін, ашық болады деп күтілген порт ашылмайды. Қашықтағы пайдаланушыға кез келген уақытта пакеттер жіберілмейді.

Қашықтағы жел демондарына қол жетімділікті қамтамасыз етудің бұл әдісі қауіпсіздік қоғамдастығында кеңінен қолданылмағанымен, көптеген елдерде белсенді қолданылады руткиттер тіпті 2000 жылға дейін.

Артықшылықтары

Портты соғудан қорғауды жеңу қарапайым тізбектерді табу үшін кең ауқымды өрескел күш шабуылдарын қажет етеді. Анонимді дөрекі шабуыл үш соққыға қарсы TCP дәйектілігі (мысалы, порт 1000, 2000, 3000) қаскүнемнен 1–65535 ауқымындағы әрбір үш порт тіркесімін тексеріп, содан кейін мақсатты жүйеде портқа қол жетімділіктің өзгеруін анықтау үшін әр портты шабуылдар арасында сканерлеуі керек. Портты қағу анықтамалық күйде болғандықтан, сұралған порт дұрыс үш порт нөмірінің реті дұрыс ретпен алынғанға дейін және көзден басқа аралық пакеттерді алмай-ақ ашылмайды. The орташа жағдай сценарий үшін шамамен 141 трлн (65535) қажет3 / 2) дұрыс үш портты нөмірді анықтайтын пакеттер. Бұл әдіс соққыны шектейтін, ұзағырақ немесе күрделі реттіліктермен және криптографиялық хэштермен үйлесіп, портқа сәтті кіру әрекеттерін өте қиын етеді.

А-ны ашу үшін сәтті портты қағу реті берілгеннен кейін порт, брандмауэр ережелер әдетте портты тек үшін ашады IP мекен-жайы брандмауэрдің жұмысына динамикалық функционалдылықты қосып, дұрыс соққыны қамтамасыз етті. Алдын ала конфигурацияланған статикалық IP пайдаланудың орнына ақ тізім брандмауэрде, әлемнің кез келген нүктесінде орналасқан, авторизацияланған пайдаланушы кез-келген қажетті портты сервер әкімшісінің көмегінсіз аша алады. Сондай-ақ, жүйені аутентификацияланған пайдаланушыға сеанс аяқталғаннан кейін портты қолмен жабуға немесе күту тетігі арқылы автоматты түрде жабуға мүмкіндік беретін етіп конфигурациялауға болады. Жаңа сеанс құру үшін қашықтағы пайдаланушыдан дұрыс реттілікті пайдаланып қайта растау қажет.

Портты тықылдатудың жай-күйі әр түрлі IP-адрестерден бірнеше пайдаланушыларға портты нұқып аутентификациялаудың әр түрлі деңгейлерінде бір уақытта болуға мүмкіндік береді, бұл брандмауэр арқылы дұрыс тықыру реттілігі бар заңды пайдаланушыға мүмкіндік береді, ал брандмауэр өзі порт шабуылының ортасында болады. бірнеше IP-мекен-жайлар (брандмауэрдің өткізу қабілеттілігі толығымен пайдаланылмайды). Шабуыл жасайтын кез-келген басқа IP-мекен-жайдан брандмауэрдегі порттар әлі жабық болып көрінеді.

Қолдану криптографиялық порттың қағылу кезіндегі ішіндегі хэштер пакеттен қорғайды иіскеу бастапқы және мақсатты машиналар арасында, портты қағып алу ретін анықтауға жол бермейді немесе алдыңғы трафикті қайталау үшін трафикті қайта ойнату шабуылдарын жасау үшін ақпаратты қолданады.

Портты соғу тереңдіктегі стратегияның қорғанысы ретінде қолданылады. Тіпті шабуылдаушы портқа қол жеткізуді сәтті алса да, порттың қауіпсіздігінің басқа механизмдері ашық порттардағы тағайындалған қызмет аутентификация механизмдерімен бірге әлі де бар.

Техниканы жүзеге асыру өте қарапайым, а қабықша сценарийі серверде және клиентте Windows пакеттік файлы немесе командалық жолдың утилитасы. Трафик бойынша сервер мен клиенттің үстеме шығындары, Орталық Есептеуіш Бөлім жадты тұтыну минималды. Портты қағу демондары кодтау үшін күрделі емес; кодтың кез-келген осалдығы айқын және тексерілетін.

SSH сияқты порттарда іске қосылған портты қағу жүйесі бұл мәселені шешпейді қатал күш логиндерге парольдік шабуылдар. SSH жағдайында SSH демонт дұрыс портты соқпай іске қосылмайды және шабуыл фильтрімен сүзіледі TCP / IP SSH аутентификация ресурстарын пайдаланудың орнына стек. Шабуыл жасаушыға демонт портты дұрыс соққанға дейін қол жетімді емес.

Қауіпсіздік мәселелері

Портты қағу - бұл икемді, теңшелетін жүйелік қондырма. Егер администратор қабық сценарийін іске қосу сияқты соққылар тізбегін байланыстыруды таңдаса, арнайы IP мекенжайлары үшін порттарды ашу үшін қосымша брандмауэр ережелерін енгізу сияқты басқа өзгерістер сценарийге оңай қосылуы мүмкін. Бір уақытта сеанстар оңай орналастырылады.

Динамикалық ұзындық және ұзындық бассейні сияқты стратегияларды қолдану арқылы нока-кезек бұзу ықтималдығын нөлге дейін азайтуға болады.[6]

Күшті пароль шабуылдарын және процедуралық демонмен байланысты журналдарда сөзсіз өсуді жеңілдетуден басқа, портты қағу сонымен қатар протоколдың осалдығынан қорғайды. Егер демонтты әдепкі конфигурациясында бұзуы мүмкін эксплуатация анықталса, тыңдау портын қағып портты қолдану бағдарламалық жасақтама немесе процесс жаңартылғанға дейін ымыраға келу мүмкіндігін азайтады. Рұқсат етілген пайдаланушыларға дабыл қағу реті ұсынылған кезде қызмет көрсету жалғасады, ал кездейсоқ қол жеткізу әрекеттері ескерілмейді.

Портты қағып алуды тек толық шешім ретінде емес, кездейсоқ және мақсатты шабуылдардан қорғауды қамтамасыз ететін жалпы желілік қорғаныс стратегиясының бөлігі ретінде қарастыру керек.

Желілік қауіпсіздік Кәсіпқойлар порттарды қағуды шешім ретінде елеусіз қалдырды, өйткені алғашқы іске асырулар тек қол жеткізуге қол жеткізу үшін дұрыс порт комбинацияларын қамтамасыз етуге негізделген. Қазіргі заманғы порт қағу жүйелері қауіпсіз криптографиялық хэш, қара тізім, ақ тізім және жүйенің мүмкіндігін одан әрі арттыруға бағытталған динамикалық шабуыл реакциялары. Портты тықыру - бұл интернетке бағытталған желілерде серверлік ресурстарды көбейтудің тиімді құралы.[дәйексөз қажет ]

Дұрыс жүзеге асырылған портты қағу жүйенің жалпы қауіпсіздігін төмендетпейді. Бұл минималды серверлік шығындармен қауіпсіздіктің қосымша қабатын қамтамасыз ететін тиімді шара. Нашар жағдайда, порт қағу сияқты жүйелер қауіпсіздіктің жаңа мәселелерін нашар енгізу арқылы енгізеді немесе сияқты жағдайларға байланысты әкімшіліктің екіұшты көзқарасын ашады. тәуекелді өтеу.[дәйексөз қажет ]

Кемшіліктері

Портты қағу толығымен портты қағатын демонның беріктігіне байланысты. Қызметтің сәтсіздігі порттың барлық пайдаланушыларға қол жетімділігі мен қауіпсіздік тұрғысынан бас тартады, бұл жағымсыз бір сәтсіздік. Қазіргі заманғы портты қағу іске асырылуы сәтсіз немесе тоқтап қалған портты қағып жатқан демон процесін қайта бастайтын процесті бақылау демонын ұсыну арқылы бұл мәселені жеңілдетеді.

Криптографиялық хэштерді қолданбайтын жүйелер осал болып табылады IP-адресті бұрмалау шабуылдар. Бұл шабуылдар Қызмет көрсетуден бас тарту, кездейсоқ порттарға жалған IP мекенжайы бар пакеттерді жіберу арқылы белгілі IP мекенжайларын (мысалы, әкімшіні басқару станцияларын) құлыптау үшін портты қағу функциясын қолданыңыз. Статикалық мекен-жайларды қолданатын серверлер, қызмет көрсетуден бас тартудың мұндай түрлеріне өте осал, өйткені олардың мекен-жайлары белгілі.

Порттың соғылуы жоғары кідірісті көрсететін желілерде проблемалы болуы мүмкін. Портты тықырлау оның жобаланған функционалдығына қол жеткізу үшін дұрыс ретпен келетін дестелерге байланысты. TCP / IP, керісінше, тапсырыссыз пакеттерді когерентті хабарламаға жинау арқылы жұмыс істеуге арналған. Бұл жағдайларда жалғыз шешім клиент кезектесіп пакеттердің кезектілігін жүйемен сервер мойындағанша қайта жіберуді жалғастыра алады.

Портты тықылдату сервер үшін жалғыз аутентификация механизмі ретінде қолданыла алмайды. Қауіпсіздік тұрғысынан қарапайым портты қағу сенім артады қараңғылық арқылы қауіпсіздік; соққылардың жоспарланбаған жариялануы кезектілікті қолдайтын барлық құрылғыларда ымыраға әкеледі. Сонымен қатар, порттың шифрланбаған тықылдауы пакетті иіскеуге осал болып табылады. Сәйкес ұзындықтағы желілік іздеу бір IP-мекен-жайдан соққылардың дұрыс реттілігін анықтай алады және осылайша серверге рұқсат етілмеген қол жеткізу механизмін және қосымша желіні қоса алады. Бұзылғаннан кейін, құрылғыдағы журнал файлдары басқа жарамсыздық нүктесін анықтайтын басқа жарамды тықыр тізбектерінің көзі болып табылады. Әр тықыру дәйектілігін а ретінде қарастыру сияқты шешімдер бір реттік құпия сөз жеңілдетілген басқару мақсатын жеңу. Іс жүзінде портты қағу осал емес басқа аутентификация формаларымен үйлесуі керек қайта ойнату немесе ортадағы адам бүкіл жүйенің тиімді болуы үшін шабуылдар.

Әдебиеттер тізімі

  1. ^ Майкл Раш (2004) Портты қағуды және пассивті OS саусақ ізін fwknop-пен үйлестіру
  2. ^ Майкл Раш (2006). Fwknop көмегімен бір пакеттік авторизация.
  3. ^ Майкл Раш (2007). SSH серверлерін бір пакеттік авторизациямен қорғау.
  4. ^ Moxie Marlinspike (2009). Бір пакеттік авторизация үшін knock knock пайдалану.
  5. ^ Джастин Эллингвуд (2014-01-17). «Ubuntu VPS-те тек Iptable компьютерлерін пайдалану арқылы портты қағуды қалай теңшеуге болады». digitalocean.com. Алынған 2016-04-24.
  6. ^ Шираз, Мұхаммед; Боруманд, Лалех; Ғани, Абдулла; Хан, Сүлеймен (2019-10-29). «Мобильді бұлтты есептеу үшін аутентификациялаудың жақсарған порты». Малайзияның компьютерлік журналы. 32 (4): 269–283. дои:10.22452 / mjcs.vol32no4.2. ISSN  0127-9084.

Сыртқы сілтемелер