コンテンツへスキップ
不正防止

モバイルプロキシの検出方法:4G/5G の IP が基本的な IP チェックをすり抜ける理由

モバイルプロキシの検出は困難です。不正は数千人のユーザーが共有する本物の 4G/5G キャリア IP を経由するからです。基本的な IP チェックが失敗する理由と、実際に機能するシグナルを解説します。

著者GeoIPHub チーム公開日読了時間17 分で読めます
光でできた携帯電話基地局の 1 本のビームに多数のデバイスが集まっている様子。キャリアネットワークの背後にあるモバイルプロキシを表しています

データセンタープロキシは第一波であり、最も捕まえやすいものです。データセンター IP アドレスとは何かで解説したとおり、クラウドの ASN は一般消費者がブラウジングする場所ではないからです。住宅用プロキシは第二波で、家庭向け ISP アドレスの信頼を借りているからこそ、現実のトラフィックにあふれるようになりました。

モバイルプロキシは第三波であり、VPN とプロキシ検出のあらゆるレイヤーにとって難易度をさらに引き上げます。住宅用 IP は少なくとも 1 世帯の回線を特定します。モバイル IP は、キャリアグレード NAT のせいで群衆を特定するにすぎず、その群衆に紛れた不正リクエストは他の全員とまったく同じに見えます。

ゲートの背後で 1 つの明るいノードが多数のかすかなノードへ広がっている様子。数千人のユーザーが 1 つのキャリア IP を共有していることを表しています
数千人の実ユーザーが 1 つのキャリアアドレスを共有できます。モバイルプロキシはまさにその背後に隠れています。

モバイルプロキシとは?

モバイルプロキシとは携帯電話ネットワーク上に置かれた中継点であり、4 つの主要なプロキシタイプの中で最も高価なものです。運営者は SIM カードを入れたデバイス(スマートフォン、USB モデム、あるいは数百台のモデムを載せたラック)を管理し、そこを経由してトラフィックを流す権利を販売します。顧客のリクエストはキャリアの IP 空間からインターネットに出ていき、キャリアの ASN と mobile という接続タイプが付与されます。

販売されている商品は帯域ではありません。信頼の継承です。つまり大手モバイル事業者のアドレス空間が持つ統計的なレピュテーションであり、どの IP も正規の顧客と共有されているため、不正対策チームが一斉ブロックに踏み切れない空間なのです。

IP の供給源

モバイルプロキシネットワークは 3 つの方法で供給を確保しています。悪質さの低い順に並べます。

  • SIM ファーム。 SIM カードを入れ替えながら運用する 4G/5G モデムのラックで、意図的にプロキシインフラとして運用されます。運営者は機内モードを切り替えたり、ネットワークに再接続したりして IP のローテーションを強制します。
  • アプリ内のプロキシ SDK。 無料アプリが、ユーザーのモバイル帯域をひそかに転売する SDK を組み込んで収益化します。セキュリティ研究者は、こうした SDK が一般向けアプリやスマート TV のソフトウェアにまで搭載され、普通のデバイスを出口ノードに変えていることを報告しています。
  • マルウェアによる取り込み。 感染したスマートフォンが、持ち主が気付かないうちにプロキシプールに徴用されます。これは住宅用プロキシ市場の供給の多くを支えているのと同じパターンです。

2 つ目と 3 つ目の経路があるということは、「モバイルプロキシの IP」が実在する人のスマートフォンであることが非常に多いということです。だからこそ、IP そのものを判定結果にすることは決してできないのです。

モバイルプロキシ、住宅用プロキシ、データセンタープロキシの比較

データセンタープロキシ住宅用プロキシモバイルプロキシ
出口 IP の所有者クラウド/ホスティング事業者家庭向け ISP の契約者モバイルキャリア(4G/5G)
IP の背後にいるユーザープロキシ運営者1 世帯数百〜数千(CGNAT)
IP の安定性固定、長期間有効数日〜数週間数分〜数時間
ブロックリストの有効性高い低いほぼゼロで、しかも危険
検出の難易度低い高い最も高い
不正行為者にとっての相対コスト最も安い中程度最も高い

