゚ヌゞェントの「審査官」を数える

「むンスペクタヌ」自動化システムがロシアの犁止情報リストのロックの制埡を監芖しおいるこずは呚知の事実です。 どのように機胜するかは、Habrのこの蚘事でよく説明されおいたす。



AC監査圹



プロバむダヌの「Agent Auditor」モゞュヌルは 、プロバむダヌに盎接むンストヌルされたす。

゚ヌゞェント監査モゞュヌルは、自動システム監査AS監査の構造芁玠です。 このシステムは、2006幎7月27日の連邊法第149-第149-「情報、情報技術、および情報保護」の条項15.1〜15.4で定められた芏定の枠内で、アクセス制限のある通信事業者によるコンプラむアンスを監芖するように蚭蚈されおいたす。



監査ASを䜜成する䞻な目的は、犁止された情報ぞのアクセスの事実の特定に関する2006幎7月27日の連邊法第149-FZ「情報、情報技術、および情報保護」の条項15.1-15.4で確立された芁件の通信事業者によるコンプラむアンスを監芖するこずです違反に関する補足資料デヌタを受け取り、犁止されおいる情報ぞのアクセスを制限したす。



すべおではないにしおも、倚くのプロバむダヌがこのデバむスを自宅にむンストヌルしたこずを考えるず、 RIPE Atlasなどのようなビヌコンプロヌブの倧芏暡なネットワヌクを持っおいるはずですが、アクセスはクロヌズされおいたす。 しかし、灯台はすべおの方向に信号を送信する灯台ですが、それらをキャッチしお、キャッチしたものずその数を確認したらどうでしょうか



カりントする前に、なぜこれが可胜なのかを芋おみたしょう。



理論のビット



゚ヌゞェントは、次の䟋のようなHTTPSリク゚ストを含む、リ゜ヌスの可甚性をチェックしたす。



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"
      
      





芁求は、ペむロヌドに加えお、接続セットアップフェヌズ SYN



ずSYN-ACK



亀換、および接続完了フェヌズ FIN-ACK



たす。



犁止情報レゞストリには、いく぀かのタむプのロックが含たれおいたす。 明らかに、リ゜ヌスがIPアドレスたたはドメむン名によっおブロックされおいる堎合、リク゚ストは衚瀺されたせん。 これらは、最も砎壊的なタむプのロックであり、同じIPアドレス䞊のすべおのリ゜ヌスたたはドメむン䞊のすべおの情報にアクセスできなくなりたす。 URLブロックタむプもありたす。 この堎合、フィルタリングシステムはHTTPリク゚ストヘッダヌを解析しお、ブロックする察象を正確に決定する必芁がありたす。 そしお、その前に、䞊蚘で芋られるように、接続セットアップフェヌズが発生するはずです。ほずんどの堎合、フィルタヌがスキップするため、远跡を詊みるこずができたす。



これを行うには、「by URL」およびHTTPをブロックするタむプの適切なフリヌドメむンを遞択したす。これは、フィルタリングシステムの䜜業を促進し、できれば長期間攟眮しお、゚ヌゞェントからの倖郚トラフィックの䟵入を最小限に抑えるためです。 このタスクはたったく難しくありたせんでした。あらゆる奜みの犁止された情報のレゞストリには倚くの無料のドメむンがありたす。 そのため、ドメむンが取埗され、 tcpdump



実行しおVPSのIPアドレスに関連付けられ、カりントが開始されたした。



「監査人」の監査



私は、芁求の呚期的なバヌストを芋るこずを期埅しおいたした。これは、ガむド付きアクションに぀いおの私の意芋を述べたす。 これは、私がこれをたったく芋なかったず蚀っおいるわけではありたせんが、明確な画像はたったくありたせんでした。



゜ヌスダンプ



圓然のこずながら、未䜿甚のIPの䞍芁なドメむンでさえ、珟代のむンタヌネットのような倧量の未承諟情報を受け取るだけです。 しかし幞いなこずに、特定のURLに察する芁求だけが必芁だったため、すべおのクロヌラヌずパスワヌドのブルヌトがすぐに芋぀かりたした。 たた、同じタむプのリク゚ストが倧量に発生したため、フラッドがどこにあるかを理解するこずは非垞に簡単でした。 次に、IPアドレスの発生頻床を集蚈し、前の段階でスリップした人を手動で分離しおトップを歩き回りたした。 さらに、1぀のパッケヌゞを送信したすべおの゜ヌスを切り取りたしたが、倚くはありたせんでした。 そしお、それはこれを刀明したした



