純粋に憶測に過ぎませんが (iOS と Android のネイティブ、ハイブリッドの両方での経験から言えば)、ハイブリッド アプリでは、データを API に結び付け、共通のデータ形式で保存することで、データをよりアクセスしやすくする必要があります。これにより、データをハイブリッド化することで本質的にアクセスしやすくなるため、より多くの攻撃ベクトルが暗黙的に許可されます。ネイティブ アプリケーションとして、アプリと関連データは独自の形式で保存する必要があります。つまり、攻撃者またはマルウェアは、その形式のデータ アクセスに対処するように特別に構築する必要がありますが、ハイブリッド アプリでは、マルウェアまたは攻撃者は、共通の API を介して、または共通のデータ ストレージ形式でデータにアクセスする可能性があります。
また、サーバーと「有線」で対話するときはいつでも、ネイティブ アプリは低レベルの通信を使用してソケット接続を開きますが、ハイブリッド アプリでは、データは (通常) HTTP の上にカプセル化されます。これは、攻撃者がポート 80 でトラフィックをスニッフィングするだけであれば、克服すべき障害が少ないことを意味します (奇妙なプロトコルでのポート 2030 のようなスニッフィングに対して)。「ハイブリッド」通信 (通常は HTTP 経由) を使用してサーバーと対話する最も一般的な方法の 1 つは、URL を使用することです。これは、クリアテキストで送信される URL にユーザー名やパスワードなどが含まれることを意味します (ばかげた、ばかげた例として): http://www.example.com/control_me?username=foo&password=bar
.
アプリのソース コードに関して言えば、これはアクセシビリティにまでさかのぼります。定義上、ハイブリッド アプリのソース コードはオープンである必要があります。複数のプラットフォームで実行する必要があり、ハイブリッド アプリのソース コードについて話すときは、通常、アプリの世界では HTML5 を意味します。つまり、デバイス上で実行するにはソースを送信する必要があるため、方法論全体をダウンロードしてリバース エンジニアリングする (または開いて見るだけ) ことができます。これは、基本的にコンパイルされたJavaまたはobjective-cであり、「逆コンパイル」が困難または不可能なネイティブアプリとは対照的です。