網路城邦
上一篇 回創作列表 下一篇   字體:
機會教育:從中華民國總統府網站被發現 XSS 漏洞講起
2009/09/01 20:18:21瀏覽1833|回應1|推薦1

我也來順便機會教育一番,現在由於寫作的平台方便,所以許多人常用一些似是而非的言論來混淆視聽,欺騙無知的大眾。
這篇文章一開始就用了一些先入為主的觀念來寫作文章。先在文章說:

總統府網站新聞稿的頁面使用了非常糟糕的設計法,導致可以讓頁面插入任意標籤(Tag Injection)

然後又自打嘴巴的說:

雖然無法直接插入 script 標籤,但是至少可以插入 IFRAME 嵌入任意網頁,而且 IFRAME 只要加上 onload 屬性就等於可以執行 JavaScript 了,危險程度「極高」!

如果危險程度極高,為什麼近十年來,比較知道的入侵事件只有兩起(一起是建中學生,另一起就是這次事件),難道不知道這十年間對岸的網軍處心積慮的想要攻下
總統府換上他們的五星旗,但十年來有那次成功呢?

評論中寫道:

此網站可能引發的潛在危機包括:

   Clickjacking
      使用者會遭殃,連上去的人點擊新聞時可能會連到惡意網站!
     
==>此次偽XSS純粹屬於網友自High的行為,XSS碼並未進到系統的資料庫,何來有連上去點擊新聞時可能會連到惡意網站之說?(真是危言聳聽,太誇張了) 就像是上了釣魚網站填下你的個資一樣,跟原本的網站有關係嗎?你會因為你上了釣魚網站,然後去責怪原網站?
  
Cookie hijacking 或 Session hijacking
   如果總統府網站的後台跟前台同一個網址,而且後台管理者剛好登入,又好奇點選惡意連結的話,我看整個總統府網站就玩完了,這時不上各大媒體才怪。

==>連第一點都不成立了,何來第二點之說。
  
Social engineering ( 社交工程 )
   透過惡意郵件誘騙總統府網站的管理者點擊惡意連結。

==>即便是這樣,不知道有防火牆及限制IP連線登入的設定嗎?更何況總統府使用的是專線。騙外人可以,騙專家只會被當成笑話來看。
  
Phishing ( 釣魚式攻擊 )
   透過「假的」總統府網站讓好奇的鄉民連到假個總統府網站。

==>這個沒發生這次偽XSS事件,釣魚網站也是到處都有,硬要牽強的扯上關係,更是不知道要怎麼說了。跟XSS一點關係都沒有。

除此之外,我以 2007 年 OWASP 公佈的 Web 十大弱點, 分析總統府網站還有以下問題存在:
A1 - Cross Site Scripting (XSS)
   這是這次網友找到的弱點,也是 OWASP Top 10 的榜首,也已經高居好多年榜首了!

==>如果硬要說這次事件叫XSS,我也是可以同意,不過還是老話一句,資料並未進到資料庫,網站也未被傷害。勉強只能稱為:偽XSS。
  
A2 - Injection Flaws  ( SQL Injection )
   有圖有真相 (這實在是太誇張了) ,這很明顯是 MySQL 所發出的錯誤訊息
  
==>然後呢?你有用這個漏洞攻進資料庫嗎?根本就不叫SQL Injection....

A4 - Insecure Direct Object Reference
   隨便打一個錯誤的參數,該網站就乖乖告訴我他的資料表名稱 ( 還是覺得太扯了 ) 

==>我也覺得你很扯,如果是漏洞資料庫資料早就被改的亂七八糟了,還撐到快十年。相關文件還有整個資料庫schema勒!你知道資料庫表格名稱有啥關係?
   重要的是有被入侵嗎?

A5 - Cross Site Request Forgery (CSRF)
   可以插入 iframe 的話,CSRF 大概就算成立了。

==>老哥,自己都附鍊結了,怎麼不去仔細看看CSRF的內容呢?還大概可以成立勒....扯爆了~  
  
A6 - Information Leakage and Improper Error Handling
   他都把錯誤訊息一五一十的告知使用者了,這條總該算成立了吧。

==>所以你知道錯誤訊息就可以入侵一個網站啦?  
  
A10 - Failure to Restrict URL Access
   該網站用的是 Linux + Apache + PHP + MySQL,預設並沒辦法限制目錄存取,不像 ASP.NET 那麼容易設定,一般來說如果程式沒有寫好,只要被猜到網址就進去了。

==>進到哪裡去?隨便羅織罪名應該是本篇的精華。如果每個網站都這麼好進去,駭客們也不用整天研究了!連駭客都要做功課,加油喔!?  
  
OWASP Top 10 在總統府就包辦 6 項,這真是一場給 Web 開發人員絕佳的機會教育阿!
==>給誰的機會教育呀?仔細想想

依我個人的經驗判斷,該總統府網站可能有以下特點:

