由於隱私問題,Flash cookie進來成為一個熱點安全話題。不過從另一個角度講,Flash cookie(即本地共享對像)卻是一個很好的法庭證據——因為凡是在個人隱私上有問題的東西,都在取證調查上都很有用。本文首先詳細介紹Flash cookie的有關基礎知識,然後闡述了它在取證分析中的應用,最後給出一個操作Flash cookie的小工具。 / y% y4 Z. E5 E9 D9 Y
一、Flash cookie基礎知識
% R( Y O8 R8 T5 N2 X/ E6 T( ?6 C* G4 `0 i. x& [& F9 Y5 H$ a
首先,介紹一些Flash cookie方面的基礎知識:
- O8 O. N+ M; [0 \4 e+ x8 h$ Z5 U- K
◆Flash在互聯網上已經非常普及,它不僅提供流式視頻,同時還提供富客戶端體驗。目前,許多流行的站點都依賴於Flash,因此,Flash插件在Internet用戶中的安裝率極高。 9 z( d E. d& t& B% F
* E$ K( v! e; |- f
◆Flash標準的本地共享對像本地共享對像允許在用戶電腦上的本地Flash實例中存儲數據。 8 I; S2 u0 W7 F- K
7 n& l( q1 w5 _◆本地共享對象是作為一些單獨的文件來存儲的,它們的文件擴展名為.SOL。默認時,它們的尺寸為不超過100kB,並且不會過期——這一點與傳統的HTTP Cookie不同。
3 c+ K5 k' S- X) O3 { |& b" j$ B: H: V
◆我已經在本地系統上的兩處位置發現了.SOL文件,分別是%user profile%\Application Data\Macromedia\Flash Player 和 %user profile%\Application Data\Macromedia\Flash Player\#SharedObjects\\,這裡的%user profile%表示用戶文件夾目錄,在XP 系統上一般為C:\Documents and Settings\\ 。對於Vista系統來說,可能還有留意%user profile%目錄下的Roaming文件夾。 ' o& X2 a9 H: P% }
+ T$ P s" Q! ]! g◆本地共享對象並不是基於瀏覽器的,所以普通的用戶不容易刪除它們。如果要刪掉它們的話,首先要知道這些文件所在的具體位置。這使得本地共享對像能夠長時間的保留在本地系統上。
2 \; {+ T; w* }! P O" C( v$ q. D; ~, `/ S; z" w* _, K) F7 _
二、取證分析
, Z0 n$ H( l4 N
% o7 v0 r& X3 j8 Q# x' t$ m/ B+ z在進行計算機調查取證時,將本地共享對像描述為Flash cookie是比較恰當的,因為它們提供了類似於傳統的HTTP Cookie的各種信息。一般情況下,Flash cookie可以提供下列信息:4 \0 n& _ M$ h: @! C
) g. E. Z6 r1 m6 a
已訪問過的網站
2 }* }0 n) f: V4 L" o8 ~0 o, S' A! ]$ r& x. g- d
Flash要求按照域名的體系結構分層存儲本地共享對象。這樣做能夠強制每個域名只能在本地系統上最多存放100k數據。從我們的角度來說,這給調查取證工作打開了一扇迅速檢查已訪問站點的方便之門。* D3 f$ ?5 j) Y) I: N8 ]$ Z) a
$ h: ~- X/ s6 I8 R- Q
# g2 N+ P8 o% l8 {5 N5 }$ a; W圖1 顯示本地共享對像域的目錄清單 6 b! y6 u7 B; c' W6 ~. {
3 ]. J; M& j7 E, V: h9 K要注意的是,基於Flash的廣告也能夠保存本地共享對象,這一點很重要,因為在一些情況下我們要考慮這些站點是不是用戶特意去訪問的。本地共享對象的來源是非常明顯的(參見圖2),但是更進一步地測試或者額外的證據可能必須要進行必要的推斷。
/ P( X& K/ W; A. K {& M+ k2 N# m, m b6 B/ u& H9 C: M
1 b9 O' ~; y. X2 O5 c& X% Z, Z! I
圖2 來自一個Flash廣告的本地共享對像 " U% S3 p+ C) h0 T- ~
! `/ w% h1 b: z& T
訪問站點時所登錄的本地用戶帳戶* i, I- s# j9 ^& }3 q. o
( |, R0 A" b6 U# u7 b1 u
我們知道,.SOL文件位於%user profile%文件夾中,而它正好指出了保存該文件時用戶所登錄的帳戶。/ @) O+ A# z" k/ o5 o% \
0 j4 L: L' G7 f' Q
訪問站點的起止時間9 B" r2 B C+ ` k: F) n
# ?1 }) G& J) u8 x& @: }! T8 n
因為.SOL文件是單獨存放的,所以我們能夠利用文件系統的時間戳來確定該文件的建立和最後一次修改時間。在Windows XP 系統上,我們可以使用訪問時間來確定最近讀取該文件的時間。通過它,我們可以瞭解最近一次訪問該站點的時間,但是我們必須小心,因為我們尚不明瞭要求站點讀取該本地共享對象的標準。但是大部分情況下,每當訪問這些站點的時候,它們就會訪問它們存放在用戶端的本地共享對像;不過,如果由於某種原因站點沒有讀取該本地共享對象的話,訪問時間就不會改變。
$ m6 ]) H& A! T8 \" x0 G$ \9 y6 G# L6 f E$ e2 T% M- R% l
SOL文件的創建時間有可能告訴我們第一次訪問該站點的時間。再一次強調,我們無法保證該在第一次訪問該站點時必定創建該本地共享對象,所以斷定起來有些難度。最佳的說法應該是已知的最初訪問該站點的時間。在系統上的其他證據可能印證這確實是第一次訪問時間,或者表明還有更早的訪問時間。* j& z' Y; a% F, i5 `1 B
5 J. p4 d4 i% D, G$ T所以,放回頭去在看看圖 1,我們可以看到已知的訪問mg3.mail.yahoo.com的最早時間是11/27/2008上午1:38,已知的最後一次訪問時間為8/17/2009下午5:27,這裡的時間都是本地計算機時間。
8 b( c( B! D: ~: {' _7 g
' x5 y* g2 K( j網站存儲的數據
/ M8 B- a# M9 H0 F$ A1 k$ D( Q6 A' w* b( f9 h
Flash試圖通過控制格式並迫使所有的數據都存放成二進制序列來對本地共享對像數據進行混淆處理。也就是說,如果您發現了一個相關文件,那麼就不要忽視這個數據區域。我也發現有趣的明文消息,例如天氣網站存儲的基於文本的位置信息。1 V$ P. ` C m5 Q5 o" O' [2 d3 U2 u
9 @( Y* e8 u/ X7 o0 L' }三、Flash cookie工具( w; b1 E- L. W1 j
z9 k0 y! O' A. I" F" T4 T4 D% `- b雖然不推薦作為取證工具使用,因為它要求在一個工作的系統上安裝運行,但是Better Privacy Firefox擴展用於在本地系統上發現和清除本地共享對像還是非常不錯的。了解法庭證據來最好手段之一是在一個已經知道其行為的系統上做檢查,例如在自己的系統上。插件Better Privacy允許您輕鬆地查看和管理在一個運行中的系統中的本地共享對象。$ V* y% T' g% ^2 l s7 f
1 d G! V- W7 X( S : h9 f8 u' w6 D! [1 }0 f e! P1 ?
圖3 Better Privacy插件的截屏 7 e6 }+ `2 D) F% K
$ C: n4 I" B7 D/ G四、小結8 t0 T# h q5 Y
% I, N, g' y+ w7 c% E2 I由於隱私問題,Flash cookie進來成為一個熱點安全話題。不過從另一個角度講,Flash cookie(即本地共享對像)卻是一個很好的法庭證據——因為凡是在個人隱私上有問題的東西,都在取證調查上都很有用。本文首先詳細介紹了Flash cookie的有關基礎知識,然後闡述了它在取證分析中的應用,最後給出了一個操作Flash cookie的小工具。' W# j* P, ~9 z- n) c
& q8 G) p2 i7 f: V& q
/ P$ Z4 }& h% \. u9 w本篇文章來源於 黑客基地-全球最大的中文黑客站 原文鏈接:http://www.hackbase.com/tech/2009-10-17/57060.html |