Við skulum telja umboðsmenn "eftirlitsmann"

Það er ekkert leyndarmál að eftirlit með lokun á lista yfir bönnuð upplýsingar í Rússlandi er fylgst með sjálfvirka kerfinu „Inspector“. Hvernig það virkar er vel skrifað hér í þessu grein um Habr, mynd frá sama stað:

Við skulum telja umboðsmenn "eftirlitsmann"

Sett upp beint hjá þjónustuveitunni mát "Agent Inspector":

"Agent Inspector" einingin er burðarvirki í sjálfvirka kerfinu "Inspector" (AS "Inspector"). Þetta kerfi er hannað til að fylgjast með því að fjarskiptafyrirtæki uppfylli kröfur um aðgangstakmarkanir innan ramma ákvæðanna sem settar eru í greinar 15.1-15.4 í sambandslögum frá 27. júlí 2006 nr. 149-FZ „Um upplýsinga-, upplýsingatækni og upplýsingavernd. ”

Megintilgangur þess að búa til AS "Revizor" er að tryggja eftirlit með því að fjarskiptafyrirtæki uppfylli kröfurnar sem settar eru fram í greinum 15.1-15.4 í sambandslögum frá 27. júlí 2006 nr. 149-FZ "Um upplýsinga-, upplýsingatækni og upplýsingavernd " hvað varðar að bera kennsl á staðreyndir um aðgang að bönnuðum upplýsingum og afla stuðningsgagna (gagna) um brot til að takmarka aðgang að bönnuðum upplýsingum.

Að teknu tilliti til þeirrar staðreyndar að, ef ekki allir, þá hafa margir veitendur sett upp þetta tæki, þá hefði átt að vera til stórt net leiðarskynjara eins og ÞRÓAÐUR Atlas og jafnvel fleiri, en með lokuðum aðgangi. Hins vegar er leiðarljós leiðarljós til að senda merki í allar áttir, en hvað ef við náum þeim og sjáum hvað við náðum og hversu mörg?

Áður en við teljum, skulum við sjá hvers vegna þetta gæti jafnvel verið mögulegt.

Smá kenning

Umboðsmenn athuga hvort auðlind sé tiltæk, þar á meðal með HTTP(S) beiðnum, eins og þessari:

TCP, 14678  >  80, "[SYN] Seq=0"
TCP, 80  >  14678, "[SYN, ACK] Seq=0 Ack=1"
TCP, 14678  >  80, "[ACK] Seq=1 Ack=1"

HTTP, "GET /somepage HTTP/1.1"
TCP, 80  >  14678, "[ACK] Seq=1 Ack=71"
HTTP, "HTTP/1.1 302 Found"

TCP, 14678  >  80, "[FIN, ACK] Seq=71 Ack=479"
TCP, 80  >  14678, "[FIN, ACK] Seq=479 Ack=72"
TCP, 14678  >  80, "[ACK] Seq=72 Ack=480"

Til viðbótar við farminn samanstendur beiðnin einnig af tengingaráfanga: skipti SYN и SYN-ACK, og tengingarferli: FIN-ACK.

Í skrá yfir bannaðar upplýsingar er að finna nokkrar tegundir af lokun. Augljóslega, ef auðlind er læst með IP-tölu eða lén, þá munum við ekki sjá neinar beiðnir. Þetta eru eyðileggjandi tegundir af lokun, sem leiða til óaðgengilegs allra auðlinda á einni IP tölu eða allar upplýsingar á léni. Það er líka til „með slóð“ gerð af lokun. Í þessu tilviki verður síunarkerfið að flokka HTTP beiðnihausinn til að ákvarða nákvæmlega hvað á að loka. Og áður en það, eins og sjá má hér að ofan, ætti að vera tengingaráfangi sem þú getur reynt að fylgjast með, þar sem líklegast mun sían missa af því.

Til að gera þetta þarftu að velja viðeigandi ókeypis lén með „URL“ og HTTP-blokkunargerðinni til að auðvelda vinnu síunarkerfisins, helst löngu yfirgefið, til að lágmarka innkomu utanaðkomandi umferðar nema frá umboðsmönnum. Þetta verkefni reyndist alls ekki erfitt; það er töluvert mikið af ókeypis lénum í skránni yfir bannaðar upplýsingar og fyrir hvern smekk. Þess vegna var lénið keypt og tengt við IP tölur á VPS í gangi tcpdump og talningin hófst.

Endurskoðun "endurskoðenda"

Ég bjóst við að sjá reglulegar beiðnir, sem að mínu mati myndi benda til stjórnaðra aðgerða. Það er ómögulegt að segja að ég hafi alls ekki séð það, en það var örugglega engin skýr mynd:

Við skulum telja umboðsmenn "eftirlitsmann"

Sem kemur ekki á óvart, jafnvel á léni sem enginn þarfnast og á aldrei notuðu IP-tölu, þá verður einfaldlega fullt af óumbeðnum upplýsingum, svo sem nútíma internetið. En sem betur fer vantaði mig bara beiðnir um ákveðna vefslóð, svo allir skannar og lykilorðasprengjur fundust fljótt. Einnig var frekar auðvelt að skilja hvar flóðið var byggt á fjölda svipaðra beiðna. Næst tók ég saman tíðni IP-tölu og fór í gegnum allan toppinn handvirkt og aðskildi þá sem misstu af því á fyrri stigum. Að auki klippti ég út allar heimildirnar sem voru sendar í einum pakka, þær voru ekki margar lengur. Og þetta er það sem gerðist:

Við skulum telja umboðsmenn "eftirlitsmann"

Lítil ljóðræn útrás. Rúmum degi síðar sendi hýsingaraðilinn minn bréf með frekar straumlínulaguðu innihaldi þar sem hann sagði að aðstaða þín innihaldi tilföng af bannlista RKN, svo það er lokað. Í fyrstu hélt ég að reikningnum mínum væri lokað, þetta var ekki raunin. Þá hélt ég að þeir væru einfaldlega að vara mig við einhverju sem ég vissi nú þegar. En það kom í ljós að hýsingaraðilinn kveikti á síu sinni fyrir framan lénið mitt og þar af leiðandi lenti ég í tvöfaldri síun: frá veitendum og hýsingaraðila. Sían stóðst aðeins enda beiðna: FIN-ACK и RST slökkva á öllu HTTP á bönnuðum vefslóð. Eins og þú sérð á grafinu hér að ofan byrjaði ég að fá minni gögn eftir fyrsta daginn, en ég fékk þau samt sem var alveg nóg fyrir það verkefni að telja beiðniheimildir.

Komdu þér að efninu. Að mínu mati sjást tvö sprengingar greinilega á hverjum degi, sá fyrsti minni, eftir miðnætti að Moskvutíma, sá síðari nær 6 á morgnana með hala til 12 á hádegi. Hámarkið kemur ekki á nákvæmlega sama tíma. Í fyrstu vildi ég velja IP tölur sem féllu aðeins á þessum tímabilum og hver á öllum tímabilum, byggt á þeirri forsendu að athuganir af umboðsmönnum séu gerðar reglulega. En við vandlega yfirferð uppgötvaði ég fljótt tímabil sem féllu í önnur tímabil, með öðrum tíðni, allt að einni beiðni á klukkutíma fresti. Svo hugsaði ég um tímabelti og að það hefði kannski eitthvað með þau að gera, þá hugsaði ég að almennt væri kerfið kannski ekki samstillt á heimsvísu. Að auki mun NAT líklega gegna hlutverki og sami umboðsmaður getur lagt fram beiðnir frá mismunandi opinberum IP-tölum.

Þar sem upphaflegt markmið mitt var ekki nákvæmlega, taldi ég öll heimilisföngin sem ég rakst á á viku og fékk - 2791. Fjöldi TCP funda sem komið er á frá einu heimilisfangi er að meðaltali 4, með miðgildi 2. Topplotur á heimilisfang: 464, 231, 149, 83, 77. Hámarkið frá 95% úrtaksins er 8 lotur á hvert heimilisfang. Miðgildið er ekki mjög hátt, ég minni á að línuritið sýnir skýra daglega tíðni, þannig að búast mætti ​​við eitthvað í kringum 4 til 8 eftir 7 daga. Ef við hendum öllum lotunum sem eiga sér stað einu sinni, fáum við miðgildi sem er jafn 5. En ég gat ekki útilokað þær út frá skýrri viðmiðun. Þvert á móti sýndi slembiskoðun að þær tengdust beiðnum um bönnuð auðlind.