コストは信頼に比例します。攻撃者がモバイルの割増料金を払うのは、住宅用やデータセンターの出口がすでに捕まってしまう標的、つまり高額なサインアップ、数量限定の販売、銀行の取引フロー、広告検証に対してだけです。モバイルプロキシのトラフィックが見えているなら、あなたのサイトの何かがその割増料金に見合う価値を持っているということです。

モバイルプロキシのブロックがこれほど難しい理由

4 つの性質が重なって検出の問題を生んでいます。

CGNAT によって IP はユーザーではなく群衆になる。 キャリアは 1 つのパブリック IPv4 アドレスの背後に数百から数千の契約者を置きます。その IP に付けたレピュテーションは群衆を表し、適用したブロックは群衆に当たります。これは本物の顧客をブロックせずに匿名化トラフィックを検出するで詳しく分析したのと同じ誤検知の罠です。ただしキャリアネットワークでは、これは例外的なケースではなく標準の状態です。

ローテーションがレピュテーションを追い越す。 機内モードを切り替えたスマートフォンは、数秒で新しいキャリア IP を取得します。IP がブロックリストに載る頃にはプロキシはすでに移動しており、その掲載はアドレスを引き継いだ無関係の契約者を指すことになります。古い証拠は証拠がないことよりも悪いのです。

信頼が本物であること自体が問題になる。 ASN は本当に大手キャリアのものです。接続タイプも本当に mobile です。見破るべき偽造ヘッダーはなく、ネットワークレベルの属性はすべて本物です。偽りなのは、セッションを誰が操作しているかという一点だけです。

ジオロケーションがぼやける。 モバイルトラフィックは端末から遠く離れたキャリアゲートウェイから出ていくことが多いため、裏付けに使いたい場面でこそ市区町村レベルの位置情報が最も弱くなります。この制約は IP ジオロケーションは実際どれくらい正確かで定量的に示しています。

モバイルプロキシのトラフィックを実際に捕まえるシグナル

誠実なベンダーなら、1 回のルックアップで魔法のような is_mobile_proxy: true を返すとは言いません。IP が本物のキャリア空間である場合、ネットワークレイヤーだけでは特定のセッションがプロキシ経由であると証明できません。ネットワークレイヤーにできるのは、コンテキストを正確に確立し、残りのシグナルが重みを担えるようにすることです。これは VPN やデータセンタープロキシに対して使うのと同じ多層的なアプローチを、キャリア空間向けに調整したものです。

  • まずネットワークを分類する。 ASN と接続タイプから、これがキャリア X のモバイル空間であり、家庭向け ISP でもデータセンターでもないことがわかります。この 1 つの分類が、他のすべてにどのルールブックを適用するかを決めます。
  • CGNAT を明示的に考慮する。 CGNAT フラグは「この IP が悪いことをした」を「このゲートウェイの背後の誰かが悪いことをした」に変換します。これははるかに弱い主張であり、スコアを跳ね上げるのではなく上限を設けるべきです。
  • 不正利用の証拠を新しさで重み付けする。 ローテーションするキャリア IP では、先月のブロックリスト該当はノイズであり、直近 1 時間のハニーポットでの活動はシグナルです。リスト掲載よりもタイムスタンプが重要です。
  • IP ではなくセッションを数える。 モバイルプロキシは IP をキーにした速度ルールを無効化するため、カウンターはローテーションを生き延びるもの、つまりアカウント、デバイス、決済手段、セッションごとの行動パターンに移します。
  • 申告内容を裏付ける。 セッションのタイムゾーンや言語と IP ジオロケーションの比較、連続するログイン間のあり得ない移動、デスクトップブラウザのフィンガープリントを持つ「モバイル」IP。個々の不一致は小さくても、組み合わせればプロキシをそれが紛れている群衆から切り分けられます。

その結果はブール値ではなく重み付きスコアにまとめるべきです。これは重み付きリスクスコアの理由の背後にある考え方です。

