2011-12-19 15 views
1

基本的なデータベースログインシステムを除くセキュリティ上の試みがない、バニラJ2EE(フレームワークなしなど)で完全に書かれたデータベース(MySQL)駆動のWebアプリケーション。それを確保するためにどのような措置を取る必要がありますかTomcat Webappsを保護する

これに関するすべてのリソースも便利です。 (私はOWASPを見つけました)。

ありがとうございます!

+1

私の頭に浮かぶ最初の2つではないはずのクリアテキストのSQLインジェクションと情報。彼らはそれぞれOWASPのナンバー1とナンバー7です。 )それはwebappだから、あなたは明らかにCSRFとXSSについてかなり読んでみたいです。 OWASPについて好きではない点は何ですか? – TacticalCoder

+0

@ user988052それは絶対に素晴らしいリソースですが、私はすでにそれを見つけました。興味があるので、他に何があるのか​​見てみましょう。 – Reu

答えて

1

これは読み込まれた質問のようです。

私は最初にSpring Securityフレームワークを考えていますが、フレームワークを使用する傾向がないようです。

データベーステーブルのセットを使用してセキュリティを自分で管理する場合は、ユーザーとロールを考慮した適切なデータモデルを設計するのにしばらく時間を費やしたいと思うでしょう。

保護されたリソースにログインしているユーザーが存在するかどうかを確認するサーブレットフィルタを作成することをお勧めします。ユーザーが存在する場合、フィルターは保護されたリソースに転送されます。ユーザが認証されていない場合、フィルタはターゲットページを取得し、ユーザを認証ページにリダイレクトします。

考慮すべきいくつかの他の事:

A)。おそらく、ログイン資格情報を渡すすべてのページに対してsslを設定する必要があります。

b)。おそらく、ユーザーのパスワードを保存するための暗号化機能を調べることをお勧めします。

c)。 Java EEアプリケーションを作成しているので、おそらくユーザの原則を調べたいと思うでしょう。

d)。分散環境にデプロイする場合は、どのようにセッション管理を処理しますか。言い換えれば、セッションがスティッキーであるべきか? (WebSession、Database persistanceなど)のために何らかの種類の共有メモリスペースを使用するかどうかを指定します。

e)。 SQLインジェクション攻撃に特に注意してください。 jdbcプリペアドステートメントを使用している場合、これはあまり問題にならないでしょう。

f)。クレジットカード取引を処理する場合は、PCIに準拠していることを確認することをお勧めします。

g)可能であれば、ボットの活動を制限しようとします。これは、通常、何らかの種類のキャプチャユーティリティを使用することによって行うことができる。

h)。

http://static.springsource.org/spring-security/site/

http://docs.oracle.com/javase/1.4.2/docs/guide/security/jce/JCERefGuide.html

:あなたは任意のサードパーティ製のツールを使用している場合/フレームワークは、あなたは常にここで

が気になるいくつかのリソースである脆弱性を回避するために、最新のリリースで更新されていることを確認してください

http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html

http://docs.oracle.com/javaee/5/tutorial/doc/bnbwk.html

希望するこれは役に立ちます

+0

申し訳ありませんが、それはあまり明確ではありませんでしたが、安全なログインシステムを作成するのではなく、攻撃の可能性からより多くのものを保護することを意味しました。どうもありがとう。 – Reu

+1

@Roy Kachouh:Java開発者がフレームワークを使用していないという理由だけで、質問がロードされるわけではないからです。*「ログイン資格情報を渡すページにSSHを設定する必要があります」 *:あなたはSSHではなくHTTPS(TLS/SSL)について考えていました。 ) – TacticalCoder

+0

@ user988052はい、あなたは正しいのです...私はそれを訂正したsslを意味しました:)そしてロードされた発言は、彼がいかなるフレームワークも使用していないという事実とは関係ありませんでした。ロードされた発言は、一般にセキュリティは広範なトピックであり、いくつかの変化する側面を含んでいるという事実に基づいていました。 –

2

あなたの要件は非常に抽象的なです:あなたはすでにOWASPがウェブアプリケーションのセキュリティを全般的に扱っていると言いました。 Webアプリケーション上で最も一般的な攻撃のいくつかは

  1. クロスサイトスクリプティング(XSS)
  2. 不十分なトランスポート層セキュリティハッキング
  3. ブルートフォースを(HTTPSを使用していない)
  4. SQLインジェクション(なし

    以下の通りですログイン試行回数制限captcha
  5. サービス拒否攻撃。

さらに多くありますが、最も一般的です。 OWASPはこれらのほとんどを扱います。これらの攻撃のそれぞれからWebアプリケーションを保護するためには、理論部分(Googleと同じ)を見て、OWASPにいくつかの回避策があるかどうかを確認してください。そうでない場合は、オープンソース/フリーコードがたくさんあります。たとえば、captchaを使用する場合、Googleはfree captcha serviceと同様に提供します。

関連する問題