---
# System prepended metadata

title: MWScup 2019 static

---

MWScup 2019 static
===

# 問題レベル
1-1: A
1-2: B
1-3: B
1-4: B
1-5: B
1-6: B

2-1: C
2-2: B
2-3: B

3-1: B
# 問題

## 1

```
1-1. 当該検体が通信を行う前に行う、アドレス 0xA51A92
から 0xA51ADE までのコードは、dword_AFB030 と dword_AFB034 に保存されている 2つの設定情報を使ってある処理を行う。
このコードがどのような処理をするか説明せよ。（3点）
```
ida: 現在時刻を取得し、hourがdword_AFB030からdword_AFB034の間の時に活動を開始し、それ以外の場合は一秒間Sleepする処理を繰り返して潜伏する。


```
1-2. sub_A44F60 は感染端末の情報を収集してサーバに送信するための関数である。sub_A44F60 を解析して、以下の選択肢のうち、送信される情報をすべて選択せよ。（2点）
```

ida:
API
- WSAStartup
    - WinSockの初期化
- GetSystemDefaultLangID
    - システムの既定言語識別子を取得
- GetComputerNameA
    - NetBIOS 名を取得する(ANSI版)
- GetComputerNameW
    - NetBIOS 名を取得する(Unicode版)
- GetVersionExA
    - OSのバージョンに関する拡張情報を取得
- gethostbyname

keyword
- VersionInformation.dwOSVersionInfoSize
    - ただのバッファの長さをチェックしている
- VersionInformation
- dwMajorVersion
- dwMinorVersion

- [x] コンピュータ名
- [ ] ユーザ名
- [x] OS バージョン
- [ ] IP アドレス
- [ ] MAC アドレス
- [ ]キーボード配列


```
1-3. アドレス 0xA51D90 から 0x0A51ECD までのコードが実行する、攻撃者からの命令は以下のどれか答えよ。（2点
```
- [x] 感染端末への任意のファイル送信
C2 サーバへの任意のファイル送信
任意のコマンド実行
任意のプロセスの終了
プロセス一覧の取得
マルウェアのインストール
マルウェアのアップデート
マルウェアのアンインストール

ida: 感染端末への任意のファイル送信

```
1-4. アドレス 0xA52852 から 0xA52B89 のコードが実行する、攻撃者からの命令は以下のどれか答えよ。（3点）
```
感染端末への任意のファイル送信
C2 サーバへの任意のファイル送信
任意のコマンド実行
任意のプロセスの終了
プロセス一覧の取得
- [x] マルウェアのインストール
マルウェアのアップデート
マルウェアのアンインストー

ida: 飛ばす
warikoda: マルウェアのインストール？

```
1-5. 関数 sub_A4C2F0 がどのような処理をするか答えよ。（2点）
```

ida: ダイナミックリンクでshell32.dllからSHFileOperationWの関数を解決して実行している。


```
1-6. アドレス 0xA52360 から 0xA52578 までのコードがどのような処理をするか答えよ。（3点）
```

ida: ファイル一覧を取得している。

## 2
```
2-1. sub_A42D60 は通常とは異なる変換テーブルを使用した Base64 デコード処理を行う関数である。sub_A42D60 を解析し、その変換テーブルとパディング時に使用される記号（通常は "=" が使用される）を答えよ。（3点）
```
ida:```PzLS3wlhemAnfxsUiGNOgT5R6aH9^`KyD8Cocd04EFIvWBQJZXpj1qtu2rkb7VMY!```

```
2-2. 関数 sub_A40450 は、本来の RC4 実装に一点だけ変更が加えられている。その変更点は何か述べよ。（3点）
```
ida: もらったヒントをもとにあとでとく
```
2-3. sub_A431A0 は、与えられたデータに対してある計算を行った結果を返す関数である。sub_A431A0 を解析し、何を返す関数かを特定せよ。（2点）
```

- [ ] MD5 ハッシュ値
- [ ] SHA-1 ハッシュ値
- [ ] SHA-256 ハッシュ値
- [x] CRC32 チェックサム

ida: 特定のテーブルを使っていないのがヒントになりそうCRC32

## 3
```
3-1. これまでの回答やその他の解析結果を元に、当該検体の名称（Emdivi、Daserf、Oni、Plead 等）を答えよ。（2点）
```

warikoda:[このレポート](https://www.macnica.net/file/mpressioncss_ta_report_2019.pdf)の中の文字列変換テーブルが使われている。Datper