[經驗]步步逼近的弱點掃描

相對於一般公司客戶較重視功能有沒有完成,公家機關的案子則是要通過弱點掃描後才能上線,筆者曾經手過幾次公家機關的案子,稍微跟大家分享一下心得,也許某些地方講的不完全正確,也請高手多多提點~

第一次是同事負責的案子,政府有提供VM環境,已安裝Windows Server和SQL Server,在上線前期,先送程式碼掃描,便有聽他抱怨過掃描後需要改一堆地方,當時他是使用ASP.NET Web Forms,並且是短期的案子,時間到後就會下線。弱點掃描則沒聽說有什麼問題,上線後交接給我負責,但即使有更新程式,也不用重新送掃,感覺似乎還好,一直到系統下線都相安無事。

第二次是我帶另一位新人同事負責的,屬於長期使用的系統,一樣佈署在政府VM內,使用Apache、PHP 7,開發完成後,並沒有像第一次進行程式碼掃描,上線後剛開始也沒有太大問題,問題在於之後,因為Apache是開源的,並且版本也會定期更新,殊不知弱點掃描也是定期進行。

過沒2個月,寄來了一封信,說明我們使用的Apache版本有已知弱點,需要在期限內完成升級,本來不是太在意,那我就升級吧,又過一陣子,同樣的信又出現了,這時我想糟了個糕,這件事情看來要在系統生命週期內都要做了,未來要小心這個坑…

第三次的案子,由於當時我的技能數都點在PHP,所以還是以該語言開發,但是Apache這個坑我不踩了,我特別改用內建的IIS,使用FastCGI來執行PHP,為了這個還特別研究原本.htaccess內的規則,要如何使用IIS的UrlRewiter實現,最後一切準備就緒,順利開發完成,也上線了。

心裡暗自竊喜,這次避開了伺服器環境的坑,真是太好了,沒多久寄來了一封信,使用的PHP版本有某某已知弱點,請更新到新版,瞬間覺得臉腫腫的,由於PHP更新的較慢,所以等到出新版後,才收到弱點掃描的通知,慢了一步啊~

總結這三次的經驗,什麼java或是PHP等其他非微軟的方案都不適合,因為合約內有一條,廠商有義務維持所有安裝軟體為最新版本,若額外安裝環境,都需要花費心力去維持新版。若是使用內建IIS可運行的微軟Framework來開發,可以完美規避掉弱點掃描這一題,因為環境由政府提供,補丁他們會打,版本他們會升,若無法升級,也是內部問題,跟廠商沒關係。

只能說當時我還沒點到ASP.NET MVC的技能樹,已盡量做出最好的選擇了。建議有接到政府專案,並且需要放置於他們VM內的開發者,最好使用微軟解決方案來開發,避免陷入無限升級的迴圈,萬一該版本已無更新,例如PHP 5.6,需要升大版號7的話,相容性又是另外一個議題了。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

Create a website or blog at WordPress.com

向上 ↑

<span>%d</span> 位部落客按了讚: