シリアル化されたオブジェクトをネットワーク経由で送信する場合、シリアル化されたオブジェクトを保護するにはどうすればよいですか? ハッカーが私のデータを妨害/ハッキングする可能性はないと思います。
誰でもこれを実装する方法について詳しく教えてもらえますか?
シリアル化されたオブジェクトをネットワーク経由で送信する場合、シリアル化されたオブジェクトを保護するにはどうすればよいですか? ハッカーが私のデータを妨害/ハッキングする可能性はないと思います。
誰でもこれを実装する方法について詳しく教えてもらえますか?
このプレゼンテーションでは、攻撃者が Java のシリアル化されたストリームをいかに効果的に改ざんできるかについてのアイデアを提供します。
https://www.owasp.org/images/e/eb/OWASP_IL_2008_Shai_Chen_PT_to_Java_Client_Server_Apps.ppt
サーバーのクラスパスに脆弱なクラスが存在する場合、予期しない動作を挿入し、コードを挿入するリスクもあります。この記事を参照してください。
[先読みJavaデシリアライゼーション][3]
java.crypto.SealedObject
あなたが探しているものです。
暗号化またはハッシュすることはできますが、Java シリアル化形式は、ネットワーク経由で送信するための不適切な選択です。より良い解決策は、JSON / XML (暗号化アルゴリズムで暗号化または署名) です。
私の意見では、 useSSLSocket
またはのいずれかを使用できますSealedObject
。ただし、それはあなたにとって物事を少し重くします。ただし、オプションの 1 つについては、この記事でも説明しています。http://www.ibm.com/developerworks/library/j-5things1/
前に述べたように暗号化を調べますが、より具体的には、Java でのネットワーク通信用の SSL/TLS ライブラリを調べます。
http://juliusdavies.ca/commons-ssl/ssl.html
Java に非常に強力なライブラリが組み込まれている場合、安全な暗号化通信を試して実装する必要はありません。