採用 PHP 程式語言,版本竟然是 4.3.2 版,實在太舊太舊了!
   這種古董級的 PHP 漏洞少說也上百個,而且版本號還沒隱藏,這簡直是駭客的春藥。
   ==>勸你還是去買威而鋼吃好了。中華民國總統府網站光是名字就不知道讓對岸的網軍發情幾年了,骨董級有骨董級的好處,善用工具骨董也是可以撐很久。
     
   這也代表該網站已經年久失修了,應該是多年前完成的案子,搞不好連維護廠商都沒了。
   ==>謝謝!這個網站也快十年了,維護網站的廠商還在。不然怎麼可能在短短的兩個小時內封掉偽XSS呢?還是半夜1點57分完成。比DEll快吧!這證明這個網站24小時都有人在監控。寫年久失修前,應該要看一下這次的反應時間吧!至少比Dell反應快許多~
   
   從網址列判斷這裡的 PHP 應該是以 CGI 的方式運作,非常吃系統資源,要是被 DoS 一下網站應該就會關了。
   ==>看到這個我笑了快十分鐘,不知道要如何回也。你都知道系統是Linux + Apache 了,還以CGI方式運作!?無知道不行,看來你只會用windows系統+php 以CGI方式開發程式。
      還Dos勒,關Dos作業系統啥關係?DDoS啦!如果這麼好攻,快十年了怎麼沒看過總統府網站被以DDoS方式強迫停站?唉~
  
   採用 AIX 或 Linux 或 FreeBSD 或 Solaris 平台,以 PHP 的版本研判,OS 版本也不會多新才對。
   ==>版本舊又如何?又是一個只會一味追求新版本卻又說不出舊版本哪裡有問題。
  
   採用 Apache 網站伺服器 ( 版本號已被隱藏,這點值得鼓勵 )
   ==>有啥好鼓勵!?預設就是關閉的,看來你對系統一點了解都沒。
  
   以 PHP 的版本研判,Apache 版本也不會多新才對。
   ==>然後呢?一味說舊,跟XSS有啥關係。
  
   採用 MySQL 資料庫,目前好像只有 MySQL 有 limit 語法,從錯誤訊息就看的出來,以 PHP 的版本研判,MySQL 版本也不會多新才對。
   ==>只有Mysql有嗎?去查一下吧,不要你只認識Mysql就說只有他有。
  
   我個人寫 PHP 的經驗約有 9 年,我知道 PHP 很容易上手,開發網站也很快,但就是缺乏工具與架構,雖然目前市面上已經有不少工具與架構可選擇,但舊有的網站還是很多,很難一口氣修正所有的缺點,相對的網站弱點也是非常多,這是個難解的問題,需要時間與金錢才能徹底解決。
   ==>這個網站的程式快跟你寫PHP的時間差不多長了也。

給 總統府網站相關人員:

第一步:先關閉網站
  ==>關閉作啥?跟全世界說總統府倒站啦!?總統府的人應該丟不起這個面子!
 
第二步:修正網站「已知」的弱點後再開站  [ 備註: 今天早上總統府網站已經緊急修復該弱點了 ]

第三步:修正網站「未知」的弱點,透過「原始碼檢測軟體」找出所有弱點並一次修復對知名網站來說,這是最經濟實惠的策略!
        相信總統府的網站一定有防火牆設備,但請不要花大錢再買更高階的防火牆了,程式碼安全更重要。
  ==>所以好的程式可以抵擋DDoS攻擊就對了,你一直自己打自己的嘴巴,我都不太好意思鞭你了說...
       
第四步:找到對的廠商將網站改版總統府網站應該不複雜,重新製作一遍不用幾個月就完成了。
  ==>你又知道不複雜?完全隨便亂猜,不用幾個月?現在再重新招標你快去標吧。
 
改版不代表「安全」,先有安全的常識與觀念才會有安全的網站。建議汰換現有的所有軟硬體,連作業系統也要升級。
  ==>我真的很難改變你的腦袋也....新的東西沒有新漏洞?

給 總統府網站的建置廠商或系統管理者:

隱藏所有軟體版本資訊 ( Linux, Apahce, MySQL, PHP, … )
  ==>大哥,有些東西不是你說想隱藏就能隱藏的,我看你這些措施八成是從哪個廠商文章抄來的(對不起,這點我也是用猜的。不過公堂之上,猜一下應該無罪吧 XD)
 
隨時更新作業系統、網站伺服器、資料庫伺服器、PHP 的版本,任何已知的patch都需要定時更新
 
不要信任所有從 Browser 端傳來的資料,對所有網路輸入的參數進行檢核 ( QueryString, POST Data, Cookies, All HTTP Headers )

對所有輸出到網頁的資料進行 HTML Encode 或 URL Encode

隱藏所有可能會揭露網站技術細節的資訊

將前、後台區分兩個不同的網域(Domain) => 不是 Active Directory 那種網域喔!

這篇文章原本昨天晚上就寫好了,想說等等看今天早上問題會不會修復,不然若文章發出去可能就有一堆人想 try 總統府網站,那我就是罪人了。
  ==>哈哈~ 可能你昨天文章還沒寫好,網站漏洞就補起來了!還罪人勒.... 

且從弱點被發現到解決的時間雖然不到 12 小時,但漏洞存在的時間確實有很長一段時間
  ==>我看你八成10點不到就去睡了,根本1:57分就解決了,還拖到12個小時勒。

通篇文章,看起來就是一個防護廠商的工程師(不知道算不算,也許是sales)寫的,既不夠專業,更談不上有創新見解,只是把一些資安的資料抓來套在總統府網站上!文章有先入為主的觀念,又不想深入去解析相關名詞的涵意,大概人云亦云罷了。機會教育應該要給的是原作者。

原文章來自於:http://blog.miniasp.com/post/2009/08/Suggest-add-www-president-gov-tw-to-Restricted-sited.aspx

( 時事評論政治 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=justgps&aid=3278700

 回應文章

天秤女佳佳
等級:4
留言加入好友
總統府網站!!!
2010/07/17 15:10
 厲害厲害
寫的很詳細


☆若您要找人:做網頁寫程式、學電腦、中毒重灌重組OS、出通告~皆可找我☆
㊣正職做資訊,兼職在演戲㊣(做網頁寫程式的工程師~俗稱「網站工人」 & 演員)
★我的資料在佳佳的窩http://janet1.myweb.hinet.net/
★佳佳電腦工作室,有case請找我們做