任何電腦只要連在網際網路上就會被攻擊
很多人會誤認為只有伺服器主機才會被攻擊,實際上不論是個人筆電、桌機、手機、IPCam、DVR或任何物聯網設備都會被攻擊!
只是因為駭客發動攻擊有一定的成本,所以一般個人被駭客鎖定的機會較低(名人例外),大都會以長時間在運作的伺服器主機來作為攻擊目標,因此才會被誤以為只有伺服器主機會被攻擊!
另外,像是DVR、IPCam或物聯網設備,由於這些設備的防護能力都較弱,而且也是長時間連在網路上,因此也是駭客們最喜歡的攻擊目標,很多這類的設備被入侵之後成為所謂的【肉雞】或稱做【傀儡機】,也就是被駭客們用來當做跳板或是發動DDoS攻擊的衛星基地之一…
透過網站流量報表就能簡單查覺異常之處
每台伺服器主機本身都有相當多的Log記錄可查詢,但問題是Log太多、太雜,所以也不會有人時時刻刻去監看每筆Log記錄,此外,不同任務型態的伺服器主機也會有不同的Log,這些Log的格式也會隨著使用的軟體套件不同而有不同的格式…
我們以最常見的網站主機來說,使用Nginx和Apache兩個不同的Web Server套件,其設定、Log格式和產生的Log檔案位置都會不同,甚至不同版本的同個套件也會有些許的格式差異,這在查看Log時都必須注意!
由於直接查看Log幾乎無法直接判斷問題,所以我們會安裝流量報表來協助解析這些Log,透過有圖表統計的報表才能更有效率地判斷是否有異常的問題發生,要注意的是這裡的流量報表不是指一般網站用的google analytics這種(透過在網頁中插入javascript code的方式),而是指能解析網站主機Log檔的流量報表。
網站主機Log檔範例
每一秒鐘都可能會產生超多筆的Log記錄,代表著連至網站的每個連線,標準格式會有連線用戶端的IP位址、瀏覽器軟體和相關版本等等,一般我們會從其它方向發現有異常時再回來查看這個Log(例如查看特定IP的連線記錄)
網站主機流量報表範例
這是我最常看的網站流量報表之一,它的數據完全是從網站主機的Log中解析而得來的,百分之百不會被灌水,對於我們在維運伺服器主機的人來說已經很有幫助,例如可以得知哪些IP的連線點擊數有異常?哪個時段是網站的流量高峰?有了這個報表,再搭配INSTAWATCHER的監測報表,以及Log檔的詳查,基本上就能找出95%以上的問題~
INSTAWATCHER的CPU用量報表範例
這也是我最常看的網站流量報表之一,它的數據也都是從網站主機中得來的,對於我們在維運伺服器主機的人來說超級有用,除了可以得知網站主機的即時CPU用量,還能查看記憶體用量、即時網路流量、磁碟用量和啟用的服務等等~
(更多詳情請參考INSTAWATCHER的官網)
找出問題後就能對症下藥來解決
以上述這個例子來說,我發現有幾個連線點擊數很多的IP,然後透過詳查Log找到這些IP在連線的網站內容,再來判斷是否屬於攻擊行為,若是攻擊行為,直接加以封鎖就行了!