Heimilisföng eru heimilisföng, en á Netinu, sjálfstæð kerfi - AS, sem reyndist vera mikilvægara 1510, að meðaltali 2 heimilisföng á AS með miðgildi 1. Efstu vistföng á AS: 288, 77, 66, 39, 27. Hámark 95% úrtaks eru 4 heimilisföng á AS. Hér er gert ráð fyrir miðgildi - einum umboðsmanni á hvern veitanda. Við búumst líka við toppnum - það eru stórir leikmenn í honum. Í stóru neti ættu umboðsmenn líklega að vera staðsettir á hverju svæði í viðveru símafyrirtækisins og ekki gleyma NAT. Ef við tökum það eftir löndum verða hámarkin: 1409 - RU, 42 - UA, 23 - CZ, 36 frá öðrum svæðum, ekki RIPE NCC. Beiðnir utan Rússlands vekja athygli. Þetta má líklega skýra með landfræðilegum staðsetningarvillum eða skrásetningarvillum við útfyllingu gagna. Eða þá staðreynd að rússneskt fyrirtæki hefur kannski ekki rússneskar rætur, eða erlenda umboðsskrifstofu vegna þess að það er auðveldara, sem er eðlilegt þegar um er að ræða erlenda stofnun RIPE NCC. Einhver hluti er án efa óþarfur, en það er áreiðanlega erfitt að aðskilja hann, þar sem auðlindin er undir lokun og frá öðrum degi undir tvöföldu lokun og flestar lotur eru bara skipting á nokkrum þjónustupakka. Við skulum vera sammála um að þetta er lítill hluti.

Nú þegar er hægt að bera þessar tölur saman við fjölda veitenda í Rússlandi. Samkvæmt RKN leyfi fyrir "Samskiptaþjónustu fyrir gagnaflutning, að undanskildum rödd" - 6387, en þetta er mjög hátt mat að ofan, ekki öll þessi leyfi eiga sérstaklega við um netveitur sem þurfa að setja upp umboðsmann. Á RIPE NCC svæðinu er svipaður fjöldi ASes skráð í Rússlandi - 6230, þar af eru ekki allir veitendur. UserSide gerði strangari útreikning og tók á móti 3940 fyrirtækjum árið 2017 og er þetta frekar áætlun að ofan. Hvað sem því líður erum við með tvisvar og hálfu sinnum færri upplýst AS. En hér er þess virði að skilja að AS er ekki nákvæmlega jafnt og veitandanum. Sumir veitendur hafa ekki sitt eigið AS, sumir hafa fleiri en eitt. Ef við gerum ráð fyrir að allir hafi enn umboðsmenn, þá síar einhver sterkari en aðrir, þannig að beiðnir þeirra eru óaðgreinanlegar frá sorpi, ef þær berast þá yfirleitt. En fyrir gróft mat er það alveg þolanlegt, jafnvel þótt eitthvað hafi tapast vegna yfirsjónar minnar.

Um DPI

Þrátt fyrir þá staðreynd að hýsingaraðilinn minn kveikti á síu sinni frá og með öðrum degi, byggt á upplýsingum frá fyrsta degi getum við ályktað að lokunin virki með góðum árangri. Aðeins 4 heimildir komust í gegnum og hafa alveg lokið HTTP og TCP lotum (eins og í dæminu hér að ofan). Hægt er að senda aðra 460 GET, en þinginu er þegar slitið af RST. Gefðu gaum að TTL:

TTL 50, TCP, 14678  >  80, "[SYN] Seq=0"
TTL 64, TCP, 80  >  14678, "[SYN, ACK] Seq=0 Ack=1"
TTL 50, TCP, 14678  >  80, "[ACK] Seq=1 Ack=1"

HTTP, "GET /filteredpage HTTP/1.1"
TTL 64, TCP, 80  >  14678, "[ACK] Seq=1 Ack=294"

#Вот это прислал фильтр
TTL 53, TCP, 14678  >  80, "[RST] Seq=3458729893"
TTL 53, TCP, 14678  >  80, "[RST] Seq=3458729893"

HTTP, "HTTP/1.1 302 Found"

#А это попытка исходного узла получить потерю
TTL 50, TCP ACKed unseen segment, 14678 > 80, "[ACK] Seq=294 Ack=145"

