Жасырын арна эксплойті дегеніміз не. Желіде жасырын деректерді жіберуді қалай анықтауға болады? Жылдамдықты шектеу туралы бірнеше сөз

MikroTik орнату жолын осы өндірушінің жабдықтары бойынша онлайн курсында білуге ​​болады. Курс авторы - сертификатталған MikroTik тренері. Толығырақ мақаланың соңында оқи аласыз.

Мақалада ICMP трафигін блоктау қаншалықты қауіпті деген сұраққа жауап беріледі.

ICMP - бұл дау

Көптеген желі әкімшілері Internet Control Message Protocol (ICMP) қауіпсіздікке қауіп төндіреді және сондықтан әрқашан блоктау керек деп санайды. Протоколда онымен байланысты кейбір қауіпсіздік мәселелері бар және кейбір сұрауларды бұғаттау керек. Бірақ бұл олай емес. барлық ICMP трафигін блоктаудың себебі!

ICMP трафигі көптеген маңызды функцияларға ие; олардың кейбіреулері ақауларды жою үшін пайдалы, ал басқалары желінің дұрыс жұмыс істеуі үшін қажет. Төменде сіз білуіңіз керек ICMP протоколының кейбір маңызды бөліктері берілген. Сіз оларды желі арқылы қалай жақсы өткізу туралы ойлануыңыз керек.

Эхо сұрауы және және жаңғырық жауабы

IPv4 - жаңғырық сұрауы (8 түрі, код0) және жаңғырық жауабы (түрі0, код0)
IPv6 - жаңғырық сұрауы (түрі128, код0) және жаңғырық жауаптары (түрі129, код0)

