IDA Python(~ Appcall 編 ~)

0x1 はじめに IDAPython - くじらとたぬき ではIDA Pythonを用いていくつか例を記述してみた. 今回はAppcall を用いた例について, 覚書を記しておく. 0x2 Appcall とは Appcall is a mechanism to call functions inside the debugged program from the debu…

Windows の遠隔管理ツールについて

0x1 はじめに Windowsを遠隔管理できるツールについてのメモ 0x2 検証環境 各ツールでプロセス(calc.exe)を実行し, Sysmon +ProcExp を利用してそれぞれの結果を検証することをゴールとする. Windows 7 x86 (192.168.56.106) 前処理(必要に応じて) PSVersion…

マネージドコード(CLR)を呼び出す

0x1 はじめに C(++)からマネージドコード(CLR)を呼び出す手法を示す. 0x2 ソースコード clr.cpp test.cs 0x3 実行 csc /target:library .\test.cs 0x4 備考 ここからメイン(?) GUID CLSID_CLRMetaHost : {9280188D-0E8E-4867-B30C-7FA83884E8DE} IID_ICLRMet…

MSBuildのインラインタスクについて

1. はじめに MSBuildのインラインタスクを用いることによってコード実行が可能となる. 2. 手法 以下のxmlファイルを作成して, msbuildで実行するだけ(簡単!) 3. 実行結果 PS C:\Users\test\Desktop\work> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\M…

検証環境構築(L3スイッチ+ルータ(セキュリティ製品)+VLAN)

はじめに セキュリティ製品の検証環境構築の簡単なメモ. L3スイッチ(Cisco) + ルータ(セキュリティ製品を想定)でVLAN環境を作る. 今回はPacket Tracerを用いた. www.netacad.com 検証環境構築 パターン1 L3スイッチでVLANを分けて, トランクポートで接続する…

Process Hollowing

1. はじめに Process Injectionの手法の一つにProcess Hollowingがある. 今回はProcess Hollowingについて調べてみた覚書. 2. 手法 2.1. 検証環境 ・Windows 7/10 ・Dest(Destination) : インジェクションされるプロセス ・Src(Source): インジェクションす…

Windows Serviceのデバッグ

概略 Windows Serviceのデバッグを行いたい場合のためのメモ 自己責任で(VM推奨) デバッグした後は元の環境に戻す(重要) 環境 Windows 7 x86 (VirtualBox) 手法 その1 サービスの初期状態からデバッグできるようにする HKEY_LOCAL_MACHINE\SOFTWARE\Microsof…

UBoatRAT(解析)

はじめに 元ネタはこれ. researchcenter.paloaltonetworks.com 今更だけどちょっと興味のある箇所があったので実際に解析してみた. 検体 ・ドロッパー : f4c659238ffab95e87894d2c556f887774dce2431e8cb87f881df4e4d26253a3 ・UBoatRAT : 460328fe57110fc018…

svchost・servicesについてのメモ

メモ1(関連するプロセス) services.exe ("C:\Windows\System32\services.exe") サービスコントロールマネージャ(Service Control Manager : SCM) svchost.exe ("C:\Windows\System32\svchost.exe") サービスホスト(Service Host) メモ2 (プロセスと関連して…

IDAPython

1. はじめに IDAPythonに触れてみたので覚書として. 2. コードサンプル IDAPython, IDA SDK: Welcome で調べることができる. 後はひたすら調べる. 2.1 色をつける 個人的に解析を行う際に未定義の関数 (sub_***) がそのままでは他の命令と混じってしまい, 判…

shellcode(3) 構造体編

1. はじめに shellcodeの解析の際に必要となった構造体情報を残しておく. 2. 構造体 ・_TEB 0:000> dt _TEBntdll!_TEB +0x000 NtTib : _NT_TIB +0x01c EnvironmentPointer : Ptr32 Void +0x020 ClientId : _CLIENT_ID +0x028 ActiveRpcHandle : Ptr32 Void +…

shellcode(2)

1. はじめに 前回に引き続きshellcodeを生成して読んでみる. 2. shellcodeの生成 Kali Linux内のmetasploitを利用してshellcodeを生成する. root@kali:~# uname -aLinux kali 4.5.0-kali1-amd64 #1 SMP Debian 4.5.3-2kali1 (2016-05-09) x86_64 GNU/Linux r…

Yara

1. はじめに YARAについての覚書として. YARAとはマルウェア等を識別するツールである. いわゆるシグネチャマッチングができる. YARA is nutshell 2. rule 今回テストとしてEICARテストファイルを使用する. テンプレートを示しておく. conditionに判定を記述…

shellcode

1. はじめに LabyREnth CTF Windows Track のLv6の問題 (Shellcode) にて. 覚書として. 2. shllcode Ambrosius.exeを対象に行う. > cdb Ambrosius.exe 0:000> dt _TEBntdll!_TEB +0x000 NtTib : _NT_TIB +0x01c EnvironmentPointer : Ptr32 Void +0x020 Clie…

LabyREnth CTF (Windows Lv3)

1. はじめに LabyREnth CTF - くじらとたぬきと同じ. 2. writeup ・Squirtle (Windows Lv3) zipを解凍する(Pass : infected)とSquirtleChallenge.exeが出てくる. 基本的にAnti Debugの問題. それぞれをデバッガで消していく or 条件を合わせると解ける. 最終…

LabyREnth CTF (Unix)

1. はじめに LabyREnth CTF - くじらとたぬきと同じ. 2. writeup ・Perl (Unix Lv1) zipを解凍する(Pass : infected)とbowie.plが出てくる. (一部抜粋) my $input = ; $input = trim($input); if ($input eq (chr(5156 - 5035) . chr(-4615 - -4716) . chr(3…

LabyREnth CTF (Docs)

1. はじめに LabyREnth CTF - くじらとたぬきと同じ. 2. writeup ・BadMacro (Docs Lv1) zipを解凍する(Pass : infected)とchallenge.docが出てくる. challenge.docからVBAを抽出する. Attribute VB_Name = "ThisDocument" Attribute VB_Base = "1Normal.Thi…

LabyREnth CTF (Windows)

1. はじめに LabyREnth CTFに参加した. 解いた問題について残しておく.出題された分野はWindows, Unix, Threat, Mobile, Docs, Randomである. 2. writeup ・AntiD (Windows Lv1) zipを解凍する(Pass : infected)とAntiD.exeが出てくる. 実行してみる. UPXで…