アカウント名:
パスワード:
検証コードも何も書いてないのですが、コレってBASIC認証とかの回避に使えたRFC非準拠のブラウザ固有の拡張仕様ですよね?読み込み完了時間とか読み込み済みサイズとかから辞書アタックの成否が解ったら嫌だなぁ
# ちなみにIEだと大分昔に封印されてレジストリ設定しないと無理です。 [microsoft.com]
どのあたりがブラウザ固有なのでしょうか?
ご自身で仰られているように、その表記は、あくまで"Common Internet Scheme Syntax"としての定義で"http"ではありません。該当RFCでは
url = httpurl | ftpurl | newsurl | nntpurl | telneturl | gopherurl | waisurl | mailtourl | fileurl | prosperourl | otherurl
とあり、httpurlは、
httpurl = "http://" hostport [ "/" hpath [ "?" search ]]hpath = hsegment *[ "/" hsegment ]hsegment = *[ uchar | ";" | ":" | "@" | "&" | "=" ]search = *[ uchar | ";" | ":" | "@" | "&" | "=" ]
と定義された物でしかなく、TelnetやFTPのようにuser:password@といった形式はありません。(同様に~をHTTP URLに使ってはいけない等と言われるの理由もここ(上記にnationalが無い)に有ります)また、Page.8の3.3. HTTPにも
No user name or password is allowed.
と態々明記されています。つまり、FTPやTelnetのように使えた方が便利であるというブラウザによるデファクトスタンダードとも言える拡張でしかないのです。
user:passwordを使って認証した事を「回避」とは言ってないと思いますので、なにを回避できたのか興味深いです。お教え願えませんか?
通常のアドレスバーや、リンクでは行われるユーザーによる「承認」もしくは「追認」を「回避」した事を問題視しています。
この事は、BASIC認証でユーザー認証を行う家庭内に存在する組み込み機器(ブロードバンドルータ)や、RAIDの管理コンソールといった物への思わぬ攻撃を引き起こします。これらの機器は、出荷時に固定で既知のIDとパスワードが設定されてる事があり、変更を行っていない場合、攻撃サイトにアクセスしただけで意図しない動作を行わせる可能性があります。もちろん最近の機器ならある程度対策されている物とは思いますが、今一度、「ユーザーに許可を求めずにログインを行う」というプロセスを行って良いのかを考え直す良い機会でしょう。
オフトピックになりますが、そろそろBASIC認証等からログオフするといったボタンがブラウザに付いていても良いと思うんですけどねぇ・・・
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
犯人はmoriwaka -- Anonymous Coward
つまり、第三者にBASIC認証の辞書攻撃をさせる事が可能って事? (スコア:2, 興味深い)
検証コードも何も書いてないのですが、コレってBASIC認証とかの回避に使えたRFC非準拠のブラウザ固有の拡張仕様ですよね?
読み込み完了時間とか読み込み済みサイズとかから辞書アタックの成否が解ったら嫌だなぁ
# ちなみにIEだと大分昔に封印されてレジストリ設定しないと無理です。 [microsoft.com]
Re: (スコア:0)
//<user>:<password>@<host>:<port>/<url-path>
と書いてありますし、rfc2396ではセキュリティリスク上NOT RECOMMENDEDですが禁止されたわけではありません。
どのあたりがブラウザ固有なのでしょうか?
封印されたのがブラウザ固有という事ですか?
>BASIC認証とかの回避に使えた
user:passwordを使って認証した事を「回避」とは言ってないと思いますので、
なにを回避できたのか興味深いです。お教え願えませんか?
Re:つまり、第三者にBASIC認証の辞書攻撃をさせる事が可能って事? (スコア:2, 参考になる)
ご自身で仰られているように、その表記は、あくまで"Common Internet Scheme Syntax"としての定義で"http"ではありません。
該当RFCでは
とあり、httpurlは、
と定義された物でしかなく、TelnetやFTPのようにuser:password@といった形式はありません。
(同様に~をHTTP URLに使ってはいけない等と言われるの理由もここ(上記にnationalが無い)に有ります)
また、Page.8の3.3. HTTPにも
と態々明記されています。
つまり、FTPやTelnetのように使えた方が便利であるというブラウザによるデファクトスタンダードとも言える拡張でしかないのです。
通常のアドレスバーや、リンクでは行われるユーザーによる「承認」もしくは「追認」を「回避」した事を問題視しています。
この事は、BASIC認証でユーザー認証を行う家庭内に存在する組み込み機器(ブロードバンドルータ)や、RAIDの管理コンソールといった物への思わぬ攻撃を引き起こします。
これらの機器は、出荷時に固定で既知のIDとパスワードが設定されてる事があり、変更を行っていない場合、攻撃サイトにアクセスしただけで意図しない動作を行わせる可能性があります。
もちろん最近の機器ならある程度対策されている物とは思いますが、今一度、「ユーザーに許可を求めずにログインを行う」というプロセスを行って良いのかを考え直す良い機会でしょう。
オフトピックになりますが、そろそろBASIC認証等からログオフするといったボタンがブラウザに付いていても良いと思うんですけどねぇ・・・