Біз барлығымыз жақсы білеміз ping ақаулықтарды жоюдың алғашқы құралдарының бірі. Иә, егер сіз аппараттық құралда ICMP пакеттерін өңдеуді қоссаңыз, бұл сіздің хостыңыз енді анықталатынын білдіреді, бірақ сіздің хостыңыз әлдеқашан 80 портты тыңдап, клиент сұрауларына жауаптарды жібермей ме? Әрине, егер сіз DMZ желінің шетінде болуын қаласаңыз, бұл сұрауларды да блоктаңыз. Бірақ желіңіздегі ICMP трафигін блоктау қауіпсіздікті арттырмайды, керісінше, қажетсіз күрделі ақауларды жою процесі бар жүйені аласыз («Шлюз желілік сұрауларға жауап беретінін тексеріңіз?», «Жоқ, бірақ бұл мені ренжітпейді. мүлде, өйткені ол ештеңе айтпайды!»

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

Пакет фрагменті қажет (IPv4) / Пакет тым үлкен (IPv6)

IPv4 - (3 түрі, код4)
IPv6 - (2 түрі, код0)

ICMP хаттамасының бұл құрамдас бөліктері өте маңызды, себебі олар TCP протоколының ажырамас бөлігі болып табылатын Path MTU Discovery (PMTUD) маңызды құрамдас бөлігі болып табылады. Екі хостқа TCP максималды сегмент өлшемі (MSS) мәнін екі тағайындау арасындағы байланыс жолындағы ең кіші MTU мәніне сәйкес келетін мәнге реттеуге мүмкіндік береді. Егер жіберуші немесе қабылдаушыдан төмен Максималды беру бірлігі бар пакеттердің жолында түйін болса және оларда бұл соқтығысты анықтау құралдары болмаса, онда трафик сезілмейтін түрде төмендейді. Ал сіз байланыс арнасымен не болып жатқанын түсінбейсіз; басқаша айтқанда, «сен үшін бақытты күндер келеді».

Fragment - ICMP өтпейді!

Интерфейс арқылы өту үшін тым үлкен IPv4 пакеттерін «Фрагментациялауға болмайды» бит жиынымен (олардың көпшілігі!) немесе IPv6 пакеттерімен (IPv6 жүйесінде маршрутизаторлар бойынша фрагментация жоқ екенін есте сақтаңыз) жіберу маршрутизатордың пакеттен бас тартуына әкеледі. және келесі ICMP қателері бар жіберушіге жауап беру: Фрагментация қажет ( Фрагментация қажет) немесе Пакет тым үлкен ( Пакеттер деүлкен). Егер осы қателері бар жауаптар жіберушіге қайтарылмаса, ол ACK пакеттерін жеткізу туралы растау жауаптарының жоқтығын түсіндіреді ( Мойындау) қабылдағыштан кептеліс/жоғал ретінде және де жойылатын пакеттерді қайта жіберу көзінен.

Мұндай ақаулықтың себебін анықтау және оны жылдам түзету қиын, TCP қол алысу процесі жақсы жұмыс істейді, себебі ол шағын пакеттерді қамтиды, бірақ деректерді жаппай тасымалдау орын алғаннан кейін тасымалдау сеансы тоқтап қалады, себебі тасымалдау көзі қатені қабылдамайды. хабарлар.

Пакетті жеткізу жолын зерттеу

RFC 4821 желі қатысушыларына пакеттерді тарату жолын табу арқылы осы мәселені шешуге көмектесу үшін жасалған. (MTU ашу жолы (PLPMTUD). Стандарт деректердің максималды көлемін анықтауға мүмкіндік береді (Максималды жіберу бірлігі (MTU)пайдалы деректер блогының максималды өлшемін біртіндеп ұлғайту арқылы бір итерацияда хаттама арқылы тасымалдануы мүмкін . (Ең үлкен сегмент өлшемі (MSS), таратқыштан қабылдағышқа дейінгі жолда фрагментациясыз максималды мүмкін пакет өлшемін табу үшін. Бұл функция Internet Control Message Protocol (ICMP) қате жауаптарын уақтылы алуға сенімділікті азайтады және көптеген желілік құрылғылар стектері мен клиенттік операциялық жүйелерде қол жетімді.Өкінішке орай, ол мүмкін болатын максималды өлшемдегі деректерді тікелей алу сияқты тиімді емес. жіберілген пакеттер Осы ICMP протоколының хабарларын жіберу көзіне қайтаруға рұқсат етіңіз, жарай ма?

Пакет күту уақыты

IPv4 - (11 түрі, код0)
IPv6 - (3 түрі, код0)

Traceroute - бұл жолдың әрбір қадамын егжей-тегжейлі көрсететін екі хост арасындағы желілік қосылымдардың ақаулықтарын жоюға арналған өте пайдалы құрал.


IP протоколы үшін деректер пакетінің қызмет ету мерзімі бар пакетті жібереді (Өмір сүру уақыты (TTL)тең 1 бірінші маршрутизатор пакеттің күту уақыты біткен қате туралы хабарды (өзінің IP мекенжайын қоса) жіберуі үшін. Содан кейін TTL 2 және т.б. бар пакетті жібереді. Бұл процедура пакеттердің жолындағы әрбір түйінді табу үшін қажет.

NDP және SLAAC (IPv6)

Маршрутизаторды сұрау (RS) (Тип133, код0)
Маршрутизатордың жарнамасы (RA) (түрі134, код0)
Көршіні сұрау (NS) (135 түрі, код0)
Neighbor Advertisement (NA) (Type136, Code0)
Қайта бағыттау (137 түрі, код0)

IPv4 OSI желі үлгісінің 2 және 3 деңгейлерін салыстыру үшін Мекенжайды шешу протоколын (ARP) пайдаланса, IPv6 Neighbor Discovery Protocol (NDP) түріндегі басқа тәсілді пайдаланады. NDP көптеген мүмкіндіктерді қамтамасыз етеді, соның ішінде маршрутизаторды табу, префиксті табу, мекенжай ажыратымдылығы және т.б. NDP-ге қосымша, күйсіз мекенжайды автоматты конфигурациялау (SLAAC) хостты динамикалық конфигурациялау протоколы (DHCP) тұжырымдамасына ұқсас желіде динамикалық түрде конфигурациялауға мүмкіндік береді (бірақ DHCPv6 неғұрлым түйіршікті болу үшін арналған).

IP деректер протоколы дұрыс жұмыс істеуі үшін ICMP хабарларының осы бес түрі желі ішінде блокталмаған болуы керек (сыртқы периметрді елемеу).

ICMP типті нөмірлеу

Internet Control Message Protocol (ICMP) «түрі» өрісімен анықталған көптеген хабарламаларды қамтиды.

Түр Аты Техникалық сипаттама
0 жаңғырық жауап
1 Тағайындалмаған
2 Тағайындалмаған
3 Тағайындалған жерге жету мүмкін емес
4 Source Quench (ескірген)
5 Қайта бағыттау
6 Балама хост мекенжайы (ескірген)
7 Тағайындалмаған
8 жаңғырық
9 Маршрутизатордың жарнамасы
10 Маршрутизаторды сұрау
11 Уақыт асып кетті
12 Параметр мәселесі
13 Уақыт белгісі
14 Уақыт белгісіне жауап
15 Ақпаратты сұрау (ескірген)
16 Ақпараттық жауап (ескірген)
17 Мекенжай маскасын сұрау (ескірген)
18 Мекенжай маскасы жауабы (ескірген)
19 Сақталған (қауіпсіздік үшін) Соло
20-29 Сақталған (беріктік эксперименті үшін) ЗСу
30 Traceroute (ескірген)
31 Датаграмманы түрлендіру қатесі (ескірген)
32 Мобильді хостты қайта бағыттау (ескірген) Дэвид_Джонсон
33 IPv6 Сіз қайдасыз (ескірген)
34 IPv6 Мен осындамын (ескірген)
35 Мобильді тіркеу сұрауы (ескірген)
36 Мобильді тіркеу жауабы (ескірген)
37 Домендік атауды сұрау (ескірген)
38 Домендік атқа жауап беру (ескірген)
39 ӨТКІЗУ (ескірген)
40 Фотурис
41 Seamoby сияқты тәжірибелік ұтқырлық протоколдары пайдаланатын ICMP хабарлары
42 кеңейтілген жаңғырық сұрауы
43 Кеңейтілген жаңғырық жауабы
44-252 Тағайындалмаған
253 RFC3692 стиліндегі эксперимент 1
254 RFC3692 стиліндегі эксперимент 2
255 Резервтелген

Жылдамдықты шектеу туралы бірнеше сөз

Осы мақаладағы сияқты ICMP хабарлары өте пайдалы болуы мүмкін болса да, осы хабарлардың барлығын жасау маршрутизаторларыңызда CPU уақытын қажет ететінін және трафикті тудыратынын есте сақтаңыз. Қалыпты жағдайда брандмауэр арқылы секундына 1000 пинг алуды шынымен күтесіз бе? Бұл қалыпты қозғалыс болып саналады ма? Мүмкін емес. ICMP трафигінің осы түрлері үшін желілік өткізу қабілеттілігін өзіңіз қалағандай шектеңіз; бұл қадам желіңізді қорғауға көмектеседі.

Оқыңыз, зерттеңіз және түсініңіз

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

MikroTik: оны жұмыс істеу үшін қайда басу керек?
Барлық артықшылықтарына қарамастан, MikroTik өнімдерінің бір кемшілігі бар - көптеген ажыратылған және оның параметрлері туралы әрқашан сенімді ақпарат емес. Біз орыс тіліндегі сенімді дереккөзді ұсынамыз, онда бәрі жинақталған, логикалық және құрылымдық - бейне курс » MikroTik аппараттық құралын орнату«. Курста 162 бейне сабақ, 45 зертханалық жұмыс, өзін-өзі тексеру сұрақтары және жазбалар бар. Барлық материалдар сізде шексіз қалады. Курс бетінде сұраныс қалдыру арқылы курстың басын тегін көре аласыз. Курс авторы - сертификатталған MikroTik тренері.

Жасырын арналар (жасырын арналар) ақпаратты қорғау әдістерінің бірі болып табылады, оны қосу белгісімен де (анонимділік пен құпиялылықты қамтамасыз ету үшін), минус белгісімен де (мәліметтердің ағып кетуін ұйымдастыру үшін) қолдануға болады. Екінші құрамдас бөлікті қарастырайық – жасырын деректерді беруді анықтау, немесе жасырын арналар арқылы деректерді беру, бұл тәжірибедегі ең күрделі ақпараттық қауіпсіздік міндеттерінің бірі болып табылады. Мақаланың көлемін ұлғайтпау үшін мен шифрлау және стеганография сияқты деректерді жасыру механизмдерін әдейі елемеймін.

Алексей Лукатский
Cisco қауіпсіздік кеңесшісі

Жасырын деректерді беру дегеніміз не?

Мәліметтерді желі арқылы жасырын жіберу бұл әдістің жалғыз қолданылуы емес. «Жасырын арна» термині алғаш рет 1973 жылы пайда болды және дәстүрлі желі қосылымы жоқ есептеу жүйелері үшін қолданылды. Мысалы, процестің ұзақтығы үшін жұп мән бірді, ал тақ мән нөлді білдіруі мүмкін. Осылайша, процестің ұзақтығын манипуляциялау арқылы біз 0 және 1 тізбегін құра аламыз, оның көмегімен кез келген нәрсені сипаттай аламыз (бұл уақыт арнасы деп аталады). Есептеу жүйелеріндегі жасырын процестің тағы бір мысалы - белгілі бір тапсырманы процесс арқылы іске қосу және оның белгілі бір уақытта аяқталуы, оны бірлік ретінде қарастыруға болады; және тапсырма көрсетілген уақытта орындалмаса, нөл.

Жасырын таратуды қалай жүзеге асыруға болады?

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

Бұл жағдайда мүлде басқа инкапсуляция опцияларын қолдануға болады:

1987 жылы желі арқылы жасырын тарату идеясы ұсынылды және осы сәттен бастап құпиялылықты немесе деректердің ағып кетуін қамтамасыз етудің осы әдісі бойынша маңызды зерттеулер басталды (баррикадалардың қай жағынан көрінетініне байланысты). Атап айтқанда, 1989 жылы алғаш рет Ethernet фреймдерінің пайдаланылмаған биттерін және бірқатар басқа арна протоколдарын өңдеу ұсынылды. Жергілікті желідегі жасырын арналарды, ауқымды желілерде деректерді жасырудан айырмашылығы, зерттеу соншалықты қызықты емес екені анық. Жетістікті (кем дегенде жалпыға ортақ) 1996 жылы деп санауға болады, ол кезде деректерді жасырын TCP/IP арнасы арқылы нақты беру мен қабылдауды көрсететін зерттеу жарияланды; дәлірек айтқанда, оның тақырыбының бөлек өрістерінде.

  • HTTP деңгейінде, ол бұрыннан оның негізінде басқа қолданбалы хаттамаларды құрудың іс жүзінде стандартына айналды. Мысалы, JAP анонимді желісі деректерді тасымалдау үшін HTTP пайдаланады, сонымен бірге қатты басқарылатын Tor желісін пайдаланады. HTTP-де деректерді тасымалдау үшін GET және POST пәрмендерін пайдалануға болады, ал HTTP ағынды бейне мен аудионы тасымалдау үшін пайдаланылса, шабуылдаушылар үшін үлкен көлемдегі деректерді тасымалдау мүмкіндіктері дерлік шексіз болады.
  • DNS деңгейінде ақпарат DNS сұраулары мен жауаптарында жасырылған кезде. Бұл әдіс алғаш рет 2000 жылдардың басында, TCP-ді DNS-ке туннельдеуге арналған DeNiSe құралы пайда болған кезде айтылды. Кейінірек Дэн Каминскийдің DNS арқылы SSH инкапсуляциялау мүмкіндігін көрсететін зерттеуі болды және 2005 жылы Defcon конференциясында ұсынылды. Содан кейін бұл тақырып танымал бола бастады - dns2tcp, DNScapy, DNScat, Heyoka, йод, сығу және т.б. пайда болды.
  • ICMP деңгейінде деректер әдетте қауіпсіздік мүмкіндіктерімен рұқсат етілген ICMP протоколының ішінде инкапсуляцияланған кезде. 1996 жылы Phrack журналында алғаш рет айтылған Loki бағдарламасы бір кездері осы принцип бойынша жұмыс істеді. Одан кейін жетілдірілген Loki2 келді. Сондай-ақ ICMP арқылы шифрланған хабарлармен байланысуға мүмкіндік беретін icm-pchat сияқты құрал бар.
  • TCP / UDP / IP деңгейінде, ағып кетуді жасыру немесе сырттан пәрмендерді алу үшін пакет тақырыбының бөлек өрістері пайдаланылған кезде. Қолданылатын хаттамаға байланысты жіберілетін деректердің өлшемі IP, UDP және TCP протоколдарында сәйкесінше 2-ден 12 және 38 байтқа дейін өзгереді. TCP тақырыбы модификациясын қолданатын өте қызықты құрал Nushu деп аталады. Оның ерекшелігі - ол ешқандай трафикті өзі жасамайды, тек қандай да бір қолданба немесе процесс арқылы түйіннен жіберілген трафикті өзгертеді. Басқаша айтқанда, өзгертілген трафик керек жерге жіберіледі және шабуылдаушы оны желі арқылы ұстап алады, осылайша ағып кеткен деректерді жинайды.
  • Сымсыз желілерде, деректер таратылатын трафикте маскирленген кезде. Айтпақшы, бұл жағдайда пассивті режимде жұмыс істей алатын қабылдау жағын табу оңай емес - тек деректерді қабылдау. HICCUPS құралы осы принципке негізделген.

Жасырын таралуды қалай анықтауға болады?

Жасырын арналар қолданатын әртүрлі әдістерді және олар орналасқан хаттамаларды көре отырып, сіз жасырын таратуды анықтаудың неліктен әртүрлі әдістері ұсынылатынын түсінесіз. Ең бастысы - аномалияны бақылау, ол келесі параметрлерді тексеруден тұрады (толық емес тізім):

  • Сұраныс және жауап өлшемі. Мысалы, DNS сұрауының орташа ұзындығы 40–60 байттан аспайтыны белгілі. Сондықтан, пакет ұзындығы ұлғайған DNS сұрауларының санының артуы жасырын арнаның жұмысын көрсетуі мүмкін. Ұқсас тәжірибе басқа хаттамаларға ұсынылуы мүмкін - ICMP, SIP және т.б.
  • Сұраныстардың көлемі. Әдетте, хаттамалардың кейбір түрлері бойынша трафик көлемі, егер тіркелген мән болмаса, пайыздың бірнеше бөлігінде сирек өзгереді. Сондықтан, қызмет протоколының трафигінің кенеттен ұлғаюы немесе DNS сұрауларының саны немесе олардың өлшемі аномалияны және зерттеу қажеттілігін көрсетуі мүмкін. Бұл жағдайда трафик профилін жіберуші түйін үшін де, алушы түйіні үшін де бағалауға болады.
  • Қоңыраулардың саны немесе географиясы да жасырын арналардың сипаттамасы бола алады. Мысалы, ішкі DNS серверіңіз болса, сыртқы DNS хостына үнемі сілтеме жасау да аномалия белгісі болуы мүмкін.
  • Статистикалық талдаудың басқа түрлері де жасырын арналарды табу үшін пайдалы. Мысалы, DNS үшін хост атауларындағы энтропия деңгейін талдауға болады. Егер жасырын ақпарат DNS сұрауларында берілсе, онда пайдаланылатын таңбалардың таралуы дәстүрліден өзгеше болады.

Желі трафигіндегі мұндай ауытқуларды қадағалауға мүмкіндік беретін құрал NBAD (Network-based Anomaly Detection) класс жүйелері болып табылады, оларда әлдеқашан кірістірілген ережелердің көп саны бар немесе жаттығу режимінен кейін дербес конфигурациялануы мүмкін.


Аномалияларды талдаудан басқа, жасырын арналарды белгілі бір хаттамалардағы мазмұнды зерттеу арқылы да анықтауға болады. Мұны RFC-ден қолданбалы хаттама трафигінің ауытқуларын бақылай алатын дәстүрлі Next Generation шешімдерімен де, басып кіруді анықтау жүйелерінің көмегімен де жасауға болады. Мысалы, мұнда Snort ашық бастапқы шешіміне арналған DNS протоколында NSTX жасырын арнасын анықтауға арналған қолтаңба берілген:
alert udp $EXTERNAL_NET any - > $HOME_NET 53 (хабарлама:"Әлеуетті NSTX DNS туннельдеу"; мазмұн:"|01 00|"; офсет:2; ішінде:4; мазмұн:"cT"; ығысу:12; тереңдік:3 ; мазмұны:"|00 10 00 01|"; ішінде:255; сынып түрі:жаман-белгісіз; sid:1000 2;)

Түйіндеме

Әмбебап еместік, бәлкім, жасырын арналарды белсенді пайдалану үшін де, олармен күресуде де басты кедергі болып табылады.

Желілік трафиктегі жасырын арналар әмбебап емес және оның шектеулері мен ауқымы бар өте ерекше әдіс болып табылады. Әрбір жасырын арнаның өткізу қабілеті, шуыл, беру режимі (екі жақты немесе бір жақты) сияқты өзіндік сипаттамалары бар, оларды пайдалану кезінде де, олармен күресуде де ескеру қажет. Сонда да «Соғыс және бейбітшілік» Л.Н. Толстойды мұндай арналар арқылы тез тарату мүмкін емес, ал кейбір жасырын беру әдістері өте жоғары шу деңгейіне ие, бұл оларды жаһандық желілерде тиімді қолдануға кедергі келтіреді, онда сыртқы факторлар жасырын таратудың сәттілігіне үлкен әсер етуі мүмкін.

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

Бұл қысқа мақала мүмкіндігінше Интернетке сымсыз қол жеткізу үшін бірнеше компьютерді, бірнеше қызықты құралдарды және операциялық жүйені қалай пайдалану керектігін көрсетеді. Мен техникалық жағын анық сипаттадым және түсініктеме бердім.

1. Кіріспе.

Мен жаңа ғана бірінші ноутбугімді алдым және онымен лас нәрселерді істеп көргім келді (тіпті біраз жұмыс істеуге тырыстым, бірақ бұл өте шаршады.
:)). Әуеде жүру бастапқыда өте қызықты болды, бірақ желілердің қорғалғанын түсінген кезде мен жалықтым
WEP мен үшін тым қатал (интранет трафигі болмағандықтан - желілерді өлі деп санауға болады), ал қорғалмаған желілер мүлде қызық емес. Бақытымызға орай, менің кампуста сымсыз тор сәл қызықтырақ болды.

Желі тегін сымсыз Интернетті қамтамасыз етеді, бірақ кіруге рұқсат бермес бұрын сіздің MAC мекенжайыңызды өз атыңызға тіркеуді талап етеді - тіркелмеген пайдаланушылар провайдердің бетіне (тіркеу беті) қайта бағытталады. Тіркелу үшін әкімшімен екі минуттық сөйлесу керек еді, бірақ мен ойладым: «Мүмкін сонда
осылай байланысудың қажеті жоқ қол жеткізудің жолы ма?» Әрине ол болды.

2. Бірінші ену әдісі - MAC спуфинг.

Барлығы MAC мекенжайының айналасында болғандықтан, бірінші ойға келген нәрсе болды
бұрыннан тіркелген MAC мекенжайын білу және онымен күресу болды
жалғандық. Әрине, сөйлеу оңай, бірақ бұған дейін ешқашан жасамаған болсам да, күш жұмсамады.
Ең бірінші мен kismet («kismet -c orinoco,eth1,wifi») іске қосып, торды иіскедім. Қисмет иіскегеннің бәрін сақтайды
файлға ақпарат (менің жағдайда "/var/log/kismet/*.dump"), иіскеу нәтижелерін олар сияқты көруге болады
түбіртектер. Нәтижесінде мен барлық ақпаратты көре алдым және
дұрыс MAC мекенжайын жазыңыз.

Желілік картаның MAC мекенжайын өзгерту үшін қолданылатын командалар:

ifconfig eth1 төмен
killall dhclient
ifconfig hw ether 00:11:22:33:44:55
ifconfig eth1 жоғары
dhclient eth1

Барлық командалар қажет емес, бірақ олар бірнеше MAC мекенжайларын бір-бірден өзгертуге тырысқанда өте пайдалы
бұл жай ғана маған пайдалы болды, tk. Мен өзгертуге тырысқан MAC мекенжайы бірден жұмыс істемеді. Маған тыйым салынды, желі офлайн болды және қайта қосылмады, сондықтан мен бірнеше тітіркендіргіш ақаулармен айналысуға тура келді.
сіздің жүйеңізде. Мүмкін бұл проблемалар
микробағдарламаға байланысты пайда болды, мүмкін желіде бірдей MAC мекенжайы бар желілік карта болған.

Барлық жұмыс станциялары белсенді емес және нәтижелерді олар келген кезде көру үшін kismet пайдалану тиімсіз болды, сондықтан мен басқа әдісті қолданып көрдім.

Желіде MAC мекенжайы бойынша сүзу өте жоғары деңгейде орындалды. Кез келген уақытта желіге кіре алатынмын, өйткені. Мен қосылуға тырысқанда, мен тіркелу ұсынысы бар парақшаға түстім.
Әрине, белсенді хосттар туралы ойлау барысында менің ойыма nmap келді. Сондықтан мен белсенді станциялар үшін IP ауқымын тексеруді жүргіздім.

marktwain:~# nmap -sP 10.0.0.1/22
nmap 3.81 (http://www.insecure.org/nmap/) 2005-05-23 12:54 EEST-те басталады
10.1.0.14 хосты жұмыс істеп тұрған сияқты.
MAC мекенжайы: 00:0E:35:97:8C:A7 (Intel)
10.1.0.95 хосты жұмыс істеп тұрған сияқты.

10.1.0.109 хосты жұмыс істеп тұрған сияқты.
MAC мекенжайы: 00:0D:54:A0:81:39 (3Com Europe)
... соққы ...
10.1.2.92 хосты жұмыс істеп тұрған сияқты.
MAC мекенжайы: 00:02:2D:4D:1C:CE (Agere Systems)
10.1.2.187 хосты жұмыс істеп тұрған сияқты.
MAC мекенжайы: 00:02:2D:4D:1C:43 (Agere Systems)
Nmap аяқталды: 1024 IP мекенжайы (20 хост жоғары) 53,980 секундта сканерленді

MAC мекенжайларының жиынтығы. Көп бөлігі
алынған мекенжайлар кестесі (менің ойымша) соңғы бірнеше күнде желіге кірген машиналардың MAC мекенжайлары. Кестеде 245 түрлі MAC болды
мекенжайлар. Бұл қалыпты мінез-құлық па, білмеймін
кіру нүктелері, бірақ менің ойымша, жігіттер бір нәрсеге тұрарлық
Интернетті таратудағы өзгерістер. Қалай болғанда да, менде торға кірген, бірақ көп уақыт бұрын кеткен машиналардың MAC мекенжайлары жеткілікті. Жалғандыққа бірнеше әрекет жасап, мен neworder.box.sk сайтына жүзіп бара жатыр едім...

3. №2 әрекет – ICMP туннельдеу.

Мен қалағанның бәрін жасадым, бірақ бұл желіде әлі де қазуға орын бар еді. Бірақ не
Бұл желі болмаса, мен істей алар едім
Менікі бір көлік емес пе? Егер
nmap ашылмайды және осы MAC мекенжайларының барлығын көрсетпейді ме? Сонымен, мен қол жеткізудің басқа әдісін қолданып көруді шештім.

Бұл бұрын айтылмаған, бірақ жүйені айналып өту
Рұқсат беретін Интернет тарату және DHCP, тор ICMP хабарламаларының еркін өтуіне мүмкіндік берді. Кез келген интернет-сайттың белсенділігін тексеру жақсы жұмыс істеді (неліктен оны бұғаттамағанын түсіну мүмкін емес - егер олар ұмытып қалмаса), пинг
тіпті менің серверімде жұмыс істеп тұрған снайферде де пайда болды.
Менің жоспарым университеттегі ноутбук пен үйдегі сервер арасында туннель құру болды. Және ол арқылы барлық байланыстарды өткізіңіз.
Мен Интернетте ICMP туннельдік қосымшаларын іздедім, бірақ ешқайсысы мен қалағандай жұмыс істемеді (яғни, мен оның қарапайым болуын қаладым - егер мен сүйікті браузерімді немесе кез келген басқа бағдарламаны іске қоссам, ол жай туннельмен жұмыс істейді) немесе кем дегенде
дәмді көрінді.

4. Біраз кодтау.

Басында мен ештеңені кодтауды жоспарламадым. Кейбір ICMP туннель қосымшаларын қолданып көрдім
пакеттік дауылмен болды, бірақ мен кенеттен олардың біреуінің көзін оқып жатқанымды байқадым, мен оның қаншалықты таңғажайып қарапайым екенін және мұндай нәрсені жасау қаншалықты оңай болатынын түсіндім. Бағдарламаның аты - itunnel -
ICMP туннельдеуге арналған ортақ утилита. iTunes керемет. Бірақ бұл жай ғана туннель. Сіз оны бір машинада іске қосасыз және ол екеуін қосқан сияқты болып шығады
желілік карталар бірге. Бұл мен қалаған нәрсеге жеткіліксіз болды.
Мен TUN/TAP ядро ​​модулі туралы бұрыннан естігенмін, ол пайдаланушы процестеріне ақпарат пакеттерін ядродан тікелей қабылдауға және жіберуге мүмкіндік береді.

Бағдарлама виртуалды желі интерфейсін жасайды.
Ол желілік интерфейсті жасайды
дәл солай жұмыс істейді
стандартты. Ең қызығы сол
пайдаланушы бағдарламалары болуы керек
интерфейс үшін физикалық қабат ретінде әрекет етеді
туннель. Олар ақпарат пакеттерін оқуы керек
құрылғы файлы (мысалы, «/dev/net/tun0») және оларды кез келген әдіспен жіберіңіз және жауап пакеттерін жазыңыз
файлға оралу.

Мен жақсы ресурс таба алмадым
TUN/TAP арқылы, бірақ туннельдер үшін TUN/TAP пайдаланатын vtun бағдарламасы бар, сондықтан мен
poyuzal vtun көздері. Біраз зерттеулерден кейін, жасау, оқу және tun-ға жазу үшін пайдаланылатын функциялардың шағын кітапханасы бар екені анықталды*
құрылғылар. Неліктен бағдарламаны өзім жазуым керек, егер оны бірнеше биттерді түзету арқылы жасауға болады?
Мен шынымен жазған код:

#қосуға "driver.h" /* vtun кітапханасын жариялаңыз */
#қосу
#қосу

/* itunnel ішінен аздап өзгертілген main().
*/
int run_icmp_tunnel(int идентификаторы, int пакет өлшемі, char *desthost, int tun_fd);

/* максималды бірлік – максимум
қапталған қап өлшемі

*/
const int mtu = 1400;

int main(int argc, char **argv) (
char*dev;
int tun_fd = 0;

/* туннель құрылғысын құру */
dev = (char *) malloc(16);
егер (дев == NULL) (
printf («Егер сізде ешқашан проблема болмаса
16 байт\"
"есте сақтау - бұл сіздің бірінші рет. Fatal.n");
қайтару 1;
}
dev=0;
/*
жақсы кітапхана функциясы
vtun ішінен бос жолды ретінде қабылдайды
*
* аргумент, tunX құрылғысын жасайды және
оны *dev
*/
tun_fd = tun_open(dev);

егер (tun_fd< 1) {
printf("Құрылғыны жасау мүмкін емес. Fatal.n");
қайтару 1;
}
басқа(
printf("Туннельдік құрылғы жасалды: %sn", dev);
}

/* 7530 - ICMP идентификаторының өрісі,
туннельдегі пакеттер үшін қолданылады

*/
run_icmp_tunnel(7530, mtu, argv, tun_fd);

tun_close(tun_fd, dev);
}

Мінеки. Оның көпшілігі түсініктемелер мен қателерді тексеру

Мен атап өткендей, itunnel туннель салу үшін өте қолайлы. Оның негізгі функциясы бар
кіріс, шығыс және ұяшыққа арналған файлдарды ашу; Сондай-ақ
пәрмен жолы үшін кейбір параметрлерді алды (бұл менің мақсаттарым үшін пайдалы болуы мүмкін). Содан кейін ол ақпарат пакеттерін тасымалдайтын аздап дерексіз функция деп аталды. ICMP тақырыбы тегін
кодта сипатталған және кез келген басқа тақырыпқа оңай өзгертілуі мүмкін,
кіріс/шығыс/розетка кейбір басқа логикалық схемаға сәйкес конфигурациялануы мүмкін - функция ең аз реттеулермен жұмыс істейді.

Мен жасаған ең үлкен өзгеріс - барлық пәрмен жолы манипуляцияларын жою - негізінен кодтың бірнеше блоктарын жою. Туннель логикасы үшін ең бастысы, мен кіріс пен шығыс арасындағы айырмашылықты алып тастадым, өйткені олар екеуі де
бірдей дескрипторға ілу (tunX құрылғысы) -
ол маған ұқсаудың орнына не берді
netcat және stdin ICMP ұяшығына және ICMP ұяшығын stdout-қа бағыттаңыз,
ол tunX құрылғысына шығыс сигналды (браузерден http сұраулары ретінде) ICMP-ге жібереді
розетка және ICMP ұяшық шығысы (HTTP сияқты
серверден сұраулар кері жіберілді
туннель арқылы) tunX құрылғысына (
шолғышқа оралады). Соңғы сөйлем өте ұзақ және күрделі болғандықтан, мен суреттеу үшін шағын диаграмма ұсынамын:

Ақпараттың жауап пакеттері бірдей жолмен жүреді, бірақ
керісінше.

Бір кезде мен жаңа код жолын жазу үшін жеткілікті түрде есінен танып қалдым. Ол былай көрінеді:

memcpy(&(target->sin_addr.s_addr), &(from.sin_addr.s_addr), 4);

Оның қызметі ақпараттың барлық пакеттерін соңғы пакет келген жерге жіберуді бастау болып табылады. мен істей аламын
оны менің серверімде іске қосыңыз және қосылыңыз
кез келген жерден туннель арқылы пакетті жіберіңіз
және ол алушының IP мекенжайын бірден IP-ге өзгертеді
менің ноутбук.

Нәтижесінде не болды, мына жерден алуға болады:

5. Тоннельдерді орнату.

Мен туннельді үйде сынап көрдім, ол жақсы жұмыс істеді, бірақ үйде желіаралық қалқан болған жоқ. Келесі күні университетте оны өмірде сынауға дайын болдым. Кездейсоқ, кафеде үстелде отырып, спуфинг арқылы MAC мекенжайын тауып, туннель орнаттым.

Мен тырысқан барлық ақымақ әдістерді және жасаған кішкентай эксперименттерді есте сақтау қиын, сондықтан мен бұл бөлікті мүмкіндігінше ұйымдасқан етіп жасауға тырыстым. Шындығында, мен бәрін соншалықты анық жасаған жоқпын.
Барлығы мен үшін жұмыс істеу үшін
бұл маған 3 сағатты алды, мен қолымнан келгеннің бәрін қолданып көрдім және барлық жерде иіскеп көрдім және кодты «Пакет!» деп айқайлайтындай етіп өзгерттім. Тағыда басқа.

Мен серверде мына пәрмендерді орындадым:

tsee-diees:~# ./create_tun wifi.ttu.ee
Жасалған туннель құрылғысы: tun0

./create_tun wifi.ttu.ee тоқтатылды
tsee-diees:~# ifconfig tun0 mtu 1400 192.168.3.1 жоғары
tsee-diees:~# маршрут қосу 192.168.3.2 tun0
tsee-diees:~# tethereal -i eth0 -f "icmp"

Мен бұл бірден жұмыс істейді деп ойладым және оны ноутбукта іске қостым:

marktwain:~# ./create_tun 194.204.48.52
Жасалған туннель құрылғысы: tun0

./create_tun 194.204.48.52 тоқтатылды
marktwain:~# ifconfig tun0 mtu 1400 192.168.3.2 жоғары
marktwain:~# маршрут қосу 192.168.3.1 tun0
marktwain:~# tethereal -i eth0 -f "icmp"

Маған жасау керек болды
екі хосты бар желі – сервер 192.168.3.1 және ноутбук 192.168.3.2. Қарапайым қалыпты жергілікті желі, оның физикалық қабаты ғана ICMP туннелі болады. Қалайсың, бәлкім
мақаладағы мәтіннің қалған бөлігінен түсінікті
әдіс өте жақсы жұмыс істемеді. Мен пингті («ping 192.168.3.1») іске қостым, бірақ пакеттер әлі де өтпеді.

Бақытымызға орай, ноутбуктағы снайфер маған аздап түсінік берді - ICMP пакеттері қайтару жауаптары болды. Әрине, олар жоқ
жіберілді. Сонымен, біз туннельді өлтіреміз, ноутбукта itunnel-ді қосамыз және icmp кері жауаптарын қолданамыз («icmp->түрі = 0;» «icmp->түрі = 8;» деп өзгертіңіз), туннельді қайтарыңыз.
Жүйе әлі жұмыс істемеді, бірақ бұл жолы пакеттер
сервердегі снайферде пайда болды.

Не қате болуы мүмкін? Мен келесі пакет келгенде «Пакет!» деп айқайлауы керек бір модификацияны қолданып көрдім, бірақ леп белгілері болмады.
пайда болды. «Егер брандмауэр Интернеттен барлық ICMP пакеттерін бұғаттау үшін орнатылған болса, неге, шын мәнінде, мен таң қалдым?» Біраз уақыттан кейін мен бұл шын мәнінде солай екенін түсіндім (Интернеттен барлық ICMP пакеттері бұғатталған).

Енді жақсырақ. Туннель «Пакет!» деп айғайлайды. , және жауаптарды сервердегі снайферден көруге болады. Шындығында, әрбір сұрауға екі жауап бар, олардың тек біреуін ноутбуктағы снайферден көруге болады. Ал пинг әлі жұмыс істемейді.

Екі пакеттің біреуі артық болғандықтан, мен ядроға (ядроға) icmp кері сұрауларына жауап бермеуді айттым:

tsee-diees:~# echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

Және пингтер өте бастады! Осы кезде мен серверге қол жеткізу үшін жалған MAC мекенжайына сенетінмін. Идеясы тіркелмеген пайдаланушыдан алға-артқа тасымалданатын пакеттерді алу болғандықтан, мен MAC мекенжайларының жалғандығын тоқтаттым. Сонымен бірге туннель жұмысын жалғастырды, бұл өте жағымды тосынсый болды.

Пакеттердің ағыны орнатылды және «Интернет» жұмыс істейтін уақыт келді.
IP-ге кейбір өзгерістер енгізуге тура келді
ноутбукта маршруттау. арқылы
университеттің сымсыз маршрутизаторы сервердің туннельдік мекенжайымен ауыстырылуы керек (бұл жағдайда 192.168.3.1). Туннельдің өзі жұмыс істей алатындай серверге апаратын жол әлі де болуы керек (ICMP туннель пакеттеріне де жол керек).
Мен өте жақсы нәтиже алдым:

marktwain:~# маршрут қосу 194.204.48.52 gw 10.0.0.111 # сымсыз маршрутизатор арқылы
marktwain:~# әдепкі бойынша маршрут
marktwain:~# маршрут әдепкі gw 192.168.3.1 # туннель арқылы қалғанның барлығын қосыңыз.

Ал мен ақылды болғандықтан, арасында сәйкессіздік болуы мүмкін деп ойладым
серверге және серверден жіберілген пакеттер саны. Мен пинг бастадым
жағдайды бақылау үшін фондық режимде:.

marktwain:~# ping 194.204.48.52 -i 0,2
PING 194.204.48.52 (194.204.48.52) 56(84) байт деректер.

Әрине, жауаптар болмады, өйткені бұл «туннельдік пингтер» емес, ал ядродан алынған жауаптар
өшірулі.

Себебі менің серверім оқытылды
бірнеше компьютерлер арасында интернет қосылымын бөлісу үшін серверде істеуім керек болатын екі ережені қосу болды
Iptables-тегі FORWARD тізбегі, пакеттерді tun0-дан қабылдауға арналған. Мен ағымдағы ережелерді ("iptables -vL FORWARD") үнемі тексерген кезде қосылым кенеттен үзілді. Мен бұл мәселені қайта қостым және зерттедім,
бірақ көп ұзамай байланыс қайтадан үзілді. Мен шынымен таң қалдым - неге байланыс соншалықты тұрақсыз?
Рефлексия кезінде мен сервер үлкен ICMP жауабын жіберген сайын түсіндім
(ақыр соңында, тек пинг тақырыбы 1400+ болды), ол жойылды
жабдықтың өзі. Туннель физикалық болғандықтан
IP деңгейі, TCP, әрине, пакеттерді қайтадан жіберуге тырысты, бірақ өлшемі бұрынғысынша болды және олар әлі де жойылды. Сондықтан мен туннель үшін MTU-ны 300-ге өзгерттім
Жалпы кездейсоқ айтсақ)

marktwain:~# ifconfig tun0 mtu 300
tsee-diees:~# ifconfig tun0 mtu 300

Және бүкіл жүйе жұмыс істеді.

6. Қорытынды.

Енді өзіңіз жасаңыз.

жасырын арналарақпаратты жасырын, рұқсатсыз немесе заңсыз беру үшін қолданылатын әрекеттерді жасыру немесе шабуылдарды жүзеге асыру әдістерінің бірі болып табылады. Жасырын арналардың көмегімен ақпараттың сыртқа шығуы немесе керісінше ұйымға ақпараттың енгізілуі мүмкін. Интернеттегі жасырын арнаны портфельдегі құпия бөліммен салыстыруға болады, онда шабуылдаушы құпия құжаттарды қауіпсіз нысанның қақпасынан заңсыз алып өту үшін жасыруға тырысуы мүмкін. Интернетте жасырын арналарды зиянкестер жасырын материалдарды байқамай жіберу үшін пайдалана алады - бұл жағдайда желілік қауіпсіздік механизмдері қауіпсіздік объектісі ретінде әрекет етеді. Шпион қаруды қауіпсіздіктен жасыру үшін бір құпия бөлімге жасыра алатыны сияқты енуонымен бірге объектіге, Интернетте шабуылдаушылар жасырын арналарды пайдаланып киберқаруды жасырын түрде тасымалдай алады, мысалы, зиянды бағдарламаны сыртқы серверден ұйымның жеке желісіндегі хостқа жүктеп алу үшін.

Интернеттегі жасырын арналардың негіздері

Интернеттегі жасырын арналар таныс Интернет протоколдарын дәстүрлі емес пайдалануға негізделген болуы мүмкін. Бір арнаның соңғы нүктелері – вирус жұққан компьютер және шабуылдаушының басқару орталығы – осындай дәстүрлі емес айлаларды танитын және өңдей алатын әрекеттерді шабуылдау немесе жасыру үшін арнайы бағдарламалық құралды пайдалануы керек. Мұндай бағдарламалық жасақтаманы пайдаланушының өзі немесе зиянды бағдарлама немесе қашықтан басқару құралдарын (RAT) пайдаланып шабуылдаушылар орнатуы мүмкін. Жасырын интернет арналары шифрланған туннельдерден ерекшеленеді. Олар туралы ақпарат шифрланбаған түрде берілуі мүмкін (көбінесе бұл орын алады), бірақ бұл арналардың өздері бөгде адамдардан жасырылады. Бұл жағдайда шифрлау немесе криптографиялық кілттерді пайдаланудың қажеті жоқ, дегенмен кейде жасырын арналар әлі де деректерді шифрлаудың немесе жасырудың әртүрлі әдістерін қолданады.

Екі мысалды қарастырайық. Бірінші әдіс - Интернет протоколының (IP) пакет тақырыбының идентификатор (ID) өрісінде ақпаратты бір таңбадан жасырын түрде жіберу. Бұл әдістеменің жалпы іске асырылуында ASCII таңба кодтары идентификатор өрісіне ауыстырылатын 16 биттік мәндерді жасау үшін 256-ға көбейтіледі. ICANN аббревиатурасын жіберу үшін келесі идентификатор өрісінің мәндері бар 5 IP пакетін жіберу керек:

Пластикалық пакет ASCII ондық мәні IP пакетінің идентификаторы (x256)
1 71 («Мен») 18176
2 67 («С») 17152
3 65 («А») 16640
4 78 («N») 19968
5 78 («N») 19968

Қабылдаушы компьютер IP пакетінің идентификатор өрісінің мәнін қабылданған мәнді 256-ға бөлу арқылы декодтайды. Мұндай мәндердің берілуі ешқандай күмән тудырмайды және IP хаттамасы қайталанатын пакеттерді жіберуге мүмкіндік беретіндіктен, бұл екіталай. мұндай трафик анықталатын болады. Баяу жылдамдық берілістің құпиялылығымен өтеледі.

Жасырын арнаны құрудың екінші әдістемесі протоколдың пайдалы жүктемесін, яғни таңдалған хаттама шеңберінде жіберілетін техникалық ақпаратты пайдалануды қамтиды. Бұл жағдайда деректер ECHO сұраулары мен жауаптарына қосылады - бұл Интернетті басқару хабарламасының протоколында немесе ICMP протоколында қолданылатын қызметтік хабарламалар. ECHO хабарламалары жалпы қызметте пайдаланылады пинг. Желілік әкімшілер белгілі бір қашықтағы хосттың қол жетімділігін тексеру үшін жиі пинг қызметін пайдаланады, сондықтан ICMP ECHO пакеттік трафигі әдетте желіаралық қалқандар сияқты желілік қауіпсіздік құралдары арқылы рұқсат етіледі.

Осы әдістер туралы көбірек білгіңіз келсе, келесі мақалаларды қараңыз: (Жасырын арналар туралы сұрақтар мен жауаптар) және ICMP арқылы жасырын арналар (PDF, 740 КБ).

Әрі қарай. DNS жасырын арналары

Домендік атаулар жүйесі (DNS) протоколы жасырын арналарды пайдалануды ыңғайлы ететін бірқатар сипаттамаларға ие. DNS трафигі екі бағыттағы брандмауэрлер арқылы өтеді. Жасырын арналарды жасау үшін DNS пайдалану қаупі жиі ескерілмейді немесе бағаланбайды, сондықтан ұйымдар немесе Интернет провайдерлері DNS трафигінде шабуыл белгілерін әрқашан тексермейді. Кейде DNS трафигі пайдаланушы авторизациясы немесе аутентификация функциялары орындалмас бұрын атауларды шешу үшін кеңірек Интернетке жіберіледі, бұл DNS жасырын арналарына мұндай кіруді басқару элементтерін айналып өтуге мүмкіндік береді.

Келесі жазбамызда біз DNS жасырын арналарын деректерді шығару, қол жеткізуді басқару элементтерін айналып өту немесе зиянды бағдарламаны жүктеу үшін қалай пайдалануға болатынын қарастырамыз.