RLOを使いレジストリ汚染を隠ぺいするマルウェア 56
ストーリー by hylom
よく考えるなぁ 部門より
よく考えるなぁ 部門より
あるAnonymous Cowardのタレコミより。 多くの文化圏では、横文字は左から右に読むが、アラビア語などでは横文字は右から左に向けて読む。そのため、UnicodeはRLOという制御コードを利用することで、文字の記述方向を切り替えられるようになっている。これを悪用し、ファイルの拡張子を分かりにくくするといった攻撃方法は以前からあったが、このたびRLOを利用してサービス名を分かりにくく偽装するマルウェアが発見された(MicrosoftのMalware Protection Center)。
このマルウェアが偽装するのはGoogle Chromeなどで使われる「gupdate」という、サービスとしてバックグラウンドで動作するプログラム。マルウェアは先頭にRLO制御文字を加えた「etadpug」という文字列をサービス名として利用することで、一見「gupdate」というようにサービス名が見えるように偽装しているという。このように偽装された場合、目視での判別はかなり難しい。
そうか。 (スコア:3, おもしろおかしい)
「ぜかまし」ちゃんってそーゆー事だったのか。
ターャジス (スコア:2)
「まず小さい『ャ』がある時点で気づけよ!」と言ったのですが、
「だって『トョペット』とか『バャリース』とかあるじゃん」と反論されました。
Re:ターャジス (スコア:1)
変なのは「ャ」じゃなく「ーャ」だな。
「スーリャバ」は変じゃないし。
the.ACount
レジストリー汚染って意味違わない? (スコア:3)
「レジストリー汚染」って、ソフトウェアがアンインストール後もレジストリーに設定を残す等の理由で、 Windows を使っていくにつれてレジストリーに不要あるいは有害な設定が増えていくことを指す言葉だと思っていた。マルウェアがレジストリーを書き換えるのは単に「マルウェアによるレジストリーの変更」のような気がする。
本題に戻ると、ブログにも書いてある通り RLO を使ってファイル名を偽装するのは昔からある話で、レジストリーのキー名で同じことをするのは新しいのかもしれないけれど特に新鮮味はないなあ。
Re: (スコア:0)
誰も具体的に注意を促した実績がない所に、実際に出現して動作した事が重要なんです。
あなたがお感じになったかもしれない「新鮮味」は、本題に全く関係ない事ですね…。
(後出しですから、どーとでも言えますし)
単語の定義にブツクサ仰ってる辺りも、典型的な言葉遊びです。
もっと素直になろうよ。
Re:レジストリー汚染って意味違わない? (スコア:2)
ファイルのパス名に RLO を使うってネタが出てきたときに、レジストリーのパス名 (「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\gupdate」みたいなののこと) に RLO を使うことを思い付かないような一般人は、そもそもレジストリーの中を見ようとしないからこの偽装の意味もないだろうと思ったのですが、僕は素人の行動力を甘く見すぎかもしれませんね。
Re: (スコア:0)
用語に噛みつくのはここでは作法のうちですからその辺はよろしくお願いいたします
俺は知ってたいまさらなんだ発言もここでは定型ですのでよろしくお願いいたします
アクセス数向上に今後ともご協力いただければ幸いです
Wikipediaに無いじゃないか!!! (スコア:0)
Windowsに、そんな糞仕様が設けられているとは知りませんでした。
どうして、そんなせっかくの知識を、Wikipediaに書いてくれなかったんですか(;_;)
あなたがWikipediaに書けば、他の人も
"レジストリー汚染"の誤った使い方をすることは無かったかもしれません。
たれこむ前に…記事にする前に…Wikipediaで調べたかもしれないからです!
"レジストリー汚染"の使い方の定義を曖昧にし
使い方を乱し、より曖昧にしてしまったのは
その用語を知っていながら、Wikipediaへの記述を怠ったあなたがたでは無いか!
#とか言ってみるテスト
RLOの色を変える仕組みはできませんか (スコア:2)
RLOの部分だけが異なる色で表示される
たとえば、色が薄くなったりする仕組みがあれば
問題を回避できないでしょうか?
Re:RLOの色を変える仕組みはできませんか (スコア:2)
そんな糞仕様にしたら,アラビア語圏の人々が発狂します.
そんなに気になる? (スコア:2)
明朝体の文書の中で、英数文字が出てきた時
ちゃんと明朝体の英数文字を表示するように設定している?
異なる言語の文字であれば、字体が違うことを
仕方なしとしているのが日本なんじゃないのかな?
誰も、アラビア文字は色を変えろとは言っていないよ。
もちろん、強制もしていない。
英数文字混じりの文書は、明朝体で表示しない自由があるように
RLOでも、色を変えないで表示する自由を無くせとも言っていない。
英数文字を、RLOで表示するような特殊な使い方を
注意を喚起する方法として、色を変えることを提案しているの。
まず、第一に右舷の船名の色を変えるところから考えてもらえないだろうか?
えっ?あれは一行一文字の縦書きだって?
Re:RLOの色を変える仕組みはできませんか (スコア:2)
OS の側でそういうことを勝手にやると、思わぬところで問題が起きそうです。一方、アプリケーションの側で動作を選択するなら、ファイル名やレジストリーのキー・値の名前に RLO 等の directional override を使う必要はそもそもないと思うので、色を変えるよりも directional override を無効にする仕組みを用意しておく方が簡単のような気がします。 (なお、 #2446973 [srad.jp] に書いた通り、左から右の言語と右から左の言語が混在する文章であっても、 directional override は通常は不要です。)
たいへんだ (スコア:0)
いますぐChromeを削除しなくちゃw
Re: (スコア:0)
emorhc 「くっそーせっかく偽装したのに、まさかもうバレるとは
目視での判別はかなり難しい。 (スコア:0)
「かなり難しい」って不可能ではないということなんでしょうか?
実は1ドットずれてるとか?
Re:目視での判別はかなり難しい。 (スコア:4, 参考になる)
元サイトの例ですと、アルファベット順に並べた時に、本来の g の場所ではなくて e の場所に並んでいるようにみえますね。
Re:目視での判別はかなり難しい。 (スコア:1)
RLOなんかを使わず、そのまま「gupdate」という名前にしてしまえばよいではないか。
偽装する必要なんかない。
Re:目視での判別はかなり難しい。 (スコア:1)
あとはgupdate自体の更新の際に強制終了させられるとかね。
複数起動していてもプロセス間通信しているかもしれないし、機械側には区別してもらい、人間には同じものと見せる工夫なんだと思うよ。
Re: (スコア:0)
私もそう思うのですが、なにか意味があるのでしょうかね?
Re: (スコア:0)
gupdateは2つくらい入ってることあるから、どれが本物かわからないよね
Re: (スコア:0)
ファイル名の場合は拡張子を誤認させる目的があったがレジストリの場合は必要性が分からんな
正規のキーと同居しちゃえよ
RLOはUnicodeの仕様バグ (スコア:0)
テキストの途中でRLOを入れれるような仕様にしたのが全ての間違い。
先頭1文字目でのみ許可されるようにすべきだった。
Re:RLOはUnicodeの仕様バグ (スコア:1)
先頭1文字目でのみ許可だと英語とアラビア語が混在する文章が作れないではないか
Re:RLOはUnicodeの仕様バグ (スコア:2, おもしろおかしい)
そんなわけのわからない文章を作らなければいいのでは
Re:RLOはUnicodeの仕様バグ (スコア:2)
わけがわかるように修正お願い
Re:RLOはUnicodeの仕様バグ (スコア:1)
タイトルの時点で日本語と英単語交じりという……
アラビア語文書に英単語混ぜるという視点で見れば?
# RLOでなくLROダケド
Re: (スコア:0)
日本語に英数字を混ぜるのもやめましょう
Re: (スコア:0)
あなたは英単語まじりの日本語を見たことはありませんか? わけのわからないことを言わないように。
Re: (スコア:0)
日本語話者が言うとギャグにしかならないんだが
Re: (スコア:0)
UnicodeにRLOの機能を持たせたのが間違いだ。
Re: (スコア:0)
RLOの制御文字がない文字コードでどうやって英語とアラビア語を混在表示しようというのだ。
Re:RLOはUnicodeの仕様バグ (スコア:2)
英語とアラビア語が混在する普通の文章を作るだけなら、 explicit directional override (RLO, LRO) は不要で、 implicit directional mark (RLM, LRM) や explicit directional embedding (RLE, LRE) で十分だと思います。 explicit directional override にも使い道はあるようですが、よく知りません。
Re: (スコア:0)
Unicodeは文字セットなのに文字列に関することが出てくるというのが仕様としてどうよ。
// 他に文字列に関するものってあったっけ。
Re: (スコア:0)
制御文字に関していえば、
文字列(制御文字で囲まれた文字)の操作に関するものは山ほどありますよ。
別にUnicodeに限った話でなく。
Re: (スコア:0)
なんで32bitも領域があるのに、制御コードが必要なの?
単純にそのコードを見れば、英字なのか、アラビア文字なのか、判別できますよね。
描画するときに、左からなのか、右からなのか、判断すれば良いでしょ。
Re:RLOはUnicodeの仕様バグ (スコア:2)
その二つは関係ない気がする。あと、くだらない揚げ足取りをすると、 Unicode のコードポイントは 0x10FFFF までだから 32 ビットもない。 20 ビットちょい。
その判断はするけれど、 bidi の処理って意外と複雑だから、それだけじゃ済まないんだよ。感嘆符等、方向のない文字もあるし、制御文字を除いて同じ文字列でも状況によって方向が変わったりする。例えば、英語のソフトウェアの中でアラビア語の単語が 3 個並んでいたとして、 3 個の単語が一つのフレーズを成すなら右から左に並べるけれど、各単語が別個の選択肢を表しているなら左から右に並べるとか。
bidi 制御文字がなくても何とかする方法はあるだろうけれど、少なくとも bidi 制御文字が使えて便利な場面はある。
Re:RLOはUnicodeの仕様バグ (スコア:1)
君は若いから知らないのかもしれないが、昔は日本語もRLOだったんだよ。
つまり、単純に日本語だからと言って、LROで表示すればいいってことは無い。
ちなみに、牛耕式 [wikipedia.org]って書き方もあるね。
Re:RLOはUnicodeの仕様バグ (スコア:2)
「RLO」というのは Unicode の制御文字の名前「right-to-left override」の略称であって、 right-to-left reading order か何かの略じゃない…はず。
Re:RLOはUnicodeの仕様バグ (スコア:1)
さらに補足しておくと、現代日本語でも、RLOで書くことがある。例えば、自動車の右側に横書きで書く場合。
Re: (スコア:0)
湘南FLOWER
Re: (スコア:0)
。だのういとうよし示表在混を語アビラアと語英てっやうこでドーコ字文いなが字文御制のOLR
| rev
Re: (スコア:0)
アルファベット文字なのに逆並びが指定できるのがおかしいのだから
解釈する側が逆順にならないFONT(アルファベットとか漢字とか)では
無視するなどの処理を行うべきなんだろう。
Re: (スコア:0)
先頭にRLO制御文字を加えた「etadpug」という文字列
なので、それじゃ駄目なのでは。
Re: (スコア:0)
マークアップ言語やアプリケーション側で制御をするのが良かったと思う。
ルビとか上付き・下付き文字みたいに
Re: (スコア:0)
確かに、結局、RLOなどの制御文字を入れるんだったら、Unicodeじゃなくて、ISO-2022-JPなどの様に切り替えシーケンスで複数のエンコードを切り替えるという仕様でも良かった気はします。
ただ、それだとエンコード毎にアドホックな対応が必要で実装が大変だから、統合しようぜってことだったんでしょうけど、結局、Unicodeの仕様は大きすぎて、もうOSやらライブラリに頼らないと、一般のプログラマには手に負えないという・・・。
Re: (スコア:0)
全てはバベルの塔を建てようとした事が間違いだった。
車の横書き (スコア:0)
車の車体に描かれてる文字が逆順で書かれることがある現象は日本(語)特有でしょうかね
英語とかのラテン文字使う文化ではどうでしょうか
Re: (スコア:0)
あれなんで?
普通に読みづらいんだけど
Re:車の横書き (スコア:3)
トラック車体、右から左向きに書いてある商品名、大変読みにくいですね。「ターャジス」など。
これを考察したブログ記事を探しました。
右横書き試論「車体右側面上右横書き」の考察と鑑賞 [air-nifty.com]がオススメです。写真が豊富。
上記ブログを紹介した記事日常:トラックの右から左表記問題、解決 [naglly.com]も読みやすいです。
関連記事、車体右側面の 「進行方向書き」 が減ってきたようだ [cocolog-nifty.com]もためになります。
Re:車の横書き (スコア:1)
昔は書く方向なんて好き勝手。
下から上に書くのだってあったのさ。
伝統を捏造するなよ。
the.ACount