[論文レビュー] CoinPolice:Detecting Hidden Cryptojacking Attacks with Neural Networks
CoinPolice は、ブラウザの CPU スロットリング動作を能動的にプローブすることで、隠れた暗号通貨マイニング攻撃を検出するニューラルネットワークベースのシステムであり、97.87% のマイナーを検出可能で、偽陽性率は 0.74% にとどまる。これは、特に積極的にスロットリングを行うマイナーに対して優れた性能を示し、これまでで最大規模の調査において 6,700 件のマイニングサイトを同定した。
Traffic monetization is a crucial component of running most for-profit online businesses. One of its latest incarnations is cryptocurrency mining, where a website instructs the visitor's browser to participate in building a cryptocurrency ledger (e.g., Bitcoin, Monero) in exchange for a small reward in the same currency. In its essence, this practice trades the user's electric bill (or battery level) for cryptocurrency. With user consent, this exchange can be a legitimate funding source - for example, UNICEF has collected over 27k charity donations on a website dedicated to this purpose, thehopepage.org. Regrettably, this practice also easily lends itself to abuse: in this form, called cryptojacking, attacks surreptitiously mine in the users browser, and profits are collected either by website owners or by hackers that planted the mining script into a vulnerable page. Cryptojackers have been bettering their evasion techniques, incorporating in their toolkits domain fluxing, content obfuscation, the use of WebAssembly, and throttling. Whereas most state-of-the-art defenses address multiple of these evasion techniques, none is resistant against all. In this paper, we offer a novel detection method, CoinPolice, that is robust against all of the aforementioned evasion techniques. CoinPolice flips throttling against cryptojackers, artificially varying the browser's CPU power to observe the presence of throttling. Based on a deep neural network classifier, CoinPolice can detect 97.87% of hidden miners with a low false positive rate (0.74%). We compare CoinPolice performance with the current state of the art and show our approach outperforms it when detecting aggressively throttled miners. Finally, we deploy Coinpolice to perform the largest-scale cryptoming investigation to date, identifying 6700 sites that monetize traffic in this fashion.
研究の動機と目的
- ユーザーの同意なしにブラウザ上で暗号通貨をマイニングする悪意あるスクリプトによる隠れた cryptojacking の脅威に対処すること。
- ドメインフリクション、コンテンツのオブスクリューション、WebAssembly の使用、CPU スロットリングといった、既存の検出システムを弱体化させる回避技術を克服すること。
- 特にスロットリングが広く使われるようになってきた現在の状況に耐性を持つ、すべての既知の回避戦略に強い堅牢な検出メカニズムを開発すること。
- これまでで最大規模の cryptojacking 調査を実施し、数千の悪意あるマイニングサイトを同定すること。
提案手法
- CoinPolice は、ブラウザの CPU スロットリングレートを意図的に変化させることで、マイニングスクリプトが処理能力の低下に反応するかどうかを観察する能動的プローブを用いる。
- Chrome DevTools API を介してパフォーマンストレースを収集し、スレッドごとの CPU 使用率と関数呼び出しの継続時間を抽出して時系列特徴を構築する。
- これらの特徴を学習データとして、深層ニューラルネットワーク分類器を訓練し、正当な動作と悪意あるマイニング動作を区別する。
- タイミングに基づく回避攻撃に対する耐性を高めるために、ランダムな関数呼び出しシフトを用いたデータ拡張を活用する。
- 炎グラフ(flame graphs)と関数レベルの実行パターンを分析することで、関数名がオブスクリュートされている場合でもマイニング論理を検出可能にする。
- 本手法は、CPU スロットリングによって CPU 使用率を低下させることで受動的検出を回避するマイナーを検出できるように設計されている。
実験結果
リサーチクエスチョン
- RQ1CPU スロットリングを積極的に使用して受動的監視を回避する cryptojacking スクリプトを、検出システムが効果的に同定できるか。
- RQ2CPU スロットリングによる能動的プローブと受動的検出手法を比較した場合、隠れやすいマイナーの検出性能にどのような差が生じるか。
- RQ3関数名のランダム化やランダムな遅延といった回避技術が、提案された検出メカニズムをどれほど回避可能か。
- RQ4Web 全体における隠れた cryptojacking の実際の規模はどの程度で、特に高トラフィックドメインではどれほど広がっているか。
- RQ5CPU パフォーマンストレースに基づいて学習されたニューラルネットワーク分類器は、実世界の環境でも高い検出精度と低い偽陽性率を達成できるか。
主な発見
- CoinPolice は、隠れた cryptojacking スクリプトに対して 97.87% の検出率を達成し、偽陽性率は 0.74% にとどまった。
- 特に積極的にスロットリングを行うマイナーに対して、現在の最先端技術を上回る性能を示した。こうしたマイナーは受動的検出法ではしばしば見過ごされる。
- 大規模な調査において、CoinPolice は 6,700 件のマイニングサイトを同定した。そのうち 447 件は Alexa Top 1 Million リストに含まれていた。
- パターンマッチングで同定されたサイトのうち 43% のみが実際に暗号通貨マイニングを行っており、これは非機能的または無効なマイニングスクリプトが多数存在することを示している。
- CPU スロットリングが広く使われるようになったことが確認された。2019 年には 58% のマイナーがこの回避技術を使用しており、2018 年の 10% から大幅に増加した。
- データ拡張と特徴工学のおかげで、ランダムな関数呼び出し遅延や関数名のオブスクリューションといった潜在的な回避攻撃に対しても、システムは耐性を示した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。