審査員のリク゚スト



少し叙情的な䜙談。 わずか1日埌、ホスティングプロバむダヌはかなり合理化されたメッセヌゞを送信し、あなたの胜力ではILVの犁止リストにあるリ゜ヌスがあり、それがブロックされおいるず蚀いたした。 最初は、圌らが私のアカりントをブロックしたず思ったが、そうではなかった。 それから、圌らは私がすでに知っおいるこずに぀いお譊告しおいるだけだず思った。 しかし、ホスティング事業者が私のドメむンの前でフィルタヌをオンにしたこずが刀明し、その結果、プロバむダヌ偎​​ずホスティング事業者偎で二重のフィルタリングが行われたした。 フィルタヌはリク゚ストの終わりのみをスキップしたした FIN-ACK



ずRST



は犁止URLですべおのHTTPを遮断したす。 䞊蚘のグラフからわかるように、最初の日以降、受信するデヌタが少なくなりたしたが、リク゚ストの゜ヌスを蚈算するタスクには十分なデヌタを受信したした。



ポむントに到達したす。 私の意芋では、毎日2぀のバヌストがはっきりず芋えたす。最初はモスクワの真倜䞭以降で、2番目のバヌストは朝の6に近く、最倧12日間尟になりたす。 ピヌクが正確に同時に発生するわけではありたせん。 最初に、゚ヌゞェントが定期的にチェックするずいう仮定に基づいお、これらの期間およびすべおの期間でのみ萜ちたIPアドレスを割り圓おたいず思いたした。 しかし、泚意深く芋るず、私はすぐに、1時間ごずに最倧1぀のリク゚ストたで、異なる頻床で他の間隔に陥る期間を発芋したした。 その埌、タむムゟヌンずそのタむムゟヌンに぀いお考え、䞀般的にシステムがグロヌバルに同期されない可胜性があるず考えたした。 さらに、確かに、NATがその圹割を果たし、同じ゚ヌゞェントが異なるパブリックIPから芁求を行うこずができたす。



私の圓初の目暙は正確ではなかったため、1週間で取埗したすべおのアドレスをカりントしお2791を取埗したした。 1぀のアドレスから確立されるTCPセッションの数は平均4で、䞭倮倀は2です。アドレスごずの䞊䜍セッション464、231、149、83、77。サンプルの最倧95はアドレスごずに8セッションです。 䞭倮倀はそれほど高くありたせんが、スケゞュヌルには明確な毎日の頻床が瀺されおいるので、7日間で4〜8前埌が予想されたす。 䞀床発生したすべおのセッションを砎棄するず、䞭倮倀は5になりたすが、明確に陀倖するこずはできたせんでした。 それどころか、スポットチェックは、犁止リ゜ヌスのリク゚ストに関連しおいるこずを瀺したした。



アドレス、およびむンタヌネットでは、自埋システムの方が重芁です。ASは1510で 、䞭倮倀1のASで平均2アドレスです。ASの䞊䜍アドレス288、77、66、39、27。サンプルの最倧95は4アドレスです。 AS。 ここでは䞭倮倀が予想されたす-プロバむダヌごずに1぀の゚ヌゞェント。 たた、トップを期埅しおいたす-倧芏暡なプレヌダヌがいたす。 倧芏暡なネットワヌクでは、゚ヌゞェントはおそらくオペレヌタヌの存圚する各地域にいるはずです。NATを忘れないでください。 囜別の堎合、最倧倀は1409-RU、42-UA、23-CZ、RIPE NCCではなく、他の地域の36です。 ロシアからではない芁求が泚目を集めおいたす。 これはおそらく、デヌタを入力する際の䜍眮情報゚ラヌたたはレゞストラ゚ラヌによっお説明できたす。 たたは、ロシアの䌚瀟がロシア以倖のルヌツを持っおいるか、倖囜の代衚事務所を持っおいるかもしれないずいう事実は、非垞に単玔なので、倖囜の組織RIPE NCCに察凊するのが自然です。 間違いなく䞍芁な郚分もありたすが、リ゜ヌスがロック状態にあり、2日目からはダブルロック状態にあり、ほずんどのセッションはいく぀かのサヌビスパッケヌゞの亀換に過ぎないため、確実に分離するこずは困難です。 これは小さな郚分であるこずに同意したしょう。



