SlideShare a Scribd company logo
1 of 55
Download to read offline
Master Canary Forging
新しいスタックカナリア回避手法の提案
自己紹介
● 小池 悠生(こいけ ゆうき)
○ 16歳、学生
● CTFにハマっていた
○ DEF CON 2014 Finalist
○ CODEGATE Junior 2015 Winner
○ 引退視野
概要
● 動機
● Stack Canary
● これまでの回避手法
● Master Canary Forging
● 手法の評価と対策
概要
● 動機
● Stack Canary
● これまでの回避手法
● Master Canary Forging
● 手法の評価と対策
動機
● 僕はROPが好き
○ だからStack Based Buffer Overflowが好き
○ だからStack Canaryは嫌い
● Stack Canaryは強い
○ 回避出来る条件を考えるのは価値がある
○ 良い回避方法はないか?
概要
● 動機
● Stack Canary
● これまでの回避手法
● Master Canary Forging
● 手法の評価と対策
Stack Canary
● BOFによる攻撃を阻止したい
○ return addressが書き換えられたか判定したい
■ されていたらプロセスを殺す
○ 指標を作ればいい
■ BOFの前後で値が変わるようにする
Stack Canary
return address
frame pointer
local variables
● 指標を追加する
Stack Canary
return address
frame pointer
canary
0xdeadbeef
local variables
● BOFが起こると...
Stack Canary
canary
overwritten
● canaryの値が変わるので、攻撃を検知出来る
Stack Canary
modified
0x41414141
● canaryの値が変わるので、攻撃を検知出来る
Stack Canary
modified
0x41414141
Not 0xdeadbeef
Attack Detected
Stack Canary
● BOFによる攻撃を阻止したい
○ return addressが書き換えられたか判定したい
■ されていたらプロセスを殺す
○ 指標を作ればいい
■ BOFの前後で値が変わるようにする
Stack Canary
● BOFによる攻撃を阻止したい
○ return addressが書き換えられたか判定したい
■ されていたらプロセスを殺す
○ 指標を作ればいい
■ BOFの前後で値が変わるようにする
● これ、保証できる??
● canaryの値が変わらないと検知できない
Stack Canary
modified
0xdeadbeef
● canaryの値が変わらないと検知できない
Stack Canary
modified
0xdeadbeef
return address
任意の値に出来る
● canaryの値が変わらないと検知できない
Stack Canary
⇒ACE(任意のコード実行)
Stack Canary
● Stack Canaryの種類
○ Random
■ 元となる値が分からないようにする
■ プロセスの起動時に値をランダムに決める
○ Terminator
■ ’0’ 等が含まれるようにする
■ 元の値にしづらい
Stack Canary
● master canaryとstack上のcanaryの比較
概要
● 動機
● Stack Canary
● これまでの回避手法
● Master Canary Forging
● 手法の評価と対策
● ex1.c
回避手法1: __stack_chk_failを避ける
#include <stdio.h>
void bof(int (*print)(const char *)) {
char buf[16];
scanf("%s", buf);
print(buf);
}
int main(void) {
bof(puts);
}
● ex1.c
#include <stdio.h>
void bof(int (*print)(const char *)) {
char buf[16];
scanf("%s", buf);
print(buf);
}
int main(void) {
bof(puts);
}
回避手法1: __stack_chk_failを避ける
return address
frame pointer
canary
local variables
arguments
● ex1.c
回避手法1: __stack_chk_failを避ける
overwritten
arguments
#include <stdio.h>
void bof(int (*print)(const char *)) {
char buf[16];
scanf("%s", buf);
print(buf);
}
int main(void) {
bof(puts);
}
● ex1.c
回避手法1: __stack_chk_failを避ける
overwritten
arguments
#include <stdio.h>
void bof(int (*print)(const char *)) {
char buf[16];
scanf("%s", buf);
print(buf);
}
int main(void) {
bof(puts);
} 関数ポインタかつ引数
● ex2.c
回避手法2: canaryをリークする
#include <stdio.h>
int main(void) {
char buf[16];
scanf("%s", buf);
printf(buf);
fread(buf, sizeof(char), 32, stdin);
}
● ex2.c
回避手法2: canaryをリークする
#include <stdio.h>
int main(void) {
char buf[16];
scanf("%s", buf);
printf(buf);
fread(buf, sizeof(char), 32, stdin);
}
書式指定子攻撃
回避手法2: canaryをリークする
$ gdb ./ex2 -q
(gdb) b 4
Breakpoint 1 at 0x8048532: file ex2.c, line 4.
(gdb) r
Breakpoint 1, main () at ex2.c:4
4 scanf("%s", buf);
(gdb) x/12xw $esp
0xffffce60: 0xffffd129 0x0000002f 0x0804a000 0x080485e2
0xffffce70: 0x00000001 0xffffcf34 0xffffcf3c 0xf7e3539d
0xffffce80: 0xf7faa3c4 0xf7ffd000 0x0804859b 0x48d09200
(gdb) c
%11$x
48d09200
● stack canaryのどこを突破口にしているか?
○ 回避手法1: __stack_chk_failの回避
■ 検知、強制終了を行うところ
○ 回避手法2: canaryをリークする
■ stackに入ったcanary
回避手法の本質
● stack canaryのどこを突破口にしているか?
○ 回避手法1: __stack_chk_failの回避
■ 検知、強制終了を行うところ
○ 回避手法2: canaryをリークする
■ stackに入ったcanary
○ 回避手法3: master canaryを書き換える
■ stack canaryの元の値
回避手法の本質
概要
● 動機
● Stack Canary
● これまでの回避手法
● Master Canary Forging
● 手法の評価と対策
● 以下を仮定
■ Linux Kernel 3.19
■ glibc 2.21
■ ASLRは有効
Master Canary Forging
● master canaryはどこにある?
○ glibcを読む
Master Canary Forging
static void
security_init (void)
{
/* Set up the stack checker's canary. */
uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard (_dl_random);
#ifdef THREAD_SET_STACK_GUARD
THREAD_SET_STACK_GUARD (stack_chk_guard);
#else
__stack_chk_guard = stack_chk_guard;
#endif
● master canaryはどこにある?
○ glibcを読む
Master Canary Forging
static void
security_init (void)
{
/* Set up the stack checker's canary. */
uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard (_dl_random);
#ifdef THREAD_SET_STACK_GUARD
THREAD_SET_STACK_GUARD (stack_chk_guard);
#else
__stack_chk_guard = stack_chk_guard;
#endif
実体への代入
● master canaryはどこにある?
○ glibcを読む
Master Canary Forging
static void
security_init (void)
{
/* Set up the stack checker's canary. */
uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard (_dl_random);
#ifdef THREAD_SET_STACK_GUARD
THREAD_SET_STACK_GUARD (stack_chk_guard);
#else
__stack_chk_guard = stack_chk_guard;
#endif
● master canaryはどこにある?
○ THREAD_SET_STACK_GUARD
■ 7アーキテクチャにて定義
■ canaryがTLS(thread local storage)に入る
■ 定義されていないならmaster canaryは.bssへ
Master Canary Forging
● master canaryを書き換えるには
○ .bssにある時
■ 任意のアドレス書き換えができればいいだけ
Master Canary Forging
● master canaryを書き換えるには
○ .bssにある時
■ 任意のアドレス書き換えができればいいだけ
○ TLSにある時?
Master Canary Forging
● master canaryを書き換えるには
○ .bssにある時
■ 任意のアドレス書き換えができればいいだけ
○ TLSにある時?
■ そもそもTLS領域はどこに確保されるのか?
Master Canary Forging
● TLS領域はどこにある?
○ glibcを読む
Master Canary Forging
void * internal_function _dl_allocate_tls_storage (void)
{
void *result;
size_t size = GL(dl_tls_static_size);
#if TLS_DTV_AT_TP
size += (TLS_PRE_TCB_SIZE + GL(dl_tls_static_align) - 1)
& ~(GL(dl_tls_static_align) - 1);
#endif
/* Allocate a correctly aligned chunk of memory. */
result = __libc_memalign (GL(dl_tls_static_align), size);
● TLS領域はどこにある?
○ _dl_allocate_tls_storageが確保を行う関数
■ 内部で__libc_memalignが呼ばれる
● __libc_memalignは内部でmmapを呼ぶ
○ 結局はmmapによって確保されたどこか
■ ASLRの影響を受けるため書き換えが難しい
Master Canary Forging
● mmapで確保された領域の特徴:
○ 常にどこかの領域と隣接している
Master Canary Forging
● Mapped Area Based Buffer Overflow
Master Canary Forging
target area
● Mapped Area Based Buffer Overflow
○ まずmmapを使って領域を確保する
○ 確保した領域が目的の領域の上に来るようにする
Master Canary Forging
mapped area
target area
● Mapped Area Based Buffer Overflow
○ まずmmapを使って領域を確保する
○ 確保した領域が目的の領域の上に来るようにする
○ 確保した領域でBOFを起こす
○ 十分なサイズなら、隣接した領域も上書き出る
Master Canary Forging
overwritten
● Mapped Area Based Buffer Overflow
○ これでmaster canaryを書き換えられそう!
○ でも、攻撃者はmmapを呼べるの?
Master Canary Forging
● Mapped Area Based Buffer Overflow
○ これでmaster canaryを書き換えられそう!
○ でも、攻撃者はmmapを呼べるの?
■ はい
Master Canary Forging
● Mapped Area Based Buffer Overflow
○ これでmaster canaryを書き換えられそう!
○ でも、攻撃者はmmapを呼べるの?
■ はい
■ malloc
Master Canary Forging
● Mapped Area Based Buffer Overflow
○ これでmaster canaryを書き換えられそう!
○ でも、攻撃者はmmapを呼べるの?
■ はい
■ malloc
■ “When allocating blocks of memory larger than
MMAP_THRESHOLD bytes, the glibc malloc()
implementation allocates the memory as a private
anonymous mapping using mmap(2).”
Master Canary Forging
● Mapped Area Based Buffer Overflow
○ 使える条件は以下の2つ
■ heapのallocateを自由に行える
■ Heap Based BOFが起こる
Master Canary Forging
1. master canaryの書き換え
a. .bssにある時
i. 任意のアドレス書き換えで書き換える
b. TLSにある時
i. Mapped Area Based BOFを使う
2. Stack Based BOFを起こす
Master Canary Forging
概要
● 動機
● Stack Canary
● これまでの回避手法
● Master Canary Forging
● 手法の評価と対策
● 評価
○ 使いづらい
■ 2種類の脆弱性が必要
■ 普通Heap Based Buffer Overflowだけで十分
○ Mapped Area Based BOF単体は使いやすい
■ TLSには関数ポインタテーブルがある場合あり
手法の評価と対策
● 対策
○ Random XOR Canaryを使う
■ canary = master canary ^ stack pointer
○ ガードページを設ける
手法の評価と対策
https://github.com/potetisensei/
MasterCanaryForging-PoC/
PoC
御静聴ありがとうございました
なんでも質問してください。

More Related Content

What's hot

Ctfのためのpython入門
Ctfのためのpython入門Ctfのためのpython入門
Ctfのためのpython入門shiracamus
 
CTF for ビギナーズ ネットワーク講習資料
CTF for ビギナーズ ネットワーク講習資料CTF for ビギナーズ ネットワーク講習資料
CTF for ビギナーズ ネットワーク講習資料SECCON Beginners
 
ctfで学ぼうリバースエンジニアリング
ctfで学ぼうリバースエンジニアリングctfで学ぼうリバースエンジニアリング
ctfで学ぼうリバースエンジニアリングjunk_coken
 
katagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Cryptokatagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Cryptotrmr
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門Fixstars Corporation
 
PWNの超入門 大和セキュリティ神戸 2018-03-25
PWNの超入門 大和セキュリティ神戸 2018-03-25PWNの超入門 大和セキュリティ神戸 2018-03-25
PWNの超入門 大和セキュリティ神戸 2018-03-25Isaac Mathis
 
[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹
[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹
[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹CODE BLUE
 
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツールC/C++プログラマのための開発ツール
C/C++プログラマのための開発ツールMITSUNARI Shigeo
 
GoogleのSHA-1のはなし
GoogleのSHA-1のはなしGoogleのSHA-1のはなし
GoogleのSHA-1のはなしMITSUNARI Shigeo
 
Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話yaegashi
 
Deflate
DeflateDeflate
Deflate7shi
 
Xbyakの紹介とその周辺
Xbyakの紹介とその周辺Xbyakの紹介とその周辺
Xbyakの紹介とその周辺MITSUNARI Shigeo
 
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたことMITSUNARI Shigeo
 
CTF for ビギナーズ バイナリ講習資料
CTF for ビギナーズ バイナリ講習資料CTF for ビギナーズ バイナリ講習資料
CTF for ビギナーズ バイナリ講習資料SECCON Beginners
 
組み込みでこそC++を使う10の理由
組み込みでこそC++を使う10の理由組み込みでこそC++を使う10の理由
組み込みでこそC++を使う10の理由kikairoya
 
目grep入門 +解説
目grep入門 +解説目grep入門 +解説
目grep入門 +解説murachue
 

What's hot (20)

Glibc malloc internal
Glibc malloc internalGlibc malloc internal
Glibc malloc internal
 
Ctfのためのpython入門
Ctfのためのpython入門Ctfのためのpython入門
Ctfのためのpython入門
 
CTF for ビギナーズ ネットワーク講習資料
CTF for ビギナーズ ネットワーク講習資料CTF for ビギナーズ ネットワーク講習資料
CTF for ビギナーズ ネットワーク講習資料
 
ctfで学ぼうリバースエンジニアリング
ctfで学ぼうリバースエンジニアリングctfで学ぼうリバースエンジニアリング
ctfで学ぼうリバースエンジニアリング
 
katagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Cryptokatagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Crypto
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
 
PWNの超入門 大和セキュリティ神戸 2018-03-25
PWNの超入門 大和セキュリティ神戸 2018-03-25PWNの超入門 大和セキュリティ神戸 2018-03-25
PWNの超入門 大和セキュリティ神戸 2018-03-25
 
[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹
[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹
[CB16] House of Einherjar :GLIBC上の新たなヒープ活用テクニック by 松隈大樹
 
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツールC/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
 
GoogleのSHA-1のはなし
GoogleのSHA-1のはなしGoogleのSHA-1のはなし
GoogleのSHA-1のはなし
 
Stack pivot
Stack pivotStack pivot
Stack pivot
 
Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話
 
CTFとは
CTFとはCTFとは
CTFとは
 
入門 シェル実装
入門 シェル実装入門 シェル実装
入門 シェル実装
 
Deflate
DeflateDeflate
Deflate
 
Xbyakの紹介とその周辺
Xbyakの紹介とその周辺Xbyakの紹介とその周辺
Xbyakの紹介とその周辺
 
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと
 
CTF for ビギナーズ バイナリ講習資料
CTF for ビギナーズ バイナリ講習資料CTF for ビギナーズ バイナリ講習資料
CTF for ビギナーズ バイナリ講習資料
 
組み込みでこそC++を使う10の理由
組み込みでこそC++を使う10の理由組み込みでこそC++を使う10の理由
組み込みでこそC++を使う10の理由
 
目grep入門 +解説
目grep入門 +解説目grep入門 +解説
目grep入門 +解説
 

Viewers also liked

Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...
Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...
Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...CODE BLUE
 
AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015
AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015
AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015CODE BLUE
 
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015CODE BLUE
 
XSSフィルターを利用したXSS攻撃 by Masato Kinugawa
XSSフィルターを利用したXSS攻撃 by Masato KinugawaXSSフィルターを利用したXSS攻撃 by Masato Kinugawa
XSSフィルターを利用したXSS攻撃 by Masato KinugawaCODE BLUE
 
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)CODE BLUE
 
[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park
[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park
[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason ParkCODE BLUE
 
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...CODE BLUE
 
[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...
[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...
[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...CODE BLUE
 
[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine
[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine
[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’AntoineCODE BLUE
 
[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲
[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲
[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲CODE BLUE
 
[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes
[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes
[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson GuimaraesCODE BLUE
 
[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho
[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho
[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés RianchoCODE BLUE
 
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...CODE BLUE
 
IDAの脆弱性とBug Bounty by 千田 雅明
IDAの脆弱性とBug Bounty by 千田 雅明IDAの脆弱性とBug Bounty by 千田 雅明
IDAの脆弱性とBug Bounty by 千田 雅明CODE BLUE
 

Viewers also liked (15)

Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...
Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...
Adobe ReaderのJavaScript APIの悪用 by Abdul-Aziz Hariri & Brian Gorenc - CODE BLU...
 
AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015
AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015
AngularJSとの危険な関係 by Mario Heiderich - CODE BLUE 2015
 
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
 
XSSフィルターを利用したXSS攻撃 by Masato Kinugawa
XSSフィルターを利用したXSS攻撃 by Masato KinugawaXSSフィルターを利用したXSS攻撃 by Masato Kinugawa
XSSフィルターを利用したXSS攻撃 by Masato Kinugawa
 
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
 
[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park
[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park
[CB16] CGCで使用した完全自動脆弱性検知ツールを使ったセキュリティの分析とその効果 by InHyuk Seo & Jason Park
 
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
 
[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...
[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...
[CB16] COFIブレイク:実用的な制御フローインテグリティとプロセッサのトレースによるエクスプロイト阻止 by Ron Shina & Shlomi...
 
[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine
[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine
[CB16] バイナリロックスターになる:Binary Ninjaによるプログラム解析入門 by Sophia D’Antoine
 
[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲
[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲
[CB16] 機械学習でWebアプリケーションの脆弱性を見つける方法 by 高江須 勲
 
[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes
[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes
[CB16] 私のモデムに誰がバックドアを仕掛けたのか? by Ewerson Guimaraes
 
[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho
[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho
[CB16] 難解なウェブアプリケーションの脆弱性 by Andrés Riancho
 
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
[CB16] Electron - Build cross platform desktop XSS, it’s easier than you thin...
 
IDAの脆弱性とBug Bounty by 千田 雅明
IDAの脆弱性とBug Bounty by 千田 雅明IDAの脆弱性とBug Bounty by 千田 雅明
IDAの脆弱性とBug Bounty by 千田 雅明
 
Nyarlathotep
NyarlathotepNyarlathotep
Nyarlathotep
 

More from 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
 

More from 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...
 

Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015