狠狠撸

狠狠撸Share a Scribd company logo
隠す
こおしいず
1TSG LT大会 2015/07/02
$ whoami
Cookies a.k.a. こおしいず / くうきいず / き / こ
@cookies146 .
seccamp 2012 SW組
a member of CTF team wasamusume
Windows上で生きてきたのでWindowsの話しかできない
2
ファイル隠蔽
それは、ロマン。
別に隠したいファイルがあるわけじゃあない。
3
隠し属性
?~
4
隠し属性
あ!
5
> attrib +s +h [file]
隠し属性
+
システム属性
間違いなくビビる。
6
「特殊フォルダ」
昔よりアクセスが煩雑になったっぽい。
Vistaはもっと楽だった。
.{20D04FE0-3AEA-1069-A2D8-08002B30309D}
7
代替データストリーム
何に使うんだろう。
8
ここから本題。
るーときっとってなんかかっこいいよね(笑)
9
N年前
10
Process A
IAT
Call FFF
*K!FFF
Kernel32.dll
FindFirstFile(…) { …; }
これを…
11
Process A
rootkit
IAT
Call FFF
*H!FFF
Kernel32.dll
FindFirstFile(…) { …; }
Hook.dll
hook_FFF(…)
{ …; FindFirstFile(…); …; }
こう!
12
反省
僕はなんにもしてない。
ネットにめっちゃきれいなライブラリ。
explorer.exeから丸見え
あいつFindFirstFileを呼んでない。
13
ということで
全部自力で書こう。
機械語送りつけたい。
うわ、explorer.exeって64bitアプリか???
14
explorer.exe
一般に
自分 → Windows API → NTDLL.dll → Kernel
ってなってる。
FindFirstFileW
15
FindFirstFileW
explorer.exe
一般に
自分 → Windows API → NTDLL.dll → Kernel
ってなってる。
FindFirstFileW
FindFirstFileW
sub rsp, 38
and dword ptr ss:[rsp+28],0
and qword ptr ss:[rsp+20],0
mov r8,rdx
xor edx,edx
xor r9d,r9d
call FindFirstFileExW
add rsp,38
ret
FindFirstFileExW
push ebp
push rbx
push rsi
...
mov dword ptr ss:[rsp+28],4021
mov qword ptr ss:[rsp-28],rax
mov qword ptr ss:[rbp-18],r11
mov qword ptr ss:[rbp-10],r11
mov qword ptr ss:[rsp+20],7
call ntdll!NtOpenFile
...
call ntdll!ZwQueryDirectoryFile
...
call ntdll!RtlReleaseRelativeName
...
ZwQueryDirectoryFile
mov r10,rcx
mov eax,34
syscall
ret
16
explorer.exe
ZwQueryDirectoryFileを呼んでた。
呼び出し元はよくわかんないところ。shell32.dll。
17
方法
適当にZwQueryDirectoryFileの結果改竄アセンブリを書く。
適当にShell32.dllのIATを書き換えるアセンブリを書く。
適当にexplorer.exe上にメモリを確保して機械語を書き込む。
適当にCreateRemoteThreadする。
18
方法
適当にZwQueryDirectoryFileの結果改竄アセンブリを書く。
適当にShell32.dllのIATを書き換えるアセンブリを書く。
適当にexplorer.exe上にメモリを確保して機械語を書き込む。
適当にCreateRemoteThreadする。
19
方法
適当にZwQueryDirectoryFileの結果改竄アセンブリを書く。
適当にShell32.dllのIATを書き換えるアセンブリを書く。
適当にexplorer.exe上にメモリを確保して機械語を書き込む。
適当にCreateRemoteThreadする。
20
方法
適当にZwQueryDirectoryFileの結果改竄アセンブリを書く。
適当にShell32.dllのIATを書き換えるアセンブリを書く。
適当にexplorer.exe上にメモリを確保して機械語を書き込む。
適当にCreateRemoteThreadする。
21
方法
適当にZwQueryDirectoryFileの結果改竄アセンブリを書く。
適当にShell32.dllのIATを書き換えるアセンブリを書く。
適当にexplorer.exe上にメモリを確保して機械語を書き込む。
適当にCreateRemoteThreadする。
完成したのは今日の2:00
22
デモ
‘hid3’という文字列が含まれているものをファイル一覧から外す
23
でも
IATが書き換えられていることは火を見るよりも明らか。
いろいろ雑。とくにアセンブリ。
24
いつか
Windowsのデバイスドライバとか書きたい。
Ring 0で遊びたい。
25
END
26

