OstorlabのAIを活用したMonkey Testerでモバイルセキュリティテストを革新
Ostorlabのモバイル脆弱性スキャナーに、AIを活用したMonkey Testerが加わりました。テストのカバレッジと速度を大幅に向上させ、より包括的で効率的なテストを実現します。
Ostorlabのモバイル脆弱性スキャナーの大きな機能強化として、AIを活用したMonkey Testerを発表できることを大変うれしく思います。この新機能は、テストのカバレッジと速度を大幅に向上させ、より包括的で効率的なテストを実現します。
Monkey Testerとは
ご存じない方のために説明すると、Ostorlab Monkey Testerは、モバイルアプリケーションとの操作を自動化し、最大限のカバレッジを達成するよう設計されています。シンプルな認証情報による認証の処理や、多要素認証(MFA)への対応を含め、テストプロセスを完全に自動化します。

本記事では、この新機能を紹介し、その仕組みの舞台裏をお見せします。
仕組み
Ostorlab Monkey Testerは操作を自動化し、アプリケーション内で探索されたさまざまなシナリオを示すコールカバレッジグラフを生成します。
当初、Monkey Testerは高いカバレッジを達成するために、主に3つの戦略を用いていました。
- 純粋なランダム性:アプリケーションをランダムに操作する。
- ルールベース:あらかじめ定義されたルールに従ってアプリ内を移動する。
- 遺伝的アルゴリズム:一連のパラメーターを持つテスト用の「ミニオン」を使って、さまざまな経路を探索する。
これらの戦略は十分に機能していましたが、継続的な調整と改善が必要で、最も複雑なワークフローを見逃すことがよくありました。さらに、「どうやってここにたどり着いたのか」という問いに答えるのが苦手でした。
AIを活用した新しいアプローチ
新機能は生成モデルを活用し、人間と同じようにアプリケーション内のテストシナリオについて推論します。Monkey Testerは、ページ、画面、アクティビティごとに一連のテストシナリオを生成し、それらを順番に実行します。

AIを活用した新しいアプローチは、アカウントの作成、商品の購入、アンケートへの回答といった、複雑で複数のステップからなる操作の処理に優れています。これらの操作では、複数のインタラクションを特定の順序で実行する必要があり、遺伝的アルゴリズムでは収束までに時間がかかることの多いタスクです。AIを活用したMonkey Testerでは、こうしたシナリオをより効率的にテストし、入り組んだワークフローを包括的にカバーできます。
舞台裏では、はるかに複雑なことが行われています。シナリオを一度実行すると、最初からやり直さない限り、元に戻って再実行できないことがよくあります。この問題に対処するため、Monkey Testerはシナリオグラフを構築し、実行済みのシナリオとまだ実行が必要なシナリオを追跡します。
このアプローチは、生成されたシナリオの共有永続化と組み合わされており、今後の反復でのテストを高速化します。これにより大幅な性能向上が実証されており、一部のシナリオではアプリケーションのカバレッジが1000%以上向上し、平均でも300%以上向上しています。
使い方
すでにOstorlabの動的解析を利用している場合は、組織の設定メニューからAI機能を有効にするだけです。コールカバレッジに新しいシナリオが追加され、何がカバーされたかについての明確な説明が表示されるようになります。

試してみたい方は、お気軽にお問い合わせください。
今回の機能強化により、Ostorlabのモバイル脆弱性スキャナーはより強力で使いやすくなり、アプリケーションを徹底的にテストして安全性を確保できます。