ブルートフォース攻撃とは、日本語では「総当たり攻撃」と訳される、暗号解読や認証情報取得の手法です。主にパスワードを不正に入手するために用いられます。
具体的な手法は、理論的に考えられるパスワードのパターン全てを入力するという、実に単純なものです。例えば4桁の暗証番号をパスワード(パスコード)に使用している場合、「0000」~「9999」の1万種類の組み合わせを全て試すことで、必ず正解にたどり着くことになります。これを人間が手動で試すのは大変ですが、プログラムで行えば手間はかかりません。1秒に1個のパスワードを試せるのであれば、長くても1万秒(約2時間47分)でパスワードを割り出せることになります。
これと類似の攻撃方法に、パスワードに使用されることの多い言葉を優先的に組み合わせて試していく「辞書攻撃」があります。またパスワードを総当りで試すのではなく、IDを総当りするという「リバース ブルートフォース」という攻撃も存在します。この攻撃は同じ、あるいは少数のパスワードを全てのIDごとに対して試していく攻撃方法です。一般的に間違ったパスワードを複数回入力するとアカウントへのアクセスがロックされるよう荷設計されているので、攻撃対象は誰でもよい、という場合には使われることがあります。 とくに、ユーザIDに比べてパスワードが短いシステムは、この手法でパスワードが割り出される危険性が高くなります。
ブルートフォース攻撃への防衛手段としては、パスワードの桁数を増やす、使わる文字の種類を増やす、ワンタイム パスワードを併用する、パスワードの試行回数を制限する、一定回数以上のミスに対して警告メールを本人に送信する、といった方法が考えられます。また通常とは異なる挙動(アノマリー)を検知し、必要に応じてブロックするといった対応も有効です。