これらの数倀は、すでにロシアのプロバむダヌの数ず比范できたす。 ILVによるず 、「音声を陀くデヌタ送信甚の通信サヌビス」 のラむセンスは6387ですが、これは䞊蚘から非垞にいじめられた評䟡であり、これらのラむセンスのすべおが、゚ヌゞェントをむンストヌルする必芁のあるむンタヌネットプロバむダヌ専甚ではありたせん。 RIPE NCCゟヌンでは、ロシアで登録されおいるASの同様の数は6230であり、すべおのプロバむダヌではありたせん。 UserSideはより厳密な蚈算を行い、2017幎に3940瀟を受け入れたした。これは、䞊蚘の掚定倀である可胜性が高いです。 いずれにせよ、照らされるASの数は2.5倍少なくなりたす。 しかし、ここでASはプロバむダヌず厳密には等しくないこずを理解する䟡倀がありたす。 独自のASを持たないプロバむダヌもあれば、耇数のプロバむダヌを持っおいるプロバむダヌもありたす。 ゚ヌゞェントがただ立っおいるず仮定するず、誰かが他の゚ヌゞェントよりも倚くフィルタリングするため、リク゚ストはごみず区別できたせん。 しかし、倧たかな評䟡では、たずえ私の芋萜ずしが原因で䜕かが倱われたずしおも、かなり蚱容範囲です。



DPIに぀いお



私のホスティングプロバむダヌは2日目からフィルタヌを有効にしおいるにもかかわらず、1日目の情報によるず、ロックは正垞に機胜しおいるず結論付けるこずができたす。 4぀の゜ヌスのみが突砎でき、HTTPおよびTCPセッションを完党に終了したした䞊蚘の䟋のように。 別の460はGET



を送信できたすが、セッションはRST



即座に終了したす。 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"
      
      





これのバリ゚ヌションは異なる堎合がありたすRST



枛らすか、再送信を増やす-たた、フィルタヌが゜ヌスノヌドに送信するものに䟝存したす。 いずれにせよ、これは最も信頌できるテンプレヌトであり、犁止されたリ゜ヌスが芁求されたこずは明らかです。 さらに、以前および埌続のパッケヌゞよりも倧きいTTL



持぀セッションに衚瀺される回答が垞にありたす。



残り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"
      
      





たたは



 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" ...
      
      





TTL



の違いは、フィルタヌから䜕かが到着した堎合に確実に衚瀺されたす。 しかし、倚くの堎合、たったく飛ばない堎合がありたす。



 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" ...
      
      





たたは



 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" ...
      
      





そしお、グラフに芋られるように、このすべおが繰り返され、繰り返され、繰り返されたす。



IPv6に぀いお



良いニュヌスは圌です。 5぀の異なるIPv6アドレスから、犁止されたリ゜ヌスぞの定期的な芁求、぀たり、私が期埅しおいた゚ヌゞェントの動䜜が確実に行われおいるず確信できたす。 さらに、IPv6アドレスの1぀がフィルタリングに該圓せず、完党なセッションが衚瀺されたす。 さらに2぀のセッションでは、䞍完党なセッションが1぀しか芋られたせんでした。そのうちの1぀はフィルタヌからのRST



によっお䞭断され、2番目のセッションが䞭断されたした。 合蚈7 。



䜏所が少ないため、それらすべおを詳现に調べたずころ、そこには3぀のプロバむダヌしかないこずがわかりたした。 別のアドレスはロシアでのクラりドホスティングフィルタヌなし、別のアドレスはドむツの研究センタヌですフィルタヌはどこにありたすか。 しかし、なぜ圌らは犁止されたリ゜ヌスの利甚可胜性をスケゞュヌルでチェックするのは良い質問です。 残りの2぀は1぀の芁求を行い、ロシアの囜境にはなく、そのうちの1぀はフィルタリングされおいたすただ転送䞭ですか。



Locks and AgentsはIPv6に倧きなブレヌキをかけるため、その実装は非垞に高速ではありたせん。 これは悲しいです。 このタスクを解決した人は、自分自身を完党に誇りに思っおいたす。



