天天看點

動網論壇入侵之插件篇

本文為非技術文章,屬搞笑網文,以博君一笑!

------------------以下是一些廢話,沒興趣的人直接看最後幾段-----------

版權聲明:可以任意轉載,轉載時請務必标明文章原始出處、作者及本聲明http://www.upulife.com

關于動網論壇入侵的文章很多,由于對asp不感興趣是以一直不曾嘗試過做些什麼,其實在各位的努力下動網的安全性已經提高了很多了,版本也已經發展到7.0.0 sp2了,入侵也不是那麼簡單了。下文通過動網一個比較常用的插件為入口….呵呵,我也有幸插一腳!

故事發生在公元前不久,公司内部論壇開了個什麼寵物領養的功能,上至公司老總下到像我這樣的草根層,都興緻勃勃,由于我不喜歡灌水,是以社群币很少,看着那些高等級的人,心裡實是不爽,于是想找點另類的方法來提高等級,于是乎曆史上多了這麼段小插曲……

公司論壇裝的是大名鼎鼎的DVBBS,上safechina.net搜了一把沒發現在方面的内容,看來現在比以前是好很多了,不就是要社群币嘛嘛,從哪裡來?一.發貼,二…..呵呵,銀行啊!走搶銀行去!!!論壇有個社群銀行,說不定有突破呢!上dvbbs.net看了一下沒有這功能,看來是第三方廠商的插件了(竊笑),看來希望大多了,慣性的找些有輸入框的地方,先看到的是“事件”,原來是銀行曆史記錄的查詢,照例輸入一個單引号’,呵呵,出錯了:列印出:user=’’’ order by ID 沒有過濾,輸入1’ or user name like’%a% 結果正确。可惜是JET DB驅動,一般是ACCESS了,累,既然這麼基本的輸入過濾都沒做,那麼看來作者的安全意識不是很高了,反正我隻要錢,不用這麼累,找找有沒能直接update的,抽煙ing….,呵呵,銀行事務,存款,取款,轉賬,貸款每個測試一下,發現隻有轉賬中的目标使用者名能輸入字元,其它都限制隻能輸入數字了,嘿嘿,這個功能肯定update使用者的金錢,又是單引号’,又出錯了,直覺告訴我能行了,于是轉1塊錢給 a’ or username=’b,送出….,錯誤資訊,郁悶ing….,看看b使用者,多了一塊錢,a使用者一分錢都沒少(明白了嗎?我的一塊錢變成兩塊了,如果你多幾個 or 就多更多了,其實它的語句就是update aa set money=money+xxx where username=’$username’),hahaha,五分鐘後,我就擁有了500萬!!呵呵,這可是我這輩子第一次搶銀行啊(要不你還能活着在這廢話),如果現實中我能有這麼多錢該多好啊^_^

好了,我目的也達到了,要做别的什麼的話也可能隻是時間的問題,我沒興趣也沒時間去做那些了,不過,我google了一下,發現用這個插件的BBS還真是不少,本來也想看看它源代碼,但是找了半天沒找到,是以我也不知道是誰開發的,也沒法發什麼BUG報告了,算了!希望沒人做什麼壞事吧!!

----------------------------------------本文我所想說的------------------

其實上面的都是些無聊的廢話,任何一個知道SQL注入的人都能輕易做到,我想說的就是所謂的“系統安全”,其實系統安全是一個浩大的工程,從硬體到系統再到應用,任何一個環節出了問題,都可能導緻全盤皆輸(這就是所謂的木桶理論),正如許多講述網絡安全的書籍所說的:“無論你内部網絡安全措施做得如何好,可能都頂不過一個使用者的撥号。”呵呵,經典!這個例子中,硬體做得很好,系統也做得很好了,而且動網也做得很不錯了,可是插件沒有做好,是以整個系統都沒做好!這不僅僅是管理者的問題,更是開發者的問題,其實這裡也“驗證”了一條網絡安全“原則”:最少服務原則。

有人說:開源需要勇氣!

我覺得,開源需要勇氣,更需要責任!做系統,開發者不是寫完一個程式,做完一個功能就可以了。你還要負起作為開發者的責任,也許在你的license中已經寫得很清楚了:本人不對由于使用本系統而引起的任何問題負責。但是這不是你所應該做的,不是一名合格的程式員所應該做的,既然你做了,你就對這一切負有責任,即使别人的系統被毀了對你沒影響,那麼你也應該覺得羞愧,也應該在午夜夢回時感到驚心,因為這是你的責任。

不僅僅開源系統,免費系統,你所做的任何事情都如此,不要說我不懂安全,不要說這不是我的特長,因為還有更多比你更不懂得安全的人,還有更多比你更不懂得計算機、不懂得網絡的人們,在使用你所公布的東西。你不覺得你對這一切負有責任嗎?文人中都有”文責自負”的說法,他們能對自己所寫的那些虛無缥缈的東西擔負起自己的責任,但是作為一個開發人員,一個程式員為什麼對自己生産的看得見,摸得着的東西說與本人無關呢?這絕不是我們應該做的!醒醒吧!!做一個能把信送給加西亞的人(《緻加西亞的一封信》)

回頭看看,不知不覺沒想到上文竟成了關于責任的說教了,其實作為一個有獨立人格的人就應該做到這些,應該對自己的行為負責,這也是我最近感觸深刻的東西,也許你做一個BBS并不會給使用者帶來什麼災難性後果,換個角度想想,如果你做的是一個事關企業生存攸關的核心業務系統呢?比如電信計費、生産控制、更甚于飛彈發射系統呢?不要告訴我你到時候會做得更好,我不相信,也沒人會相信的!

從小事做起,從現在做起(别說我土),做個對自己,對自己的程式,自己的行為負責的人。

做一個能把信送給加西亞的人!!

Hjleochen

2004-6-10

_____________________________

後:這篇短文寫了很久了,一直沒想要貼出來,那段時間我寫的代碼出了很多問題,非常郁悶,由感而發,以警示自己。

@Copyright All Reserved By CFNET 2000-2004

http://www.upulife.com

[email protected]

繼續閱讀