iOSでは、通信時のデータはURLSessionを使用した場合OSにより自動で端末内のcashe.dbに保存される仕様になっています。このキャッシュ情報はHTTPS通信であっても情報が暗号化されずに保存されるため、以下のようなリスクがあります。
【リスク】
・悪意あるユーザーに通信のデータを解析され、通信先のサーバーのAPI仕様などを解析される。
【対策】
・URLSessionを作成する際、設定でキャッシュ保存を無効化する。
URLSessionを作成する際に設定クラスURLSessionConfigurationのフィールドurlCacheにnilを指定することでキャッシュの保存を防ぐことができます。
サンプルコード
// コンフィグの生成
let sessionConfig = URLSessionConfiguration.default
// キャッシュを無効化
sessionConfig.urlCache = nil
// URLセッションを開始
let session = URLSession(configuration: sessionConfig)