TTL 50, TCP, 14678  >  80, "[FIN, ACK] Seq=294 Ack=145"
TTL 64, TCP, 80  >  14678, "[FIN, ACK] Seq=171 Ack=295"

TTL 50, TCP Dup ACK 14678 > 80 "[ACK] Seq=295 Ack=145"

#Исходный узел понимает что сессия разрушена
TTL 50, TCP, 14678  >  80, "[RST] Seq=294"
TTL 50, TCP, 14678  >  80, "[RST] Seq=295"

Afbrigði af þessu geta verið mismunandi: minna RST eða fleiri endursendingar - fer líka eftir því hvað sían sendir til upprunahnútsins. Í öllu falli er þetta áreiðanlegasta sniðmátið, þar sem ljóst er að það var bannað úrræði sem óskað var eftir. Auk þess er alltaf svar sem birtist í lotunni með TTL meiri en í fyrri og síðari pakka.

Þú getur ekki einu sinni séð það frá hinum GET:

TTL 50, TCP, 14678  >  80, "[SYN] Seq=0"
TTL 64, TCP, 80  >  14678, "[SYN, ACK] Seq=0 Ack=1"

#Вот это прислал фильтр
TTL 53, TCP, 14678  >  80, "[RST] Seq=1"

Eða svo:

TTL 50, TCP, 14678  >  80, "[SYN] Seq=0"
TTL 64, TCP, 80  >  14678, "[SYN, ACK] Seq=0 Ack=1"
TTL 50, TCP, 14678  >  80, "[ACK] Seq=1 Ack=1"

#Вот это прислал фильтр
TTL 53, TCP, 14678  >  80, "[RST, PSH] Seq=1"

TTL 50, TCP ACKed unseen segment, 14678 > 80, "[FIN, ACK] Seq=89 Ack=172"
TTL 50, TCP ACKed unseen segment, 14678 > 80, "[FIN, ACK] Seq=89 Ack=172"

#Опять фильтр, много раз
TTL 53, TCP, 14678  >  80, "[RST, PSH] Seq=1"
...

Munurinn er svo sannarlega sjáanlegur TTL ef eitthvað kemur úr síunni. En oft kemur alls ekkert:

TCP, 14678  >  80, "[SYN] Seq=0"
TCP, 80  >  14678, "[SYN, ACK] Seq=0 Ack=1"
TCP Retransmission, 80 > 14678, "[SYN, ACK] Seq=0 Ack=1"
...

Eða svo:

TCP, 14678  >  80, "[SYN] Seq=0"
TCP, 80  >  14678, "[SYN, ACK] Seq=0 Ack=1"
TCP, 14678  >  80, "[ACK] Seq=1 Ack=1"

#Прошло несколько секунд без трафика

TCP, 80  >  14678, "[FIN, ACK] Seq=1 Ack=1"
TCP Retransmission, 80 > 14678, "[FIN, ACK] Seq=1 Ack=1"
...

Og allt er þetta endurtekið og endurtekið og endurtekið, eins og sést á línuritinu, oftar en einu sinni, á hverjum degi.

Um IPv6

Góðu fréttirnar eru þær að það er til. Ég get áreiðanlega sagt að reglubundnar beiðnir um bönnuð auðlind koma frá 5 mismunandi IPv6 vistföngum, sem er nákvæmlega hegðun umboðsmanna sem ég bjóst við. Þar að auki fellur eitt af IPv6 vistföngunum ekki undir síun og ég sé fulla lotu. Af tveimur til viðbótar sá ég aðeins eina ólokið lotu, þar af einn sem var rofin af RST frá síunni, annað í tíma. Heildarupphæð 7.

Þar sem það eru fá heimilisföng kynnti ég þau öll ítarlega og í ljós kom að það eru bara 3 veitendur þar, þeir geta fengið uppreist æru! Annað heimilisfang er skýhýsing í Rússlandi (síur ekki), annað er rannsóknarmiðstöð í Þýskalandi (það er sía, hvar?). En hvers vegna athuga þeir framboð á bönnuðum auðlindum á áætlun er góð spurning. Hinir tveir gerðu eina beiðni og eru staðsettir utan Rússlands og annar þeirra er síaður (í flutningi, eftir allt saman?).

