BT

QARK: Androidアプリのセキュリティホールを発見する

| 作者: Abel Avram フォローする 7 人のフォロワー , 翻訳者 笹井 崇司 フォローする 0 人のフォロワー 投稿日 2015年9月9日. 推定読書時間: 2 分 |

原文(投稿日:2015/08/27)へのリンク

LinkedInQARKをオープンソース化した。これはJavaで書かれたAndroidアプリに存在する、潜在的セキュリティ脆弱性を発見するための静的解析ツールだ。

QARKは8月のDEFCON 23で紹介され、少ししてGitHubに公開された。QARKは、JavaソースコードのパースにPLYJというPythonツールを、AndroidマニフェストファイルのパースにBeautiful Soupを使っている。また、ProcyonJD-CoreCFRDEX2JARAPKToolといった複数のデコンパイラを利用し、その結果をマージすることで、バイナリも扱うことができる。調査対象には以下が含まれる。

  • うっかりエクスポートされたコンポーネント
  • 不適切に保護された、エクスポートされたコンポーネント
  • 横取りや盗聴されやすいIntent
  • 不適切なx.509証明書の検証
  • 誰でも読み書きできるファイルの作成
  • データをリークするおそれのあるActivity
  • Sticky Intentの使用
  • 安全でなく生成されたPending Intent
  • 安全でないBroadcast Intentの送信
  • ソースコードに埋め込まれたプライベートキー
  • 弱い、不適切な暗号方式の利用
  • 攻撃のおそれのあるWebView設定
  • エクスポートされたPreference Activity
  • タップジャッキング
  • バックアップ可能なアプリ
  • デバッグ可能なアプリ
  • 既知の脆弱性のある古いAPIバージョンをサポートしているアプリ

QARKは脆弱性のおそれを見つけると、簡単な説明と詳細情報を含むWebページへのリンクを提供する。また、見つかった脆弱性がどのように悪用されるか示すため、テスト可能なAPKと発行するADBコマンドを生成することができる。

QARKは今後、Bound ServiceとContent Providerの脆弱性やJava/Androidに無関係な問題の発見、ODEXファイルのパース、拡張性の改善、動的解析などをサポートするよう拡張される予定だ。

Androidツールチェインに統合して、自動的に問題を検出することもできるが、作者はアプリケーションを手作業でレビューし続けることを推奨している。静的解析では見つけることのできない種類の脆弱性があるとともに、ツールがまだカバーしていない脆弱性があるためだ。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT