おはようございます、ねるです。
今日は世界中に嘘が溢れるエイプリルフールです。
突然だけど、エイプリルフールなんて、エンジニアには関係ないと思ってない???
ダメエンジニア。
エイプリルフールには企業のホームページを更新して嘘を書いたり、アクセスが集中してサーバトラブルが起きれば対応したり、するの。
それでは、良いエイプリルフールを。。
おはようございます、ねるです。
今日は世界中に嘘が溢れるエイプリルフールです。
突然だけど、エイプリルフールなんて、エンジニアには関係ないと思ってない???
ダメエンジニア。
エイプリルフールには企業のホームページを更新して嘘を書いたり、アクセスが集中してサーバトラブルが起きれば対応したり、するの。
それでは、良いエイプリルフールを。。
おはようございます、今日も明日もねるです。
久しぶりの更新はHTTPの401エラーについてです。
皆さんも銀行のATM等で暗証番号を入力したり、
LINE等のアプリにログインするための、メールアドレスやパスワードを入力してログインする機会はあると思います。
コンピュータの世界ではログインボタンや暗証番号の最後の1桁を入力した瞬間に、
"認証"ということをします。
認証では、メールアドレスとパスワードの組み合わせが正しいことや、暗証番号が正しいことを確認します。
もし、世界から認証がなくなると、あなたの友達とのLINEメッセージのやり取りが、誰でも見れるようになってしまいます。
HTTPプロトコル(Webページ等)で、認証エラーが発生したことを表します。
このHTTP401コードが出ると、ユーザの画面にはIDやパスワードを入力する画面が表示されることが想像されます。
エンジニアの方にとっては悪い話ですが、原因は"これ"と断定することは出来ません。
ただし、おおよそいくつかのパターンに分けることは出来ます。
ケース①:IDやパスワードが間違っている
⇒一番簡単です。正しいIDやパスワードでログインし直すことで解決します。
ケース②:認証機能に障害が発生している
⇒一番厄介です。認証機能を中心に詳細な調査が必要になります。
インフラエンジニアであれば、サーバのリソース使用率が高くないか、
OSのイベントログにエラーが出ていないか等を調べます。
|
特に厄介なパターンは認証機能を別出ししてサーバを立てている場合です。
Webサーバと認証サーバの間のネットワークも疑わなければなりません。
クライアントからサーバへリクエストを送信したログを1つ1つ紐解いて、
どこからどこまでの通信はうまくいっていて、
どこからがおかしいのかを地道に突き止めましょう。
<対象>
<脆弱性の詳細>
・Jakarta Multi Parser の ファイルアップロード処理に脆弱性あり
→不正なHTTPリクエストが送信されると、リモートで任意のコードが実行される
・Jakarta Multi Parser とは ・・・ Apache Struts2系に標準で組み込まれているパーサ
・パーサ とは ・・・ 構文解析機
<対策>
・パーサの変更
・サーブレットフィルターの実装
・サーブレットフィルター とは ・・・ 不正な要求を破棄する
<確認方法>
・Web-inf/lib ディレクトリ配下のStruts2-core-2.x.x.x
・パッケージ製品等の場合、ファイルが見つからない場合があるためベンダーへ問い合わせする
・Jakarta Multpart Parser とは・・・ multipart/form-data形式のリクエストを処理するパーサ
・multipart/form-data とは ・・・ クライアントがフォームからファイルをアップロードする時、ファイルの情報(ファイルの種類、ヘッダの情報)をサーバ側に知らせる。サーバはファイルの情報を得ることでファイルを扱える。