SQL Serverの "sa"アカウントにログインしようとブルートフォースで攻撃しようとするユーザーについてはどうすればよいですか?


9

誰かまたは何かが、 'sa'アカウントを使用して本番SQL Serverインスタンスにログインしようと力ずくで試みているようです。「sa」アカウントが無効になっているために成功しませんでしたが、セキュリティを確保するためにどのような手順を踏む必要がありますか?

ログイン試行


1
ねえ。それを回答済みとしてマークして、私たちの生活を進めることができるようにします。:)
JohnThePro 2011年

回答:


29

SQLサーバーをインターネットで公開する必要がありますか?これは通常そうではありません。どうしてもこのようにする必要がある場合は、IPアドレスでアクセスを制限したり、VPNを設定したりできます。明らかに、saのパスワードを推測できないようにするか、saのログイン場所をLANのIPアドレスのみから制限することを検討してください。他の人がより良い解決策を支援できるように、詳細を入力してください。


3
絶対にこれ。これは、ファイアウォールを使用して攻撃対象領域を最小限に抑えるための典型的なケースです。
Rob Moir、2011年

さらに、それは誰かではありません。人間ではなく、ワームのようなものです。インターネット上のSQL Server +デフォルトのポートを変更しない=現実を完全に無視(インターネットは良い場所ではありません)。
TomTom

5

最初にできることは、そのIPアドレスをブラックリストに登録し、ファイアウォールでIPからのトラフィックを完全に拒否することです。もちろん、IPを変更するだけでもかまいませんが、少なくとも、サーバーがトラフィックやログで攻撃されるのを防ぐことができます。


3

ファイアウォールを介してそのポートを無効にします(MySQLは3306、SQL Serverのポートを思い出さないでください、118など)。その後、誰もそれにアクセスできません。
SQLへの外部アクセスが必要な場合は、53535のように番号の大きいポートに再マッピングします。そのポートが開いていることがわかった場合、その意味を推測するのは困難です。


1433; 外部に開放する必要がある場合は、他のほぼすべてに変更します。ただし、クライアントの接続文字列を変更する必要があります。
SqlACID、2011年

また、1434、ディスカバリーサービスについて...
AviD、2011年

3

ログインには、悪意のあるコードを挿入する試みが含まれます。サーバーのファイアウォールソフトウェアまたはサードパーティの外部ファイアウォールを使用して、永続的なブラックリストでこのアクティビティをブロックすることをお勧めします。

また、これにより侵入者のIPアドレスが自動的にブロックされるため、許可されるログイン失敗の数を減らします。

上記はこれを最小化します。


2

おそらく、スキャナーを実行しているスクリプトキディだけで、時間をかける価値はありません。あなたのデータベースにインターネットからアクセスできないようにしようと思います。


2
  • 可能であれば、saだけでなく、すべてのSQLアカウントアクセスを無効にします。つまり、SQL認証なしでWindows認証のみを有効にします。
  • ファイアウォール経由、または少なくともボックスのIP制限のいずれかによるネットワークアクセスを、アクセスのみを必要とするサーバーに制限します。一般ユーザーは直接アクセスする必要はありませんよね?
  • 次に、ローカルの管理者ユーザーをブルートフォースで試すことを考慮してください。管理者の権限を実際に削除することはできませんが、特定の役割にドロップして、アクセスを明示的にブロックすることができます。
  • 可能であれば、SQL Server Browserサービスを無効にします。簡単にする理由はありません...
  • データベースのユーザー、権限、およびパスワードの完全な分析を実行します。おそらく他のユーザーが次に試す可能性があります。
  • 詳細については、ITSecurity.SEでもう一度尋ねてみてください。

2

SQL Serverがネットワークの外部からアクセスできる必要がある場合は、アクセスが必要な外部IPアドレスをホワイトリストに登録できます。VPNはより優れたソリューションであり(常に利用できるとは限りません)、最良のソリューションは外部アクセスではありません。

