もの凄く恥ずかしいどうも、ダムログの時間です。
いやはや何とも・・・。自戒の意味を込めての覚書です。
たまたまあるスタッフとパスワードの話をしている時に、
「どの文字が大文字だったか忘れちゃったんですよ」
と言い出すので、
「何で忘れるん?普段から入力してるでしょ?」
と聞き返すと、
「だってあのログインのシステムは全部小文字でもログインできるんですよ」
・・・!!
つまり私が構築したあるログインシステムで、大文字が混ざったパスワードにおいて、すべて小文字にしてもログインできてしまうことが発覚した訳で・・・。
こ、これってセキュリティホールじゃん!!
このシステムは2年以上も使っているのですが、今の今まで誰もそうなっていると教えてくれなかったんですよね・・・。どうもスタッフは「小文字でもログインできる仕組みなんだ」という認識でいるらしいのです。
こないだもサイトのデザインをセンタリング&ワイド化した時に、思いっきりブラウザ依存、しかも自分のブラウザ以外で確認してないなどという酷い状況だったので、結構後になってからレイアウトが崩れている事が判明した、何てこともあったぐらいですから。
その時も「そういうデザインだ」と思われていたらしく・・・。だとしてもテキストが重なってたりしてたら、さすがにおかしいと思うだろうに・・・。
で、今回のそもそも原因は、スタッフが言わなかったからって事じゃなく、私がバイナリモードとテキストモードの違いを理解していなかった、というよりむしろJPEGデータとかはバイナリデータだから”そのバイナリ”なんだろうな、という呆れた勘違いが発端なのです。
そう。で、入力されたパスワードがDBに格納されたデータと一致しているかどうかを、InStr関数を使って比較させる訳ですが、これがテキストモードになってたって訳です。
はぁ。先日、某メガバンクを株主とするシステム会社の人に、私をスカウトしたい(たぶん社交辞令)って言われて、超浮かれているところへこの不始末。
その時に「いやぁ私なんて素人に毛が生えた程度ですよ~」と言いましたが、いやそれどころかむしろ、
「毛の抜けた素人」
ですわ。ともかく良い勉強になりましたとさぁ。はい、ちゃんちゃん。