IP ではなくアクションごとにポリシーを設定する

すべてのモバイル IP は共有されているため、検出と同じくらい対応が重要です。キャリアの範囲で常に間違っている唯一の手がハードブロックです。不正はローテーションして去り、本物の顧客だけがブロックされたまま残ります。

現実的なパターンはアクションごとのしきい値であり、IP 不正スコアのしきい値の選び方と同じフレームワークにキャリアのコンテキストを組み込んだものです。低リスクのモバイルトラフィックはそのまま通し、スコアが高い場合は本物の契約者なら数秒で通過できる追加認証(OTP、メール確認、チャレンジ)で対応し、ブロックは IP 固有の最近の不正利用の証拠がセッションレベルの異常と重なるリクエストにだけ使います。

GeoIPHub でモバイルプロキシのトラフィックを検出する

GeoIPHub は、モバイルプロキシに関する判断に必要なキャリアのコンテキストを 1 回のルックアップで返します。ブラックボックスのフラグではなく、各判定の根拠となる証拠も一緒に返します。

GeoIPHub API
curl "https://api.geoiphub.com/v1/lookup/$CLIENT_IP" \ -H "x-api-key: YOUR_API_KEY"

キャリア IP の場合、レスポンスの関連部分は次のようになります。実在する契約者のアドレスは公開しないため、これは実際のルックアップではなく説明用の値を使ったサンプルです(ASN と MCC/MNC は予約済みのドキュメント用およびテスト用のコードです)。フィールド名と構造は本番の API と一致しています。

GeoIPHub API
{ "ip": "<a carrier IP>", "asn": { "asn": 64500, "org": "Example Mobile Carrier", "asn_type": "mobile", "connection_type": "mobile", "carrier": "Example Mobile", "mcc": "001", "mnc": "01" }, "detection": { "is_mobile": true, "is_vpn": false, "is_proxy": false, "is_tor": false }, "threat": { "is_cgnat": true, "is_abusive": false, "threat_types": [] }, "scoring": { "fraud_score": 0, "recommended_action": "allow", "detection_methods": [] } }

キャリアのトラフィックで重要になる部分は次のとおりです。

  • asn.asn_type、asn.connection_type、detection.is_mobile はネットワーク(モバイルキャリア、住宅用ブロードバンド、データセンター)を分類し、asn.carrier、asn.mcc、asn.mnc は事業者を特定します。これにより、ルールが正しいコンテキストで発動します。
  • threat.is_cgnat はキャリアグレード NAT の範囲を示し、scoring.fraud_score はその範囲で意図的に上限が設けられています。共有ゲートウェイが専用の悪性インフラのように採点されることはなく、これが組み込みの誤検知防止策になります。
  • threat.is_abusive と threat.threat_types は、現在の脅威フィードがそのアドレスを掲載しているかどうかを示します。ローテーションするキャリア IP では、掲載をその背後にいる人物についての証明ではなく、セッションのコンテキストとして扱ってください。
  • detection.is_vpn、detection.is_proxy、detection.is_tor は、「モバイル」のトラフィックが実際には既知の匿名化サービスを経由して出ているケースを捕捉します(アクティブプロービングで検証された VPN とプロキシの検出を参照)。

無料の IP ルックアップツールなら、サインアップなしで任意の IP を試せます。または無料の API キーを取得し、API ドキュメントを見ながら組み込んでください。すべてのフィールドは無料プランを含むすべてのプランで提供されます。1 日あたり 1,500 リクエスト、フィールドの有料制限はありません。

モバイルプロキシが IP 中心の防御に勝てるのは、IP が本当に無実だからです。その IP はキャリアと群衆のものです。一方、多層的な防御には負けます。キャリアネットワークを正確に分類し、CGNAT を考慮し、証拠を新しさで重み付けし、カウンターをローテーションを生き延びるものに移し、高いリスクにはブロックではなく摩擦で応える。そうすれば、不正行為者が 4G の出口に払った割増料金は何の価値も生まなくなります。

