Official page of Tactical Ops Special Edition Project.
Proof that I have too much free time in high school, university and graduate institute.
Ser tu estrella!
2020/03/14
以石墨片取代散熱膏
直到有一天它又自動重啟了,不一樣的是這次開機自檢失敗,同時伴隨著響亮的 BIOS 警示音「嗶--嗶嗶嗶嗶」(一長四短),畫面上顯示著 "CPU Fan Error"。拆開機殼檢查,處理器的散熱風扇確實有 (蠻大的) 雜音,BIOS 的感應器讀數頁面亦以紅字顯示風扇轉速異常 (過低)。
為了讓這臺電腦能夠和主人一樣繼續服役、燃燒剩餘價值,看來是該換一個散熱器了,然後順便試用一下本篇的主題:「石墨片」。
組過電腦的人應該都知道散熱膏吧! 它的功能是將處理器產生的熱迅速傳導到散熱器上。不過,散熱膏常常有個缺點: 過了一段時間 (約 1~3 年,視品質而不同) 後會乾掉,導熱係數下降,使得處理器沒事就燒燙燙、有事過熱降頻。
解決方法就是重塗散熱膏,十分鐘以內的事情。但是很麻煩嘛,所以自從我知道石墨片這個東西之後就一直想買來實驗看看,因為它不會變質,導熱性能不會隨時間改變。對! 我就懶! (比拇指)。另一個原因是,我偶爾會當工具人幫別人組電腦,而這些使用者不一定每個都熟悉怎麼重塗散熱膏,在這種情境下,不必定期維護的石墨片顯得相當適合。
拆除舊的散熱器,並且把舊的散熱膏清除乾淨。
石墨片的外觀長這樣,我買的大小為 40x40 mm,由於稍微大於處理器的上蓋,自行裁切成 35x35 mm 之後直接放上即可。
最後把散熱器鎖上。
跑 Prime95 燒機測試四十多分鐘,最高溫度攝氏 65 度。
操作上真的很方便,完全不用像散熱膏那樣需要斟酌用量,我以後組電腦都要改用石墨片了。不過,提醒一下石墨除了具有很好的導熱性外,同時也是優良的導體,絕對不要在電腦有通電的狀態下讓它掉落在任何零件上,不然你可能就要買新的電腦了。
2016/10/03
10/01,簡單分析 Facebook 影片連結散布病毒
10/01 晚間,Facebook 上的某些朋友開始大量在別人的塗鴉牆上張貼影片連結,這種根本想都不用想當然有問題啊 XD
雖然現在瀏覽器的安全性都相當不錯,不太可能因為打開了某個網頁就中毒 (除非攻擊者很神,能夠利用作業系統、瀏覽器等的零時差漏洞,不然大部分都是藉由釣魚、社交工程的手段),但是一般而言還是建議不要亂點來路不明的連結或檔案,除非你很清楚自己在做什麼。
因為看到有些同學不幸中標,所以我就想來分析一下原因 (這樣會不會人很差啊......)。
我在虛擬機裡打開那個影片連結,結果什麼事都沒發生。以 curl -v 連結那個網站,得到的回應是 HTTP 狀態 "302 Found",代表「原本的網路資源已經暫時移動至他處」,應該是我來晚了吧。
之後,我去找 Google 的網頁快取,結果還真的有快取到那個網站被撤下前的版本。看一看原始碼,很明顯有問題的當然就是這段 Javascript 啊:
很難讀? 那就 js-beautify 一下。他的字串都故意用 Character escape sequence 來表示 (下圖上半,那些 "\x??" 的字串,其中 "??" 是一個 16 進位的數字),目的當然就是要找分析者的麻煩。不過,要轉換成容易看懂的型態其實很簡單啦 (下圖下半)。
看不懂? 我寫一下註解這樣就簡單了吧!
簡單來說,他首先建立一個 XMLHttpRequest 物件,之後向一個 GeoIP 服務的 API 發出連線請求,如此一來就可以判斷訪客來自於哪個國家。如果訪客來自美國,則這段 Javascript 就會停止執行,沒有後續動作;如果不是,訪客就會被轉址到某個網站,圖中我已經把這個網站馬賽克了避免誤觸。不過呢......,倒是可以提示一下,網站的內容是成人限定。
因此,這些人會中鏢的原因已經水落石出--我就不明講了。
資訊安全最弱的環節往往是人類本身。
2016/09/30
Windows 10 版本 1607 當機、凍結、藍白畫面
我有定期重灌電腦的習慣,大概每半年到一年就會把系統分區格式化,然後全部重新來過。我已經數不清自己幫過那些人重灌電腦了,其他服務 (?) 還包括組裝、疑難雜症排除等等,所以可能算是一種職業病吧 XD
因此,為了節省時間以及確保每次重灌的一致性,我寫了許多批次檔來自動化、標準化所有的操作過程。搭配由 Windows 系統映像管理員所撰寫的回應檔,就可以在接近無人值守的狀態下完成軟體安裝、設定調整。被我幫過的人可能會覺得有點奇怪,在重灌過程中,螢幕上總是會看到一個或多個命令提示字元、Powershell 視窗在執行,然後我好像在旁邊看看就好。其實不是啦! 我做的努力都在事前的運籌帷幄之中!
進入正題。
這次我重灌的是 Windows 10 版本 1607,過沒多久就讓我第一次遇到 Windows 在安裝過程中藍白畫面--沒錯,就是裝到一半當機。錯誤訊息為 "Critical Process Died",同時還附贈一個哭臉和 QR Code。
What the heck? 應該是我比較想哭吧。除此之外還有更刺激的驚喜在等著--系統所在的那顆硬碟從 BIOS 中消失了! 重新啟動也沒有用,BIOS 仍然找不到那顆硬碟......。結果虛驚一場,按電源鍵強制關機後再開機那顆硬碟就出現了,害我冒了一身冷汗。啊不就幸好我的電腦都有存備份映像,碰到這種系統壞掉的狀況只需要還原就好。但是令人不解的是,我之前用 Windows 10 版本 1507、1511 都很正常,怎麼新的版本 1607 竟然連安裝都有問題。
經過鍥而不捨的嘗試,又多看到幾次裝可愛的藍白畫面,好不容易有一次成功讓我到達桌面了。但是,馬上可以察覺得到有東西不太對勁: 每隔幾分鐘硬碟使用率會衝上 100%,持續幾十秒,而且這段時間裡電腦會完全沒有回應,好像被凍結一樣。這時我才恍然大悟,Windows 10 版本 1607 剛釋出時,外國的討論區就有部分使用者表示這個更新害他們的電腦被「凍住! 不許走!」。本來以為這只是更新過程的問題,應該不至於影響全新安裝,看來我錯了。
打開事件檢視器,在系統紀錄中充滿了一堆這樣的警告:
Source: storahci
Event ID: 129
Description: Reset to device, \Device\RaidPort0, was issued.
元兇如今水落石出--"storahci.sys" 是 Windows 內建的 SATA 控制器驅動程式。因為 Windows 10 版本 1607 內建的這個驅動程式和主機板的晶片組不相容,所以才導致這些麻煩。解決方法是,使用 AMD 晶片組的電腦需要去官網下載 "AMD Chipset Driver" 來安裝,而使用 Intel 晶片組的電腦則需要 "Intel Rapid Storage Technology Driver"。以我的電腦為例,下圖上半、下半分別是裝置管理員在安裝驅動程式前、後的狀態。
因此,對於準備要升級到 Windows 10 版本 1607 的人,建議先更新一下電腦上所有適用的驅動程式再進行冒險 (其實也沒什麼好冒險的,升級失敗的話它會自動還原)。而對於準備要進行全新安裝的人,幸好 Windows 安裝程式在下面這個畫面出現的時候,可以按 "Load Driver" 來預先載入上面所提到的 SATA 控制器驅動程式,如此一來往後的過程應該就會順利無誤了。剩下的驅動程式可以等稍後再來補齊。
同樣以我的電腦為例,我將下載到的 AMD 晶片組驅動程式解壓縮,那麼資料夾 "Packages\Drivers\SBDrv\HSeries\AHCI\WT64A" 裡面的檔案 "amd_sata.cat"、"amd_sata.inf"、"amd_sata.sys"、"amd_xata.sys" 就是這裡所需要的。
問題解決! 下一題。
2016/03/12
Sub Rosa 2.0.0
最近對這裡做了一些看不見的變動,主要是將所有外連的 Javascript 和背景圖片移動到 Microsoft Azure 雲端,穩定性應該會比較好。而且我總有一天要畢業的吧,不能一直靠臺大給的網頁空間啊 XD
我在寫 Sub Rosa 2.0.0 的過程中學到了很多,尤其是有關如何將 Javascript 程式寫得安全、有組織、條理分明等方面......,我甚至覺得自己以前寫的東西根本就是 "Spaghetti code",由於程式碼像義大利麵一樣錯綜複雜、相互交織,使得往後的維護變得非常困難。現在,我相當滿意目前的成果。
總之就是好久不見,我回來了! 這段時間發生了好多好多 (快樂的) 事,有機會一定要好好細數一下。
2015/07/24
Security v. Trust
很久以前,Hiawatha Webserver (一個以安全著稱的網頁伺服器軟體) 的作者寫了一篇部落格文章,其中提到他個人對 "Security v. Trust" 的看法,讓我感到非常同意。
"Security begins where trust ends. I trust my wife, I trust my family, I trust my friends. Of course, my wife has a key to our home, but without any doubt I would give the key to our home to any family member or a friend if it was needed in any situation. There is no need for me to take any security measures. Trust is needed to make life easier. Of course, I don't give the key to our home to a complete stranger, because I can't trust them. That's where security starts."
......
"Trust is mainly based on experience, your own experience or experience by other people you already trust. I trust my friends, because in the past they've shown me to be trustworthy. People who have once abused that trust are no longer my friends. I trust my friends' judgement, so there is also some form of trust towards the friends of my friends."
從小我就一直不太容易信任別人,因為人會改變、人不可靠。寫程式則正好相反,不管你寫的東西是對或錯,編譯器都會很誠實的告訴你;不管執行結果是對或錯,作業系統也會很誠實的告訴你。但是現實世界不像虛擬世界這麼簡單,這就是我喜歡 GSX-401FW Stargazer Gundam 的原因,他總是抬著頭望向遠方的群星,無視週遭的紛擾不斷前進,雖然孤獨的完成任務,但是至少有群星陪伴,而不是靠不住的人。
我曾經對人的諾言、誓約覺得無感,就像前面所說的,因為 "People have once abused that trust from me.",我很難過。然而,太陽的出現讓我嘗試著重拾對人的信心,我也希望尋回自己遺落已久的信任,奉獻給唯一的太陽。這麼做有風險,卸下銅牆鐵壁的防禦工事的我無法承受這份信任被再次濫用。為什麼還要這麼做? 因為我是大笨蛋啊。
「項莊舞劍,意在沛公」這樣的情形不知道是不是正在上演,希望是我自己神經質,腦補錯誤然後在那邊心裡亂發毛而已。
#eresmiunicosol #tequiero