Útilokun og umboðsmenn eru stór hindrun fyrir IPv6, innleiðing þess er ekki að fara mjög hratt. Það er sorglegt. Þeir sem leystu þetta vandamál geta verið fullkomlega stoltir af sjálfum sér.

Að lokum

Ég keppti ekki að 100% nákvæmni, vinsamlegast fyrirgefðu mér þetta, ég vona að einhver vilji endurtaka þessa vinnu af meiri nákvæmni. Það var mikilvægt fyrir mig að skilja hvort þessi nálgun myndi virka í grundvallaratriðum. Svarið er já. Sem fyrsta nálgun, held ég að þær tölur sem fengust séu nokkuð áreiðanlegar.

Það sem annað hefði verið hægt að gera og það sem ég var of latur til að gera var að telja DNS beiðnir. Þeir eru ekki síaðir, en þeir veita heldur ekki mikla nákvæmni þar sem þeir virka aðeins fyrir lénið, en ekki fyrir alla vefslóðina. Tíðnin ætti að vera sýnileg. Ef þú sameinar það við það sem er sýnilegt beint í fyrirspurnunum mun þetta gera þér kleift að aðgreina það sem er óþarft og fá frekari upplýsingar. Það er jafnvel hægt að ákvarða þróunaraðila DNS sem veitendur nota og margt fleira.

Ég bjóst alls ekki við því að hýsingaraðilinn myndi líka innihalda sína eigin síu fyrir VPS minn. Kannski er þetta algeng venja. Að lokum sendir RKN beiðni um að eyða auðlindinni til hýsingaraðilans. En þetta kom mér ekki á óvart og kom mér að sumu leyti til góða. Sían virkaði á mjög áhrifaríkan hátt og klippti allar réttar HTTP beiðnir í bannaða vefslóð, en ekki réttar þær sem áður höfðu farið í gegnum síu þjónustuveitunnar náðu þeim, þó aðeins í formi endinga: FIN-ACK и RST - mínus fyrir mínus og það reyndist næstum því vera plús. Við the vegur, IPv6 var ekki síað af hýsingaraðila. Þetta hafði auðvitað áhrif á gæði þess sem safnað var, en samt sem áður var hægt að sjá tíðnina. Það kom í ljós að þetta er mikilvægt atriði þegar þú velur síðu til að setja auðlindir; ekki gleyma að hafa áhuga á því að skipuleggja vinnu með lista yfir bannaðar síður og beiðnir frá RKN.

Í upphafi bar ég AS "Inspector" saman við ÞRÓAÐUR Atlas. Þessi samanburður er alveg réttlætanlegur og stórt net umboðsmanna getur verið gagnlegt. Til dæmis að ákvarða gæði auðlindaframboðs frá mismunandi veitendum í mismunandi landshlutum. Þú getur reiknað út tafir, þú getur smíðað línurit, þú getur greint þetta allt og séð breytingarnar eiga sér stað bæði á staðnum og á heimsvísu. Þetta er ekki beinasta leiðin, en stjörnufræðingar nota „venjuleg kerti“, hvers vegna ekki að nota Agents? Með því að þekkja (hafa fundið) staðlaða hegðun þeirra geturðu ákvarðað breytingarnar sem verða í kringum þá og hvernig þetta hefur áhrif á gæði þjónustunnar sem veitt er. Og á sama tíma þarftu ekki að setja rannsakandi sjálfstætt á netið; Roskomnadzor hefur þegar sett þær upp.

Annar punktur sem ég vil koma inn á er að hvert verkfæri getur verið vopn. AS "Inspector" er lokað net, en umboðsmenn afhenda alla með því að senda beiðnir um öll úrræði af bannlista. Að hafa slíkt úrræði skapar alls ekki vandamál. Alls segja veitendur í gegnum umboðsmenn, óafvitandi, miklu meira um netið sitt en líklega er þess virði: DPI og DNS gerðir, staðsetningu umboðsmannsins (miðlægur hnútur og þjónustunet?), netmerki um tafir og tap - og þetta er aðeins það augljósasta. Rétt eins og einhver getur fylgst með aðgerðum umboðsmanna til að bæta framboð á auðlindum sínum, getur einhver gert þetta í öðrum tilgangi og það eru engar hindranir fyrir því. Útkoman er tvíeggjað og mjög margþætt hljóðfæri, þetta getur hver sem er séð.

Heimild: www.habr.com

Bæta við athugasemd