Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Japanese Spam in Big5

20 views
Skip to first unread message

to...@lbm.go.jp

unread,
Dec 4, 2007, 8:49:38 PM12/4/07
to
先日、当方に到達したSpamが以下のようなものでした。

・コードはBig5(繁体中国語)と宣言されている。
・日本語環境で表示させてみると、8bit部分はBig5文字列の特徴を有している。
・その中にHTMLの「𘚟」の形式(数値文字参照)が大量に混ざり込んでいる。

これをどうやって読んだものかと考えました。
そのままWebブラウザに読ませてコード指定すれば簡単なのでしょうが、
安全性を考え、また環境を一時的に変更することの副作用を避けるため、
以下の手順でコード変換しました。

(1)Big5→シフトJISの変換ツール(既存)に喰わせる
(2)シフトJIS→ISO-2022-JPの変換ツール(=nkf)に喰わせる
(3)「数値文字参照」→utf-8の変換ツール(自作※)に喰わせる
(4)「nkf -sW」に喰わせる

※:http://www.lbm.go.jp/toda/library/unixmail.html#htmlcode

シフトJISやEUC-JPをutf-8と混在させると8bit同志で区別がつかないので、
ISO-2022-JPとutf-8が混在した形に持って行ったわけです。
この形なら、nkfが混乱すること無く各々を適切に変換してくれるだろう
と思ったところ、目論見通りでした。
手順(1)(2)では「数値文字参照」を単なる7bit文字列と認識しますし、
手順(3)ではISO-2022-JPを単に「変換対象外の文字列」と認識するので、
何れにおいても、目的以外の部分を勝手に変換されることはありません。

ちなみに、内容は「Big5で記述された日本語」でした。
かな文字の部分が全部「数値文字参照」になっていたというわけです。

#GB2312(簡体中国語)には「かな文字」があるんですが、Big5には無いようです。

最近、メールサーバにSpamフィルタが入って、
かなりの精度でSpamがサーバに留まるようになったんですが、
流石にこれは内容解析ができなかったようです^_^;

戸田 孝@滋賀県立琵琶湖博物館
to...@lbm.go.jp

Yasushi Shinjo

unread,
Dec 4, 2007, 9:43:33 PM12/4/07
to
新城@筑波大学情報です。こんにちは。

In article <0712051049...@nanyanen.lbm.go.jp>


to...@lbm.go.jp writes:
> 先日、当方に到達したSpamが以下のようなものでした。
> ・コードはBig5(繁体中国語)と宣言されている。
> ・日本語環境で表示させてみると、8bit部分はBig5文字列の特徴を有している。
> ・その中にHTMLの「&#99999;」の形式(数値文字参照)が大量に混ざり込んでいる。

> ちなみに、内容は「Big5で記述された日本語」でした。
> かな文字の部分が全部「数値文字参照」になっていたというわけです。

漢字の部分は、Big5 をそのまま使ってかなの部分を数値文字参照
にしたわけですね。敵も考えてはいますね。

ただ、「Big5 & 数値文字参照 & それがかな」というルールで弾く
のは簡単そう。単一ツールでできると便利ですけれど。

> #GB2312(簡体中国語)には「かな文字」があるんですが、Big5には無いようです。

そういう事情ですか。

> 最近、メールサーバにSpamフィルタが入って、
> かなりの精度でSpamがサーバに留まるようになったんですが、
> 流石にこれは内容解析ができなかったようです^_^;

私のベイズ・フィルタは、bi-gram 使っているはずだけど、それだ
と文字コード関係なくガリガリやってしまっているのでしょう。で
も、本当に聴いているかどうかはよくわからないなあ。

\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報       \\

to...@lbm.go.jp

unread,
Dec 7, 2007, 6:44:10 PM12/7/07
to
In article <YAS.07De...@kirk.is.tsukuba.ac.jp> y...@is.tsukuba.ac.jp writes:
>> ・コードはBig5(繁体中国語)と宣言されている。
>> ・日本語環境で表示させてみると、8bit部分はBig5文字列の特徴を有している。
>> ・その中にHTMLの「&#99999;」の形式(数値文字参照)が大量に混ざり込んでいる。
>> ちなみに、内容は「Big5で記述された日本語」でした。
>> かな文字の部分が全部「数値文字参照」になっていたというわけです。
>漢字の部分は、Big5 をそのまま使ってかなの部分を数値文字参照
>にしたわけですね。敵も考えてはいますね。
本当に「考えた」のかどうか、疑問視してるんですけどね^_^;

文字コードを変換する際に、
unicodeを「中間コード」に使うシステムというのは多々あるだろうと思います。
#MicrosoftWordに一旦読み込ませる方法が該当するのかな?

その際、変換先コードで表現できない文字は数値文字参照にしてしまう
というのは、ごく普通にありそうな処理だと思うのですが、どうでしょう?
#MicrosoftWordの場合は、こうはならないと思いますが^_^;

だとすると、何も考えずに日本語文字列をBig5に変換したら、
上述のようになってしまいますよね。

戸田 孝@滋賀県立琵琶湖博物館
to...@lbm.go.jp

Yasushi Shinjo

unread,
Dec 10, 2007, 12:37:01 AM12/10/07
to
新城@筑波大学情報です。こんにちは。

In article <0712080844...@nanyanen.lbm.go.jp>


to...@lbm.go.jp writes:
> >漢字の部分は、Big5 をそのまま使ってかなの部分を数値文字参照
> >にしたわけですね。敵も考えてはいますね。
> 本当に「考えた」のかどうか、疑問視してるんですけどね^_^;
> 文字コードを変換する際に、
> unicodeを「中間コード」に使うシステムというのは多々あるだろうと思います。
> #MicrosoftWordに一旦読み込ませる方法が該当するのかな?
> その際、変換先コードで表現できない文字は数値文字参照にしてしまう
> というのは、ごく普通にありそうな処理だと思うのですが、どうでしょう?

なるほど。面白い分析です。たしかにこれだと、あまり自然知能が
働いている感じがしません。

なぜ日本語文字列を Big5 に変換しようとしたのかという話が残り
ますね。単に spam filter をだませるのではないかと期待したと
いうよりは、Big5標準の環境の OS で編集したらそうなってしまっ
たという話かな。

学生の時、アメリカで何かの店で、英語通じない時に、店員さんが
助けを呼びにいったら中国人だったというのはありましたね。漢字
で筆談すれば通じたかもね。かな漢字変換なしに漢字が書けないと
いう話があるんだが。

0 new messages