よくある質問

モバイルプロキシとは何ですか?

モバイルプロキシは、他人のインターネットトラフィックを本物の携帯電話ネットワーク上のデバイス(スマートフォン、USB ドングル、または SIM カードを大量に載せたラック)経由で中継し、トラフィックが本物の 4G/5G キャリア IP から Web に出ていくようにする仕組みです。受信する Web サイトから見ると、そのリクエストはスマートフォンでブラウジングしている普通の人と区別がつきません。だからこそ不正グループは、データセンタープロキシや住宅用プロキシよりも割高な料金をモバイルプロキシに払うのです。

モバイルプロキシが住宅用プロキシより検出しにくいのはなぜですか?

キャリアネットワークはキャリアグレード NAT(CGNAT)を使っており、1 つのパブリック IP の背後に数百から数千の実在する契約者を置き、アドレスを絶えず再割り当てします。住宅用プロキシは少なくとも 1 世帯の回線に対応しますが、モバイルプロキシは、同時に大勢の正規スマートフォンユーザーにサービスを提供している IP の中に紛れ込みます。IP に付いたレピュテーションは数分で意味を失い、その IP をブロックすれば同じゲートウェイの背後にいる全員が被害を受けます。

モバイルプロキシは IP アドレスでブロックできますか?

安全にはできません。CGNAT があるため、モバイル IP をハードブロックすると、そのゲートウェイを共有する契約者全員、つまり本物の顧客までブロックすることになります。現実的なのはブロックではなくリスクスコアリングです。キャリア IP を共有インフラとして扱い、古いリスト掲載よりも最近の不正利用の証拠を重視し、スコアが高い場合は拒否ではなく追加認証(メール、OTP、チャレンジ)で対応します。

モバイルプロキシと CGNAT の違いは何ですか?

CGNAT は通常のキャリアの仕組みです。IPv4 アドレスが不足しているため、モバイル事業者は 1 つのパブリック IP を多数の契約者で共有させています。モバイルプロキシはその仕組みの悪用です。キャリアネットワーク内のデバイスが第三者のトラフィックを中継し、共有 IP という隠れみのを引き継がせます。すべてのモバイルプロキシは CGNAT の恩恵を受けていますが、CGNAT トラフィックの圧倒的大部分はスマートフォンを使う普通の人々です。そのため、CGNAT だけを不正のシグナルとして扱ってはいけません。

不正行為者はどのようにモバイルプロキシの IP を入手するのですか?

主な供給経路は 3 つあります。SIM ファーム(プロキシインフラとして意図的に運用されるモデムと SIM カードのラック)、無料アプリに組み込まれ、ユーザーの帯域をひそかに転売するプロキシ SDK(セキュリティ研究者は、こうした SDK が一般向けアプリやスマート TV のソフトウェアにまで搭載されていることを報告しています)、そして感染したスマートフォンを持ち主に知られないままプロキシネットワークに組み込むマルウェアです。

GeoIPHub はモバイルプロキシのトラフィック検出にどう役立ちますか?

GeoIPHub は、モバイルプロキシに関する判断に必要なネットワークコンテキストを 1 回のルックアップで返します。ASN とその分類、接続タイプ(データセンター、住宅用、モバイル)、キャリアグレード NAT の範囲を示す is_cgnat フラグ、MCC と MNC のコード付きのキャリア名、現在の脅威フィードのフラグ、そして 0〜100 の不正スコアです。この不正スコアは CGNAT の範囲では意図的に上限が設けられており、共有のキャリア IP が専用の悪性インフラのように採点されることはありません。

執筆者

GeoIPHub チーム

GeoIPHub API を支えるチーム

GeoIPHub IP インテリジェンス API とそのスキャナーを開発している GeoIPHub チームが執筆しています。下書きは AI の支援を受けて作成し、チームが編集しています。API の例は、「説明用」と明記したものを除き、本番 API に対する実際のルックアップです。

この記事をシェア
その他の記事

関連 記事