http://ensi.tdiary.net/20031211.html#p03より

  • IE(6のみ?)のURL欄の表示は信用してはいけない
  • 間違いでした。IE(6のみ?)だけじゃないですね。
  • 以下の情報はjavascriptではないコードに対してのものです。
  • 対策
    • hoshikuzu|stardust氏のページに書いてあるhttp://www.secunia.com/advisories/10395/によると
    • Filter malicious characters and character sequences in a proxy server or firewall with URL filtering capabilities.
      • 実際どうすりゃいいのさ(汗
      • squidにはそれらしき設定(acl)はないし…。
        • squidアクセスログは偽装後のGETリクエストしか見えない
        • どの段階で表示されているURLが消えるのか…
        • 端末でEthereal動かして、リクエスト状況を見ると送出時には既に@の後ろしか見えない
        • user@domainと言うかたちなのでuser(@の前の部分)はdomainが解釈された後送出?
    • squidfirewallで対処できるぜ!って方はいらっしゃいませんか〜。
  • 動作としてはOperaが正しいような…、そもそも自動ログインの機能だし→user@domain
      • 現状でuser:password@domainでログインしている人なんているのかな…
        • 実際に試したところ、↑型でアクセスした場合、user名もpasswordもURLバーにもろみえ(wazilla1.5)、今となってはちょっと問題のある仕様ですね。
        • ブラウザの挙動というより、仕組み自体の問題ではないのかな、今時平文でuser:password流すというのも古いし、この型はもうobsoletedとしてサポートしない方向でいいんじゃないかなと。
        • GETリクエスト内のAuthorization:Basicをブロック可能なら防げそう。squidはこの辺惜しい、method単位でのaclは書けるがその中のは指定出来ない。
        • ↑は間違い。正常なリクエストならuser:passwordは流れるが、認証のかかっていないサーバの場合、偽装された部分の文字列はパケットを見る限りでは見受けられなかった