web-dev-qa-db-ja.com

電話アプリはXSSまたはCSRFに対して脆弱ですか? (Webview、Phonegap、chrometab)

CSRFまたはXSSが電話で可能であるという証拠を提供する必要があります。PhoneGap、Webview、または具体的には「Chrome Tab」またはiOSの同等の機能を使用します。

私は理論的にはこれが可能であり、緩和が必要であると信じていますが、「ブラウザ」で行われていない以前のエクスプロイトの例を探しています

11

CSRF攻撃は、Cookie(またはその他の認証メカニズム)がクライアントによって自動的に提供された場合にのみ発生します。つまり、クライアントが複数のドメイン(訪問する各サイトのCookieを保存するWebブラウザーなど)のCookieにアクセスできる場合です。

ただし、Webビューアを含むモバイルアプリには、通常、独自のシステムのCookieしかありません。 Cookieは、同じWebビューアコントロールを使用する他のアプリケーションと共有されません。ファイリングシステムから読み込まれたものはすべて互いに分離されます:AndroidおよびiOSにはセキュリティ制御が備わっているため、アプリは他のアプリのデータを読み取ることができません。したがって、CSRFはモバイルアプリケーション内にはありません。

ただし、JavaScriptが有効になっているアプリによって表示されるWebページにレンダリングされるものは、Webブラウザー内と同様に、このような欠陥が存在するとJavaScriptコードの実行を引き起こす可能性があるためです。

6
SilverlightFox

XSSは通常、サーバーに対する攻撃です。お使いの携帯電話が外部接続にWebページを提供していない限り、これは問題にはなりません。電話にページを提供しているサーバーに脆弱性がある場合、XSSは通常のWebサイトと同じです-例外を除いて、誰かをだましてリンクをたどるのは難しい場合があります。アプリケーションが他の信頼できないソース(ファイル、ユーザー入力、クロスドメインメッセージ)からデータを取り込んでエスケープせずに表示しない限り-以下を参照してください。

CSRFは有効なセッションの取得に依存しているため、ブラウザコンポーネントが実装するサンドボックスに依存します。 jsonpやwindow.postMessageの呼び出しなどが適切に実装されていない限り、これが可能であるとは非常に驚きます。 (これに関するより多くのアイデアについては https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet を参照してください)

0
Andy Boura