以下の内容はhttps://cysec148.hatenablog.com/entry/2025/09/07/090400より取得しました。


第61回:暗号化の間違った使い方(実例あり)

Hello there, ('ω')ノ

🔐 「暗号化してるから安心」は危険な思い込み

多くの開発者が、以下のように考えてしまいがちです。

✔ パスワードやトークンは暗号化して保存してます ✔ 通信内容も暗号化してるので盗聴されません

でも、その“暗号化”、本当に正しく使えていますか?


🧨 よくある「暗号化の失敗」実例集

① 鍵(Key)をハードコードしている

String secretKey = "mysecret12345678"; // 固定キー

APKTooljadx でソースを解析すれば、簡単に鍵がバレます。

診断ポイント:

  • secretKeyAES などのキーワードで検索
  • 固定値の鍵・IV(初期化ベクトル)が使われていないか確認

② 暗号アルゴリズムが脆弱

Cipher.getInstance("AES/ECB/PKCS5Padding");

→ ECBモードはブロック単位で暗号化されるため、データパターンが漏洩します(=パスワードリスト攻撃に弱い)。

推奨されるモード:

  • AES/CBC/PKCS5Padding(IV付き)
  • AES/GCM/NoPadding(認証付き暗号)

③ IVが固定されている or 使っていない

IvParameterSpec iv = new IvParameterSpec("0000000000000000".getBytes());

→ 初期化ベクトル(IV)は毎回ランダムでなければ意味がありません!


④ ハッシュを暗号化と混同している

この続きはcodocで購入



以上の内容はhttps://cysec148.hatenablog.com/entry/2025/09/07/090400より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14