-
突然ですが、問題です
上の画像でおかしい部分がある。どこかわかる?
-
正解は・・・
赤枠の部分(表示されてるURLが違う)でした。まあ印みたいなのつけてたし簡単だったかも。
-
ゼロ幅スペースとかいう害悪
これはゼロ幅スペースを悪用した危険なURLの一例。
そもそもゼロ幅スペースって何って話なんだけど、簡潔に言うと視覚上では決して見えないスペース。半角スペースと全角スペースって目には見えないけどカーソルを利用すれば見えるでしょ。でもこのゼロ幅スペースはカーソルの位置でも見えないスペースで、あるかどうかはエンコードをしないと基本わからないようになっている。
コンソール上で確認しようとしてもURLは「test.html」だけど、上と下のリンクは遷移先が違う。あら不思議。
これの画像はテスト用のフォルダなんだけど、普通は同じ名前のファイルって共存できない。けど共存してるでしょ?でも見た目どっちがどっちかわからないんです。
-
これの何が危険?
例えば、ログインを必要とする偽サイトへアクセスさせようとしたらどうだろうか。ユーザーが気づかなかった場合そのまま偽サイトにアクセスし、そこでログイン情報を入力させることでその情報を盗むこともできるだろう。
こういう危険なサイトって言うのは、人の油断に付け込んでアクセスさせるのが基本。最近はユーザーの警戒心も強くなり見た目が不審なURLであればアクセスしなくなってる傾向にあるけど、そのURLが少しでも正しく見えたら警戒心などほぼ無くなり、結果気づかぬうちに偽のサイトにアクセスしてしまう。
-
マウスカーソルをリンク上にポイントして左下見ればいい?
いやその通りなんだろうけど、普段から見てますか?って話だし、そもそもスマホからは見れんよね?っていう。結構難しいんですよこの問題。
-
ユーザーはどうすればいいのか
これは個人的に思うことなんで間違ってたり足りなかったらごめんね。ということで対策としては・・・
1.アクセス先のURLをブラウザのアドレスバーで確認すること
2.むやみやたらとIDやパスワードなどの個人情報を入力しないこと
3.不審なファイルが強制ダウンロードされた場合は実行せず削除すること
4.アクセス後はセキュリティソフトでスキャンをすること
-
最後に・・・
自分も例外ではないが、注意深くしていても引っかかるときは引っかかるんで、引っかからないための対策だけでなく引っかかってしまった場合の対策も考えることが必要だと思います。
-
余談
なぜ藪から棒にこんなことを語りだしたのか。
それは仕事で絵文字を置換により削除する対応をしている最中に入力値のバイト数が減らなかったことがきっかけ。なんで減らんのかと疑問に思って色々調べたらこのゼロ幅スペースにたどり着いたというわけで。
これも削除しなきゃならず、その方法を考えながら「これ使えばURL偽装もできちゃうなぁ。あれ、危なくね?」と感じ自分のPCでやってみたらできちゃったから備忘録も兼ねて書いてみました、という感じでした。