More Related Content

What's hot (20)

DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
sleepy_yoshi
?
【メモ】一般的に设计书に定义される项目例
【メモ】一般的に设计书に定义される项目例【メモ】一般的に设计书に定义される项目例
【メモ】一般的に设计书に定义される项目例
Hirokazu Yatsunami
?
CouchDB JP & BigCouch
CouchDB JP & BigCouchCouchDB JP & BigCouch
CouchDB JP & BigCouch
Yohei Sasaki
?
20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)
Takahiro Iwase
?
カジュアルにソースコードリーディング
カジュアルにソースコードリーディングカジュアルにソースコードリーディング
カジュアルにソースコードリーディング
Akihiro Okuno
?
パケットが教えてくれた ルートサーバが 13個の理由
パケットが教えてくれた ルートサーバが 13個の理由パケットが教えてくれた ルートサーバが 13個の理由
パケットが教えてくれた ルートサーバが 13個の理由
@ otsuka752
?
月間10億pvを支えるmongo db
月間10億pvを支えるmongo db月間10億pvを支えるmongo db
月間10億pvを支えるmongo db
Yuji Isobe
?
搁以外の研究ツール
搁以外の研究ツール搁以外の研究ツール
搁以外の研究ツール
弘毅 露崎
?
惭辞苍驳辞顿叠の使い方
惭辞苍驳辞顿叠の使い方惭辞苍驳辞顿叠の使い方
惭辞苍驳辞顿叠の使い方
Tatsuto Maetsu
?
Redis Intro Osc2010 Tokyo Spring
Redis Intro Osc2010 Tokyo SpringRedis Intro Osc2010 Tokyo Spring
Redis Intro Osc2010 Tokyo Spring
Makoto Ohnami
?
分かった気分になるスタックトレース
分かった気分になるスタックトレース分かった気分になるスタックトレース
分かった気分になるスタックトレース
Trash Briefing ,Ltd
?
3-1
3-13-1
3-1
Atsushi Hara
?
フレッシャーズのためのパケット解析入门
フレッシャーズのためのパケット解析入门フレッシャーズのためのパケット解析入门
フレッシャーズのためのパケット解析入门
彰 村地
?
Yapcasia2012 ltthon
Yapcasia2012 ltthonYapcasia2012 ltthon
Yapcasia2012 ltthon
turugina
?
DeclarativeSql
DeclarativeSqlDeclarativeSql
DeclarativeSql
Takaaki Suzuki
?
社内勉強会02 シリアライズ[公開用]
社内勉強会02 シリアライズ[公開用]社内勉強会02 シリアライズ[公開用]
社内勉強会02 シリアライズ[公開用]
Keme Sato
?
Elastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみたElastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみた
Yoichi Toyota
?
WebAppDev勉強会 #2 at cafe? IKAGAWA DO
WebAppDev勉強会 #2 at cafe? IKAGAWA DOWebAppDev勉強会 #2 at cafe? IKAGAWA DO
WebAppDev勉強会 #2 at cafe? IKAGAWA DO
Kohei Noda
?
VeeamとN2WS ― 外部リポジトリの活用
VeeamとN2WS ― 外部リポジトリの活用VeeamとN2WS ― 外部リポジトリの活用
VeeamとN2WS ― 外部リポジトリの活用
株式会社クライム
?
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
sleepy_yoshi
?
【メモ】一般的に设计书に定义される项目例
【メモ】一般的に设计书に定义される项目例【メモ】一般的に设计书に定义される项目例
【メモ】一般的に设计书に定义される项目例
Hirokazu Yatsunami
?
CouchDB JP & BigCouch
CouchDB JP & BigCouchCouchDB JP & BigCouch
CouchDB JP & BigCouch
Yohei Sasaki
?
20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)
Takahiro Iwase
?
カジュアルにソースコードリーディング
カジュアルにソースコードリーディングカジュアルにソースコードリーディング
カジュアルにソースコードリーディング
Akihiro Okuno
?
パケットが教えてくれた ルートサーバが 13個の理由
パケットが教えてくれた ルートサーバが 13個の理由パケットが教えてくれた ルートサーバが 13個の理由
パケットが教えてくれた ルートサーバが 13個の理由
@ otsuka752
?
月間10億pvを支えるmongo db
月間10億pvを支えるmongo db月間10億pvを支えるmongo db
月間10億pvを支えるmongo db
Yuji Isobe
?
搁以外の研究ツール
搁以外の研究ツール搁以外の研究ツール
搁以外の研究ツール
弘毅 露崎
?
惭辞苍驳辞顿叠の使い方
惭辞苍驳辞顿叠の使い方惭辞苍驳辞顿叠の使い方
惭辞苍驳辞顿叠の使い方
Tatsuto Maetsu
?
Redis Intro Osc2010 Tokyo Spring
Redis Intro Osc2010 Tokyo SpringRedis Intro Osc2010 Tokyo Spring
Redis Intro Osc2010 Tokyo Spring
Makoto Ohnami
?
分かった気分になるスタックトレース
分かった気分になるスタックトレース分かった気分になるスタックトレース
分かった気分になるスタックトレース
Trash Briefing ,Ltd
?
フレッシャーズのためのパケット解析入门
フレッシャーズのためのパケット解析入门フレッシャーズのためのパケット解析入门
フレッシャーズのためのパケット解析入门
彰 村地
?
Yapcasia2012 ltthon
Yapcasia2012 ltthonYapcasia2012 ltthon
Yapcasia2012 ltthon
turugina
?
社内勉強会02 シリアライズ[公開用]
社内勉強会02 シリアライズ[公開用]社内勉強会02 シリアライズ[公開用]
社内勉強会02 シリアライズ[公開用]
Keme Sato
?
Elastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみたElastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみた
Yoichi Toyota
?
WebAppDev勉強会 #2 at cafe? IKAGAWA DO
WebAppDev勉強会 #2 at cafe? IKAGAWA DOWebAppDev勉強会 #2 at cafe? IKAGAWA DO
WebAppDev勉強会 #2 at cafe? IKAGAWA DO
Kohei Noda
?
VeeamとN2WS ― 外部リポジトリの活用
VeeamとN2WS ― 外部リポジトリの活用VeeamとN2WS ― 外部リポジトリの活用
VeeamとN2WS ― 外部リポジトリの活用
株式会社クライム
?