ホワイトリストに登録するには、より多くの管理が必要ですが、このばかげた問題は解消されます。誰かがアクセスする必要があり、頻繁にIPが変更される場合、RDPを介して別のシステムにログインし、そこからSQL Serverに接続できます。

saアカウントの名前を変更し、偽のsaアカウントを作成して、無効にします。

権限を監査し、すべてのSQL Serverユーザーアカウントのパスワード更新をトリガーします。おそらくパスワードの強度要件を増やします。

SQL Server IPリスニングポートの番号を付け直します。これは、クライアント構成またはアプリケーション構成ファイルを更新することを意味します。

次の攻撃の可能性について他のポスターにも同意します。これはおそらくスクリプトを実行している人物です。


1

IPSECポリシーやフィルターなどを作成し、イベントログを自動的にスキャンしてIPをブロックリストに追加するプログラムを探している人のために、それを行う小さなプログラムを作成しました。

この問題も発生しました。ハッカーが 'sa'ログインでMSSQLインスタンスにログインしようとすると、何千ものエントリがイベントログに記録されます。多くの検索を行った後、私は独自のプログラムを作成し、必要なIPSECアイテムを作成し、イベントログを60秒ごとにスキャンして、新しいIPアドレスからの攻撃を探すことにしました。次に、IPアドレスをIPSECフィルターに追加し、IPとの間のすべてのトラフィックをブロックします。私はこれをWindows Server 2008でテストしただけですが、他のバージョンでも動作すると信じています。

以下のリンクからプログラムをダウンロードしてください。寄付は、タスクマネージャーアイコンの右クリックメニューにあるリンクを使用して常に感謝されます。

http://www.cgdesign.net/programs/AutoBlockIp.zip

これは 'sa'ログインを使用したSQLログイン試行でのみ機能しますが、他のログイベントでも機能するように変更できます。また、ブロックされたIPを表示することもできますが、プログラムは60秒ごとにしか実行されないため、イベントログには引き続きいくつかの項目が表示されます。これは、単一のイベントログエントリを削除できないことが原因であり、ログ全体を削除することは良い考えではないと思いました。

免責事項 -上記のプログラムをダウンロードしてインストールすることにより、上記のソフトウェアの使用に起因する損害、データの損失、破損、またはその他の機能上の問題について、私が無害であることに同意するものとします。プログラムをできる限りテストし、現在2台のサーバーで実行していますが、ご自身の責任で使用するように警告されています。

ご質問やご意見がありましたら、www.cgdesign.netのウェブサイトのお問い合わせフォームを使用して、お気軽にご連絡ください。

-クリス


あなたは製品との関係を明らかにする上手な仕事をします。注意してください、私たちは一般的に販売セッションを評価しません。
スコットパック

0

ログインの試行を制限する必要があるため、同じユーザーが5回を超えてログインしようとすると、数時間または1日の間、それ以上の試行がブロックされます。少なくとも100万回の試行の後、ログインを総当たりにすることはできません。

そして、他の人が言ったように、それが必要でない場合はパブリックアクセスを許可しないでください。一部の人が外部アクセスを必要とする場合は、一連の既知のIPへのアクセスを制限できます。


1
アカウントはすでに無効になっています。これ以上無効にすることはできません。
mrdenny、2011年

@mrdenny:私は最初の段落の無効でないアカウントについてもっと考えていました。誰かが「sa」を強引に押し付けている場合、彼らは簡単に別のアカウントから始めることができます。無効になったアカウントで5回試行した後、それらを完全にブロックします。
DisgruntledGoat 2011年

スクリプトキティは既にユーザー名を知っているため、通常はsaアカウントのみを攻撃します。それ以外の場合、ユーザー名もブルートフォースにする必要があります。これには2倍の時間がかかり、ユーザー名が存在するかどうかを知る方法がありません。
mrdenny、2011年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.