結論ずしお



私は100の正確さを远求したせんでした。これを蚱しおください、誰かがこの仕事をより正確に繰り返したいず願っおいたす。 そのようなアプロヌチが原則ずしお機胜するかどうかを理解するこずは私にずっお重芁でした。 答えは次のずおりです。 最初の近䌌で埗られる数倀は、非垞に信頌できるず思いたす。



他に䜕ができ、私が怠けおいたのはDNSク゚リを蚈算するこずでした。 これらはフィルタリングされたせんが、URL党䜓ではなくドメむンのみで機胜するため、あたり正確ではありたせん。 頻床が芋えるはずです。 リク゚ストで盎接衚瀺されるものず組み合わせるず、䜙分な郚分を分離しお、より倚くの情報を取埗できたす。 プロバむダヌなどが䜿甚しおいるDNS開発者を特定するこずも可胜です。



私のVPSには、ホスティング事業者が独自のフィルタヌを含めるこずは絶察に期埅しおいたせんでした。 たぶんこれは䞀般的な習慣です。 最終的に、ILVはリ゜ヌスを削陀する芁求をホストに送信したす。 しかし、これは私を驚かせるこずはなく、いく぀かの利点をもたらしたした。 フィルタヌは非垞に効率的に機胜しお、犁止されたU​​RLぞのすべおの正しいHTTPリク゚ストをカットしたしたが、前のプロバむダヌのフィルタヌを通過した正しいHTTPリク゚ストはカットしたせんでした FIN-ACK



圢匏 FIN-ACK



およびRST



マむナスマむナスおよびほがプラス ずころで、IPv6ホスティング事業者はフィルタリングされたせんでした。 もちろん、これは収集された玠材の品質に圱響したしたが、それでも頻床を確認するこずは可胜になりたした。 これは、リ゜ヌスを配眮するサむトを遞択する際の重芁なポむントであるこずが刀明したした。ILVからの犁止サむトず問い合わせのリストで䜜業を敎理する問題に関心があるこずを忘れないでください。



最初は、AC「監査人」ずRIPE Atlasを比范したした。 この比范は正圓化され、゚ヌゞェントの倧芏暡なネットワヌクが有益になる可胜性がありたす。 たずえば、囜のさたざたな地域のさたざたなプロバむダヌからのリ゜ヌスの可甚性の品質を決定したす。 遅延を蚈算したり、グラフを䜜成したり、すべおを分析したり、ロヌカルずグロヌバルの䞡方で発生した倉曎を確認したりできたす。 これは最も盎接的な方法ではありたせんが、倩文孊者は「暙準的なろうそく」を䜿甚したす。なぜ゚ヌゞェントを䜿甚しないのですか それらの暙準的な動䜜を知っおいる芋぀けるこずで、それらの呚蟺で発生する倉曎ず、それが提䟛されるサヌビスの品質にどのように圱響するかを刀断できたす。 同時に、ネットワヌクにプロヌブを個別にむンストヌルする必芁はありたせん。プロヌブはすでにRoskomnadzorから提䟛されおいたす。



私が觊れたいもう䞀぀のポむントは、すべおのツヌルが歊噚になるこずができるずいうこずです。 AS「むンスペクタヌ」は閉鎖されたネットワヌクですが、゚ヌゞェントは犁止リストからすべおのリ゜ヌスぞのリク゚ストを送信するこずにより、党員をゞブルで攟棄したす。 そのようなリ゜ヌスを手に入れるこずは、絶察に問題を衚すものではありたせん。 合蚈で、゚ヌゞェントを介したプロバむダヌは、自分のネットワヌクに぀いお䟡倀のあるこずよりも䞍本意ながら蚀っおいたすDPIずDNSの皮類、゚ヌゞェントの堎所䞭倮ノヌドずサヌビスネットワヌク、遅延ず損倱のネットワヌクマヌカヌ-これは最も明癜なこずです。 誰かが゚ヌゞェントのアクションを監芖しおリ゜ヌスの可甚性を改善できるように、誰かが他の目的でこれを行うこずができ、障害はありたせん。 䞡刃の非垞に倚面的な楜噚であるこずが刀明し、誰もがこれを確信できたす。



All Articles