【問題】不知怎麼被駭的?



贊助商連結


b90220208
2006-06-24, 07:49 PM
http://studyhome.homedns.org/GUESTBOOK/vlbook/index.php
此一連結是我被 Hacked 的留言版,由於不知那兒有安全上的漏洞或疏失,
有人知道他是用何方法? 能否請教各位提供一些意見?



ps.
guestbook 程式無使用 database, 使用純文字檔儲存留言資訊.
source code: http://vlbook.com/downloads/vlbook_1.02.zip

贊助商連結


esjustin
2006-06-24, 08:18 PM
如果有IP紀錄功能,查查看吧(不過通常Hacker都會刪除):D

titanfu
2006-06-24, 10:04 PM
http://studyhome.homedns.org/GUESTBOOK/vlbook/index.php
此一連結是我被 Hacked 的留言版,由於不知那兒有安全上的漏洞或疏失,
有人知道他是用何方法? 能否請教各位提供一些意見?



ps.
guestbook 程式無使用 database, 使用純文字檔儲存留言資訊.
source code: http://vlbook.com/downloads/vlbook_1.02.zip


隨便就破了...

你輸入下列文字看看~
============================
你沒有過濾Html碼...還有Script.
<script>alert('隨意插入Javascript');</script>
記得留言要顯示之前 htmlencode..
============================
那篇我回覆的..
可用的javascript可不只如此...
先去修正bug吧~

有問題可以來我的網站跟我討論看看~
我想到才來這邊逛逛的 =.="
我也是Web Developer..
MyWeb: http://www.my543.com.tw/Personal/titanfu/

b90220208
2006-06-25, 10:51 AM
感謝! :circle:

我看了一下 log file, 以下是該 hacker 的資訊
時間: 2006-06-24 01:53:06
ip: 201.249.44.149


另外,
我曉我的留言版之 "回覆程式" 沒有過濾 html tag 的機制
但該人士卻是以 "新貼留言" 的方式辦到的 --> 而我的新留言程式本就已有過濾機制,且也已試過(不然您可試).....所以我才怕怕


另外就是,該人士原先還有另偏留言(但已被我刪除),
內容亦是藉由 javascript 來 alert 出 '0x0h ...' 什麼的, 感覺好像是記憶體的位址,不知這是否算是有用的線索??

titanfu
2006-06-25, 04:31 PM
感謝! :circle:

我看了一下 log file, 以下是該 hacker 的資訊
時間: 2006-06-24 01:53:06
ip: 201.249.44.149


另外,
我曉我的留言版之 "回覆程式" 沒有過濾 html tag 的機制
但該人士卻是以 "新貼留言" 的方式辦到的 --> 而我的新留言程式本就已有過濾機制,且也已試過(不然您可試).....所以我才怕怕


另外就是,該人士原先還有另偏留言(但已被我刪除),
內容亦是藉由 javascript 來 alert 出 '0x0h ...' 什麼的, 感覺好像是記憶體的位址,不知這是否算是有用的線索??


我去測試了~
新貼留言程式~~ 一樣沒有過濾...我ㄧ樣alert出訊息喔~
ㄧ樣可以插入javascript....
開放Html Editor...就要很小心這類型的問題~
要特別處理過濾過這些字串.....尤其是<script>這東西...

至於0x0h 在javascript印象應該是沒多大意義...

b90220208
2006-06-26, 09:26 AM
:confused: 不知您的測試環境如何?

我自己測時發現一個奇怪的現象,當我 BROWSER(ie) 以 UTF-8 瀏覽並留言時並無問題,也就是有過濾掉 html tag .

但當我強制 BROWSER 以 BIG5 瀏覽並留言時,則過濾機制失敗.....
所以我只好再加上比對機制,只要一比對到字串為:
'<script>' or '</script>' 就禁止留言

.....有人知曉這是何原因否?

b90220208
2006-06-27, 09:45 AM
[補充]
這是 vlbook 1.02 程式在 XSS 方面的漏洞, http://www.securityfocus.com/bid/18618/info


另一個我不解處就是:
該 vlbook 我翻遍整個 source code 就是找不到任何過濾 html tag 機制! 頂多就是利用 javascript 於前端留言時檢查欄位有無空白及後端 php 作"同樣"之檢查而已.....怪的是, 那為何留言時所輸入於 textarea 中的 < 跟 > 都自動被取代成 &lt; 跟 &gt; 呢 ?? 難道是 <textarea> 的特異功能嗎.....

titanfu
2006-06-27, 11:16 PM
[補充]
這是 vlbook 1.02 程式在 XSS 方面的漏洞, http://www.securityfocus.com/bid/18618/info


另一個我不解處就是:
該 vlbook 我翻遍整個 source code 就是找不到任何過濾 html tag 機制! 頂多就是利用 javascript 於前端留言時檢查欄位有無空白及後端 php 作"同樣"之檢查而已.....怪的是, 那為何留言時所輸入於 textarea 中的 < 跟 > 都自動被取代成 &lt; 跟 &gt; 呢 ?? 難道是 <textarea> 的特異功能嗎.....

不管怎樣...在後端程式一定要強制檢查輸入的內容~
javascript前端檢查只是簡單防止...有心的人...可以略過前端檢查..
所以一定要在後端檢查輸入的內容~

尤其網站要提供Html編輯器的時候就要特別小心(就算你沒開放原始碼編輯..ㄧ樣沒用)...
我曾經測過幾個網站....發表文章、留言、回覆 的情況下某些項目可以惡意插入javascript碼..(純測試而已)...

下面並不是用原始碼編輯插入javascript...有特殊方法..

你的..會掛..可以插入javascript..(你應該是用 HtmlArea Editor)
天空..會掛..可以插入javascript..(Fckeditor)
無名..會掛..可以插入javascript..(Fckeditor)
My543...檢查比較嚴謹...插不進去~(Fckeditor)
Yahoo...檢查比較嚴謹...插不進去~(自家的吧..我看不出來)
Msn space...檢查比較嚴謹...插不進去~(自家的吧..我看不出來..但又有點像HtmlArea.. -_-)

原則上 你在程式後端最好用 RegEXP 來過濾一些不該有的tag...
嚴謹一點的就像是yahoo blog...只提供部分的html屬性....它有說明..提供的屬性...其餘他不接受...

琥珀
2006-06-27, 11:55 PM
'>' 和 '<' 是不能直接使用的符號?不然要如何解釋 HTML 檔案?

b90220208
2006-06-28, 09:07 AM
Thanks.


'>' 和 '<' 是不能直接使用的符號?不然要如何解釋 HTML 檔案?
意思是 uesr 在 <textarea> 中所輸入的 '<' 與 '>' 本就會被自動轉換成 &lt; 跟 &gt; 嗎?


回 titanfu :
我已經改良過,不知可否麻煩您再試一次?
關於 "不是用原始碼編輯插入javascript...有特殊方法" ,可以教一下嗎?