Android アプリケーションはランダムでないソースを使用して「ランダム」な値を生成することがあり、潜在的なセキュリティ上の脆弱性につながります。よくあるものとしては、Date().getTime() のように現在の時刻に依存したり、Calendar.MILLISECOND にアクセスして推測や再現が容易な値を生成するものがあります。
Date().getTime()
Calendar.MILLISECOND
アプリに対して静的解析 (Android での静的解析 (Static Analysis on Android)arrow-up-right) ツールを実行して、ランダムでないソースの使用を探します。
出力にはランダムでないソースが使用されている場所のリストを含む可能性があります。
ランダムでないソースを使用して生成されたパスワードやトークンなどのセキュリティ関連の値を見つけることができた場合、そのテストケースは不合格です。
Last updated 1 month ago