Viewers also liked (9)

基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル
基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル
基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル
CODE BLUE
?
CODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak Guilfanov
CODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak GuilfanovCODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak Guilfanov
CODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak Guilfanov
CODE BLUE
?
CODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZ
CODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZCODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZ
CODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZ
CODE BLUE
?
齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った
齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った
齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った
yamaguchi_2048
?
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
Satoshi Mimura
?
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
CODE BLUE
?
CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...
CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...
CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...
CODE BLUE
?
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE
?
パターン认识と机械学习入门
パターン认识と机械学习入门パターン认识と机械学习入门
パターン认识と机械学习入门
Momoko Hayamizu
?
基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル
基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル
基調講演:CTF: クールな奴らは皆やってるよ by クリス?イーグル
CODE BLUE
?
CODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak Guilfanov
CODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak GuilfanovCODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak Guilfanov
CODE BLUE 2014 : [基調講演] IDA Proの歩みとこれから by イルファク?ギルファノヴ Ilfak Guilfanov
CODE BLUE
?
CODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZ
CODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZCODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZ
CODE BLUE 2014 : [物理セキュリティ]サイバーセキュリティがすべてではない by インバー?ラズ INBAR RAZ
CODE BLUE
?
齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った
齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った
齿厂厂の评価基準と搁滨笔厂プラグイン的なものを作った
yamaguchi_2048
?
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
Satoshi Mimura
?
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
Firefoxの倒し方 by 西村 宗晃 (にしむねあ)
CODE BLUE
?
CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...
CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...
CODE BLUE 2014 : [基調講演] サイバーセキュリティの5つの問題 - セキュリティプロフェッショナルとハッカーが地球を救う by ケレン?...
CODE BLUE
?
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE
?
パターン认识と机械学习入门
パターン认识と机械学习入门パターン认识と机械学习入门
パターン认识と机械学习入门
Momoko Hayamizu
?

hiding