web-dev-qa-db-ja.com

IPを偽名で記録しますか?

ウェブサイトからIPを禁止できるようにしたいのですが、プライバシー上の理由から、IP自体の記録を残したくありません。 IPをハッシュすると、ハッシュがわずか数分でブルートフォース攻撃される可能性があり、禁止データベースにアクセスできる人は誰でもソルトにアクセスできるため、ソルトは役に立たないでしょう。おそらくハッシュを含む、IPのある種の「フィンガープリント」を保持できる方法はありますか。これは、サーバー上で生成することは可能ですが、ブルートフォースに適度なリソースを持つ攻撃者にとっては実行不可能です。

3
Shig Urdig

通常、IPアドレスは個人情報とは見なされないため、データを保護したい理由はわかりません。誰かがあなたのシステムを悪用しようとしている場合、IPアドレスはあなたがアクセスできるようにしたい貴重なデータです。ブラックリストに対してIPアドレスをチェックすることは、データが役立つ場所の例です。 IPアドレスが地理的にどこにあるかを知ることで、誰があなたを攻撃しているのかを知る手がかりになる可能性があります。

いずれにせよ、あなたの目標は他人からではなく自分自身からデータを保護することなので、問題はありません。あなたが言うように、誰かがデータベースにアクセスできるなら、彼らはおそらくすべてにアクセスできます。ソルトを別のシステムに保存し、ある種のAPIを使用してアクセスすることもできますが、それは傍受される可能性があります。とにかく、データは攻撃者にとってほとんど価値がないのに、なぜ彼らはわざわざするのでしょうか。

4
GdD

GdDが想定しているように、これは必ずしもやりたいことではないかもしれませんが、使いやすさに関係なくお答えします。

塩は公開情報になるはずです。 2番目の静的で秘密のソルトを使用できますが、パブリックソルトがなくてもレインボーテーブル攻撃を防ぎます。

使用しているIPアドレスの数が非常に限られているという顕著な違いはありますが、問題はパスワードの保存の問題に単純に還元できます。したがって、攻撃者は、ソルトに関係なく、ハッシュされたIPアドレスを常にブルートフォースしようとする可能性があります。

データを保護する最良の方法は、パブリックソルトとシークレットソルトでPBKDF(PBKDF2、bcryptまたはscrypt)を使用することです。しかし、秘密の塩が知られるようになれば、それでもなお、十分な忍耐力を持った攻撃者がブルートフォース攻撃を行うことができるはずです。

(追加の)十分に保護されたサーバーを使用すると、データのみが保護されることに注意してください保存中、つまり、攻撃者がサービスを利用できない状態でデータベースが盗まれた場合。

2
Maarten Bodewes

IPv4アドレスをマスキングする方法の問題は、意味のあるものにするのに十分な数がないことです。非効率的な割り当てと予約済みエリアの間には、約20億の有効なアドレスしかありません。攻撃者がマスキングの方法を知っている場合、2 ^ 31のマスキング操作で完全なマスク->アドレスマップを構築できます。IPv4アドレスは、マスキングの方法に関係なく、約31ビットのセキュリティしか提供しないと見なすことができます。それら。

2
Mark

1つの解決策はもっともらしい否認かもしれません。

法執行機関が、禁止したIPを、ユーザーがサイトで作成した投稿に関連付けようとしていて、それを防止したいとします。

禁止されたIPのプールが十分に大きく、それらのIPを特定の投稿に関連付けるための追加情報がなく、それらを関連付けるための他の情報(タイミングなど)がない場合、法執行機関はそれを行うことができません。あなたのリストにあるIPが特定の投稿に責任があることを合理的な疑いを超えて証明してください。

0
thexacre