phpmyadmin 遭受駭客攻擊
這是一陣子之前的事了,大約是在一月二十幾號左右吧。
那時從bbclone裡面看到怪怪的記錄,一般人連進來會使用網址,而不是IP。
於是就去看了一下這個人在幹什麼。
結果發現……
他連結的目標是/phpmyadmin/scrits/setup.php
雖然我管理資料庫用的介面,也是phpmyadmin,但是我的目錄並不是在那邊,而且有用.htaccess檔加密碼保護,所以一般人應該是進不去的。
一開始根本不知道這個頁面是什麼東西,而且我自己打那個連結進去,也找不到網頁,看來我的phpmyadmin裡並沒有這個東西。
於是,我想說,這可能是版本的問題,某些版本的phpmyadmin裡面可能有這種東西…….
先補充一下phpmyadmin的版本,之前我在RedHat系列的CentOS安裝phpmyadmin時,是去抓個壓縮檔,放進網站的根目錄,就可以直接用了。
在windows上安裝時,是去下載appserv來安裝(appserve官方網站),裡面已經包含phpmyadmin。
但在ubuntu安裝時,我是直接打 apt-get install phpmyadmin 的指令去安裝,安裝的版本很明顯的跟之前用過的不一樣,因為介面不同。
而且,他還會自行去修改apache2 sites-available( 預設是在 /etc/apache2/sites-available/ ),設定網址,讓這台主機每個網址下的 /phpmyadmin都會連到phpmyadmin。
這對我而言很麻煩,因為我管理跟前端的網址不一樣,於是我把它改掉了,也因此我對這個有印象。
於是,我開了一下自己的windos上的測試站台(使用appserv裝的),看見這個頁面。
嗯……..
超級危險的…….
這很明顯是在找忘記安裝、修改設定的phpmyadmin下手吧…….
另外,bbcolone也會記錄對方ip,我這邊記錄到的ip是 118.123.240.176 ,連過去看了一下,是這個網站。
還是不知道對方是誰,也不能確定對方就是這個網站的人,說不定他們也被入侵,被當成跳板來用。
總而言之,最後由IP去查網址,查到的是 www.comsys.net.cn 。
由於軟硬體、資料都沒受什麼損失,對方也沒入侵成功,事情到這裡就結束了。
不過,我想我以後都會去改一些重要的預設端口、進入頁面了吧。
其實我超級不推薦在自己網頁上安裝任何管理平台
首先就是phpmyadmin絕對不安裝,
不然你就安裝到別的網域底下,至少駭客在try的時候絕對不會try到
還有如果有任何後台,千萬一定要記住,名字不可以打有類似管理員的字眼
你可以打 hellobird
就是千萬不要打什麼admin
跨網域是還不錯的選擇
還有就是主機要設定禁止人透過ip直接連線任何web
不然就是把ip連近來的用VirtualHost隨便指向某一個資料夾,顯示個HelloWorld就好
一般來說,駭客應該有辦法透過ip知道你有哪幾個站台
不過只要你不說,駭客根本不知道你哪一個站台有放置後台
這樣會減少駭客想try的慾望
另外就是後台輸入帳號密碼的部份~也用一些欺騙的方式
例如input name="ID"的內容,其實是當pwd用
或者多一個input name="CheckCode" 騙騙駭客,讓他一直以為這個參數必須要設置
因為html原始碼會告訴一切訊息,所以在這裡也可以騙騙駭客
只要增加try密碼的複雜度,多半會降低一些能力比較弱的駭客用try的方式try到
其實有一些apache的工具,可以防止user在try你的後台網址
不過很容易因為其他原因,不小心封鎖到一些正常的用戶
有一款apache mod => fail2ban 就是可以根據log寫ban ip 的規則
我目前是只有把它用在SSH的部份
因為很多人會try我SSH的帳號密碼
fail2ban會去看log檔,看看有誰在亂try,接著使用iptables 封鎖它的ip
fail2ban的應用很廣,但是用起來也很複雜,有機會可以一起研究
mod_security也可以做到很多防止的效果,不過這個也是超級複雜
目前我的網站沒有使用…
網路上還有教一些運用php + iptables的方式,可以直接即時封鎖對方ip
至於php的內容可以依據每個人希望的限制方式而撰寫
http://ithelp.ithome.com.tw/question/10069411
這是他的作法~可以參考看看
不過它寫的規則比較單一,所有try的行為都ban掉
比較不留情面~但也有可能ban到一些不該ban的行為,或者不知名錯誤而不小心ban掉
web防範好多學問~希望可以多交流~