請不要因為沒吃過豬肉,也沒見過豬跑,就否認這世界上有豬的存在;更沒必要國為2007是豬年一下子變得跟豬一樣“可愛”
開源最原始的說法就是開放源代碼,而黑客已經是IT業乃至社會大眾都耳熟能詳的名詞了,就連上學3年級的小強都經常信誓旦旦的說:“我長大要做一名黑客!”。全世界的黑客非常多,因為性質不同可以細化成CRACKER或HACKER,中國也不例外。有一點不同的是,中國存在著大量的“黑客”----一群拿著別人做的工具去掃描別留下的各種錯誤的黑心客人。
開源與黑客有什么關系呢?Linux因為開源了,所以其初最設計上的一些安全問題很快就被業內所知曉,代碼中的Bug很快被修復,而其中涉及到安全上的問題解決基本上來源于黑客高手的貢獻。而Windows沒有開源,因此他的漏洞存在概率大得多,因此中國的“黑客”們就會不厭其煩的用他來練手?! ?/div>

這個被“黑”的系統是EasyJF發布的一個EasyJWeb及EasyDBO的應用示例程序,原型是一個只有兩臺電腦、三個人、一個操作人員的小工廠的用在局域網內部的訂銷管理系統。我參與過這個示例的代碼書寫,用了幾天的時間,發布在網上的示例應用是最初版,那個小廠的正版改了非常多的東西。本次的“黑客”很輕松就發現了原來那個輸入產品標題的input文本框中盡然可以輸入<script>標簽,于是在里面輸入了一個<script>while(true)alert('垃圾程序')<script>這樣的標題,于是當別人看示例的時候,顯示這個標題的時候就出現了上圖的被“黑”現象。
這讓我想起這次回農村老家王大爺給我講的一件事。他說咱村路邊上金小二家的狗非常聰明,專咬肩上挑著重擔子的人。狗見了陌生人要吼著并做聲勢這不奇怪,而金小二家的狗不一樣,因為凡肩上有擔子的人,見狗來了都不好把擔子放下來(因為難得重新抬上肩),甚至沒發作動作嚇唬它,金小二家的狗看出了這一點,所以凡是沒帶多少東西的路人,他頂多在幾迷以外大吼幾聲,而遇到肩上有重擔的人,他必跑上來咬。因此,后來那些凡是挑了擔子的,過金小二家門口時,都需要一個空手的人陪著。
最近,“春迷”們因為我的一篇文章突然對做黑客產生了興趣,由于EasyJF所犯下的“低級錯誤”,于是他們輕松輕松就把EasyJF開源的一個簡單示例應用http://asp.easyjf.com給“黑”掉了,這是今天早上上班我看到情況,如下圖所示:

這個被“黑”的系統是EasyJF發布的一個EasyJWeb及EasyDBO的應用示例程序,原型是一個只有兩臺電腦、三個人、一個操作人員的小工廠的用在局域網內部的訂銷管理系統。我參與過這個示例的代碼書寫,用了幾天的時間,發布在網上的示例應用是最初版,那個小廠的正版改了非常多的東西。本次的“黑客”很輕松就發現了原來那個輸入產品標題的input文本框中盡然可以輸入<script>標簽,于是在里面輸入了一個<script>while(true)alert('垃圾程序')<script>這樣的標題,于是當別人看示例的時候,顯示這個標題的時候就出現了上圖的被“黑”現象。
這讓我想起這次回農村老家王大爺給我講的一件事。他說咱村路邊上金小二家的狗非常聰明,專咬肩上挑著重擔子的人。狗見了陌生人要吼著并做聲勢這不奇怪,而金小二家的狗不一樣,因為凡肩上有擔子的人,見狗來了都不好把擔子放下來(因為難得重新抬上肩),甚至沒發作動作嚇唬它,金小二家的狗看出了這一點,所以凡是沒帶多少東西的路人,他頂多在幾迷以外大吼幾聲,而遇到肩上有重擔的人,他必跑上來咬。因此,后來那些凡是挑了擔子的,過金小二家門口時,都需要一個空手的人陪著。
?
就像因為有太多“黑客”存在,我們在做任何的系統的時候,盡管你的系統定位是在局域網、或者單機、甚至只是簡單的演示,你都需要配一個專門負責安全檢查的人,以防“黑客”們的“入侵”。
當然,EasyJF開源輕易發布這樣存在著“嚴重”、“低級別”安全漏洞的源代碼是應該批評的,作為成員之一我也為此感到慚愧,同時作為完全開源的東西也非常希望大家能更友善的多提出類似的漏洞、或者親自來修補。相信經歷這樣的事兒大家也很提高了警惕,就像咱村里的人都對金小二家的那只聰明的狗格外重視一樣。
不過想想咱村那只狗也非??蓯?,我突發奇想下次我要是回去,他還在的話。我一定挑一擔子棉花,然后拿一跟鐵棍做拐,等他上來的時候用鐵棍逗它玩玩。如此想來,“春迷”式的“黑客”們也還是很可愛的。
不過,還是奉勸“春迷”小朋友們:請不要因為沒吃過豬肉,也沒見過豬跑,就否認這世界上有豬的存在;更沒必要國為2007是豬年一下子變得跟豬一樣“可愛”。
不過,還是奉勸“春迷”小朋友們:請不要因為沒吃過豬肉,也沒見過豬跑,就否認這世界上有豬的存在;更沒必要國為2007是豬年一下子變得跟豬一樣“可愛”。
?
最后,帖出EasyJF的netgod同學發出來的部分防“跨站腳本漏洞”入侵的相關代碼,希望大家小心“黑客”!
?<script>alert('easyjf');</script>
?<IMG SRC=javascript:alert('easyjf')>
?<BODY BACKGROUND="javascript:alert('easyjf')">
?<BODY ONLOAD=alert('easyjf')>
?<BGSOUND SRC="javascript:alert('easyjf');">
?<br size="&{alert('easyjf')}">
?<LAYER SRC=">
?<TABLE BACKGROUND="javascript:alert('easyjf')">
?<DIV STYLE="background-image: url(javascript:alert('easyjf'))">
?<XML SRC="javascript:alert('easyjf');">?
?<IMG SRC=javascript:alert('easyjf')>
?<BODY BACKGROUND="javascript:alert('easyjf')">
?<BODY ONLOAD=alert('easyjf')>
?<BGSOUND SRC="javascript:alert('easyjf');">
?<br size="&{alert('easyjf')}">
?<LAYER SRC=">
?<TABLE BACKGROUND="javascript:alert('easyjf')">
?<DIV STYLE="background-image: url(javascript:alert('easyjf'))">
?<XML SRC="javascript:alert('easyjf');">?
?以上多種形式的跨站腳本都會啟動跨站注入,并且可以運行到JSP語句危害到服務器!
關于這種漏洞,只需要簡單的把可能包含的類似注入的信息輸入框的信息屏閉掉,對于B/S應用來說,最簡單的辦法之一是直接替換掉“<”及其unicode碼%3c。如下面的形式:
?public static String eliminateScript(String value)
? {??
?? return value.replaceAll("<","<").replaceAll("%3c", "<");
?}
? {??
?? return value.replaceAll("<","<").replaceAll("%3c", "<");
?}
當然,對于要允許輸入html標簽的表單,則不能像上面這樣處理,需要逐一處理,其它方法還有很多,只要小心注意就是了,就像咱村挑著擔子的農民叔叔路過金小二家的門口時一樣。?
(本文作者:EasyJF開源團隊??大峽 歡迎轉載,轉載請保留作者聲明,謝謝!)
(本文作者:EasyJF開源團隊??大峽 歡迎轉載,轉載請保留作者聲明,謝謝!)
FeedBack:
@ncindy
呵呵,很久沒有來這里回帖了,是誰做的看誰幸災樂禍就知道了。有興趣,可以看看在我blog里面“春迷”們的留言,http://blog.csdn.net/easyjf/archive/2007/01/09/1477793.aspx
既然“春迷”小朋友們喜歡開這種開玩笑,何嘗又不讓我說呢。呵呵,“春迷”們的情況怎么樣,可以去看看我以前在blogjava上的blog的情況就知道。http://www.aygfsteel.com/daxia
當然也可以參考看一下“春迷”表演的“血案展示與現場花絮實錄”。http://blog.csdn.net/easyjf/archive/2006/07/14/921746.aspx
我可以對我所寫的每一篇文章,所做的每一件事情負責,希望“春迷”能對自己所做的事情負責。
最后感謝支持我的朋友,也感謝反對我的朋友,更感謝如樓上某些脫去馬甲來懷疑我人品的朋友,因為是你們讓我不斷在進步。 回復 更多評論
呵呵,很久沒有來這里回帖了,是誰做的看誰幸災樂禍就知道了。有興趣,可以看看在我blog里面“春迷”們的留言,http://blog.csdn.net/easyjf/archive/2007/01/09/1477793.aspx
既然“春迷”小朋友們喜歡開這種開玩笑,何嘗又不讓我說呢。呵呵,“春迷”們的情況怎么樣,可以去看看我以前在blogjava上的blog的情況就知道。http://www.aygfsteel.com/daxia
當然也可以參考看一下“春迷”表演的“血案展示與現場花絮實錄”。http://blog.csdn.net/easyjf/archive/2006/07/14/921746.aspx
我可以對我所寫的每一篇文章,所做的每一件事情負責,希望“春迷”能對自己所做的事情負責。
最后感謝支持我的朋友,也感謝反對我的朋友,更感謝如樓上某些脫去馬甲來懷疑我人品的朋友,因為是你們讓我不斷在進步。 回復 更多評論
最后摘一下我blog后面的留言!http://blog.csdn.net/easyjf/archive/2007/01/09/1477793.aspx
extraleo 發表于2007-01-10 21:29:02 IP: 121.32.176.*
大 蝦們,好好去看看你們的系統吧
http://asp.easyjf.com/index.ejf
一下就被人 搞 死了!
好好去看看為什么吧!
年輕人!多干點實事!不要再丟人現眼了
回復 更多評論
extraleo 發表于2007-01-10 21:29:02 IP: 121.32.176.*
大 蝦們,好好去看看你們的系統吧
http://asp.easyjf.com/index.ejf
一下就被人 搞 死了!
好好去看看為什么吧!
年輕人!多干點實事!不要再丟人現眼了
回復 更多評論
在blog上我也回了一下:
easyjf 發表于2007-01-09 17:49:01 IP: 222.183.101.*
呵呵,喜歡熱鬧的“春 迷”們又來了哈。上次事件寒 晴 天同學通過查 ip揭了某些人傷 疤,剛才我隨便查了一下,果不其然。“春 迷”們再小,也應該算是成 年人 了嘛,這種弱 智的誤導大眾的方法請下次使用的時候表現得技術含量高一點點。謝謝
zhanlin911 發表于2007-01-09 14:52:08 IP: 218.20.227.*
Sa B
218.20.227.*
廣東省廣州市越秀區 電信ADSL
extraleo 發表于2007-01-09 16:11:46 IP: 61.144.19.*
樓主是剛剛畢業的吧?
61.144.19.*
廣東省廣州市越秀區 電信ADSL
然后再看看在2006年的某年某月某日:
cac 發表于2006-07-14 13:42:00 IP: 219.136.9.*
219.136.9.*
廣東省廣州市 電信(越秀區)
springer 發表于2006-07-14 10:34:00 IP: 59.42.126.*
59.42.126.*
廣東省廣州市 電信ADSL
當然還有某些同學的名字我就不一一翻出來給大家看了,都2007了,下次表演的時候找一個好的代理。
回復 更多評論
easyjf 發表于2007-01-09 17:49:01 IP: 222.183.101.*
呵呵,喜歡熱鬧的“春 迷”們又來了哈。上次事件寒 晴 天同學通過查 ip揭了某些人傷 疤,剛才我隨便查了一下,果不其然。“春 迷”們再小,也應該算是成 年人 了嘛,這種弱 智的誤導大眾的方法請下次使用的時候表現得技術含量高一點點。謝謝
zhanlin911 發表于2007-01-09 14:52:08 IP: 218.20.227.*
Sa B
218.20.227.*
廣東省廣州市越秀區 電信ADSL
extraleo 發表于2007-01-09 16:11:46 IP: 61.144.19.*
樓主是剛剛畢業的吧?
61.144.19.*
廣東省廣州市越秀區 電信ADSL
然后再看看在2006年的某年某月某日:
cac 發表于2006-07-14 13:42:00 IP: 219.136.9.*
219.136.9.*
廣東省廣州市 電信(越秀區)
springer 發表于2006-07-14 10:34:00 IP: 59.42.126.*
59.42.126.*
廣東省廣州市 電信ADSL
當然還有某些同學的名字我就不一一翻出來給大家看了,都2007了,下次表演的時候找一個好的代理。
回復 更多評論