web-dev-qa-db-ja.com

ファームウェアが私の情報を盗んでいるかどうかを知る方法は?

最近のニュース Chinese Star N9500 Androidスマートフォンには工場でインストールされたトロイの木馬が含まれているとセキュリティ会社は言っています は、ファームウェアのセキュリティについて考えるように促しました。デバイスのファームウェアの。

これは私を心配させます:ファームウェアが私の情報を盗んでいるとき、どうすれば検出できますか?この問題を軽減するにはどうすればよいですか?

携帯電話(Android)とルーターが心配です。誰かが検出プログラムに関する情報を持っていますか?

[編集]:私が尋ねる理由は、中国のブランドのルーターを検討しているということです。他のブランドのルーターの場合、はるかに高額になります。 Mi.comからです。ルーターの価格は699 RMBまたは112 USDで、1 TBの2.5インチハードドライブが含まれています。価格は非常に魅力的ですが、情報が安全でない可能性があることを心配しています。

40
user3454439

Wiresharkなどのツールを使用して送信トラフィックを分析し(デバイスの上流にいる必要があります)、予期しない/疑わしい送信トラフィックを探します。もちろん、それはまれであるか、特定のアクティビティによってのみトリガーされる可能性があるため、分析するには大量のデータが必要になります。そして、暗号化されたトラフィックとプレーンテキストを(少なくともトラフィック分析で)分析できる必要があります。

または、デバイスのフラッシュをダンプし、デバイスのファームウェアをリバースエンジニアリングすることもできます。もちろん、すべてのファームウェアを考慮する必要があります。

  • 携帯電話
    • Android OSとアプリ
    • ブートローダー
    • ベースバンド(GSM/LTE)
    • ブルートゥース
    • Wifiコントローラ
  • ルーター
    • ルーターOS(Linux、VxWorks、RouterOS、JunOS、iOSなど)
    • Wifiコントローラ
    • モデム(該当する場合)

ラップトップやデスクトップから始めないでください...

つまり、簡単に言えば、巨大なプロポーションのプロジェクトについて話しているということです。これは、セキュリティに関する未解決の大きな問題の1つです。ハードウェアをどのように信頼しますか? NSAインプラントについてのすべてのストーリーと、インフラストラクチャを保護しようとしている企業への質問をご覧ください。

脅威モデルによっては、いくつかのことを見つけることができる場合がありますが、独自のチップとソフトウェアをすべて作成しない限り、何もないことを確認することはほぼ不可能です。

31
David

ファームウェアが侵害される脅威は、10年前からあります。そうすることの全体的なポイントは、オペレーティングシステムからスキャンできないレベルでマシンを危険にさらすことです。これは、オペレーティングシステムのカーネルレベルを下回っています。妥協がファームウェアから来ていることを決定するために外部システムでそれを分析する必要があるでしょう。トロイの木馬がファームウェアに組み込まれていると判断するために、電話を分析したセキュリティ会社が電話を完全に分解しなければならなかったとしても、私は驚かないでしょう。

何もせずにスマートフォンが侵害されたかどうかを積極的に判断できる唯一の方法は、疑わしい動作を監視および停止するログを一貫して監視する何らかの形のセキュリティソフトウェア(ファイアウォールやウイルス対策など)をインストールすることでした。電話が工場出荷時のデフォルトに2〜3回設定されて、そのような深いレベルで侵害されたと判断される場合があります。

アンチウイルスは、認識した動作のみを停止できるという事実によっても妨げられています。インストールされたマルウェアがソフトウェアを作成している会社に知られていない場合、それを止めることはできません。また、ファイアウォールは、許可を与えたプログラムがインターネットに接続することを妨げません。

Androidは現在、最も安全性の低い携帯電話オペレーティングシステムです。限目。また、最もターゲットを絞って利用されています。

ルーターとネットワークについては、ファイアウォールとウイルス対策に関して同じ保護が適用されますが、パケットキャプチャシステムをセットアップして、ネットワークから送信されるすべてのサンプルパケットをキャプチャすることもできます。侵害を止めることはできないかもしれませんが、侵害された情報、情報の発信元のシステムとポートを特定し、そこから続行することができます。

4
tk1974

電話以外の場合は、それほど難しくない、組み合わせたソリューションを主張します。

それがルーターやラップトップ/デスクトップなどの電話以外のものである場合、便利な方法は、システムが許可する最低レベルのツール、または偽の「スイッチ」(プロキシ)によってシステムネットワークログを実行することです。システムとルーターの間。同時に、ルータから送信されるすべての情報をキャプチャしてログに記録するツールを使用します。次に、2つのログを比較します-ルーターに何が入ってくるのか、何が出てくるのか。または、システムレベルでは、システムログに記録された内容が実際に出力されたものと比較して出力されます(したがって、ファームウェアが隠していたものを公開します)。

問題のデバイスが送信したもので、要求されていないものは疑わしいものであり、予期しない方法で変更された情報があります。

電話の問題が非常にトリッキーになるのは、アップストリームになること、またはすべての送受信トラフィックをキャプチャすることであり、非常に高価で困難です。有線ネットワークデバイスにはオプションがありますが、電話があれば、セキュリティ会社がそのような努力を惜しまないのは良いことです。

ただし、目的のルーターのテストに関しては、かなりの低レベルの知識と労力なしでこれをすべて実行できる単純なツールまたはソフトウェアとハ​​ードウェアの組み合わせソリューションはないことを認識しています。

1
BrianH

デビッドの優れた答えで理解できるように、電話などのデバイスの独自のファームウェアがあなたの情報を取得していない/決して取得していないことを実際に確認するという考えまたはそれを行うことができるrequestは、おかしな命題になるほどの大規模な事業です。

'ストールマンソリューション'を使用すると、ソースコードが人間にとって読みやすいため、この検証が容易になります。ルーターのTomato/OpenWRT、またはAndroid電話用のまだ完成していないレプリカントプロジェクト)をご覧ください。

someone elseがすでにこの分析を実行している(そしてそれを適切に実行している)完全に)そうする必要はありません。少なくともここのバックドアは、メンテナやチームをパスするためのミスとして偽装する必要があります彼/彼女/彼らが悪意を持っている、または彼/彼女/彼らのマシンが侵害されている場合を除きます

そして、あなたはonlyハードウェアについて心配する必要があります...

0
JKAbrams