在Boo-it 之中。因為是以Web 技術去開發APP。因此,在Web技術上的安全議題也必須去考慮。
資訊安全上的議題實在是非常多。老實說,這裡覺得安全的議題怎麼講也講不完。也是另外一種宇宙。
議題如下 :
資安有問題 政院禁公務用LINE、WhatsApp、WeChat
在寫程式的同時,就必須考慮到程式設計上的安全議題。例如有無buffer overflow等。
在架設伺服器的同時也必須考量到是否有系統安全的問題。例如今年有個重大的安全漏洞。OpenSSL CVE-2014-0160 Heartbleed 。有可能造成SSL 私密金鑰被竊取、Session被盜用等問題。
然而,我們在設計一個Apps也必須考慮到程式安全,當然在這裡我們是以Web技術去開發一個跨平台的Mobile Apps。因此,任何在網頁架設、伺服器架設的問題,我們也必須要考量進去。
首先我們在sinatra的設定之中。 我們可以透過Rack:Session 以及Encrypt Cookie來設定加密Cookie以及session 。
至於在session 以及 cookie上的安全問題。這裡非常推薦一篇文章(DEVCORE : HTTP Session 攻擊與防護)
我們先經過套件安裝。
gem install encrypted_cookie
可以透過rack 來使用加密cookie
use Rack::Session::EncryptedCookie, cookie_settings
亦或是設定session random key 。
set :session_secret, 'booit'
另外在我們cu_server上。我們可以使用HTML5的wss來設定安全溝通通道。
EM::WebSocket.start({
:host => "0.0.0.0",
:port => 443,
:secure => true,
:tls_options => {
:private_key_file => "/private/key",
:cert_chain_file => "/ssl/certificate"
}
})
並且可以透過bind SSL proxy 設定:
:secure_proxy => true
當然SSL 在最近也發生重大安全漏洞(CVE-2014-3566)。因此相對應的解決方案與上述Heartbleed 也必須去更新相關套件。
當然還有資料庫安全。 在mongoDB 上,我們也要去設定Secure Admin 等。
現在對於安全上的議題,也愈來愈重要。 不妨可以有時間可以去參加HITCON 駭客年會。
來獲取各方面最新的安全議題來加強在 程式、網頁、伺服器等資訊安全知識。
參考資料來源:
2 DEVCORE