在7月24日的文章: “如何為文章及留言作備份?”, WordPress 的高手Zonble 在留言教我們, 只要在php頁面上,加上?p=all,就可以顯示全部的文章了。
然後, 我們發現了TUP的大漏洞, 只要應用這個小技巧,
- http://username.2friend.com/index.php?p=all, 就可拿取整個TUP 的所有文章, 而不是只是個人的!
- http://username.2friend.com/wp-admin/edit.php?p=all, 就不只可以edit, 及看到其他人password protected 的文章, 甚至可以刪掉整個tup 的文章了!
(當然, 你一定要是TUP的會員, 並要在login 後才可做到)
但是在類似的服務, 例如: www.blogthing.com, 卻沒有這個bugs, 所以我們相信這不是WordPress 的問題, 而是TUP的問題.
8月5日, 知道了這個TUP的大漏洞後, 我除了隱藏了該文的相關留言外,
還即時去信TUP的Admin 人員James, 並在討論區留言, 希望他會check mail.
在給TUP 的信內, 我還有這樣的數句:
二. 閣下作為群盟的員工, 請看一下 zonble 的文章: http://zonble.twbbs.org/archives/2004_07/554.php
作為一間公司, 無論是tup 還是 080 的blog hosting 服務,
竟然不守規, 把Powered by WordPress這一行就是要改成Powered by 080, / 台北地下酒吧, 是要不得的行為, 請重視此事!
可是, 過了數天亦沒反應. 昨晚再於TUP討論區發言, 由於想引起admin們的注意, 唯有用了較嚴重的字眼……
見James! Check Mail Please! Urgent!! 一文
今天, 終於有admin回復, 他們終於關了這個大漏洞.
在我發信足足5天後, James的回應:
感謝你囉! 老實說我的信箱我不常看他,因為已經太多太多的垃圾信件充斥了!
我最近正在研究如何透過有效的方法攔阻垃圾信件,希望以後我也能輕鬆的看到我該看的信件!
David 說他已經將漏洞補起來了
我, 忍不住這樣回覆:
老實說與其花時間研究如何透過有效的方法攔阻垃圾信件, 倒不如先處理這裡的問題!
老實說你們應該至少每天都看一看討論區!
老實說還有很多問題你們還未處理! (Mickey 的文章全部不見了, 叫天不應, 你們是理還是不理?)
老實說很多人已選擇不再用TUP的blog, 包括我在內! (就是因為你們的支援服務極爛)
老實說你們為何用了wordpress 的程式, 為何不守承諾, 連credit 也刪去, 一點都不尊重知識產權 (tup如是, 群盟如是……)
老實說……
對不起, 我說得太多了……
看樣子,TUP的設計應該是所有人的文章共用同一個資料庫,然後另外建立一個站台欄位,只要是從不同的入口進去,就只會根據某個站台ID或作者名稱,選取資料庫裡頭的內容,但是沒有把WP原本可以用p=all選取所有文章的狀況,把站台ID或作者名稱的條件放進去。
而blogthing應該是每個WP站台,就分別用一個資料庫,而不是像TUP把所有文章塞在同一個資料庫。
關於連結的處理, WordPress採取了比較寬鬆的態度,字眼上用了”Recommendations”(建議)而不用”Requirements”(要求),所以那些站才會肆無忌憚地任意刪除/改動本來的link吧。
System Recomendations
PHP version 4.1 or higher
MySQL version 3.23.23 or higher
… and a link to http://wordpress.org on your site.
剛剛看了一下,原來在1.2的時候改成了Recommendations,1.0的時候用的是Requirements。:p
可是 WP 是依據 GPL version 2 發放的。如果使用者修改及發放已修改的版本,則必須在明顯的地方通知其他用家曾作出修改。這一點 TUP 並未做到。
就算 TUP 沒有留意這條款 (唔出奇,他們連自己的電郵也懶得看),「用人家的東西,就給人家 credit」這基本的規矩不會不知道吧。
唔係既,呢條係話如果佢地改動GPL程式(譬如WP)的源碼,就一定要在改動部份註明該改動及日期,呢的註明係寫係源碼入面的,佢地有冇做到就要睇佢地的php code先知。
TUP 的Admin David 於今午的回覆是這樣的:
群盟說謊! 到現在, 不論是 TUP 還是080.net, 用了WP的頁面都沒有加上WP的連結!
至少, 我找不到…… 😡