網路編程四:互連網中TCP Socket伺服器的實現過程需要考慮哪些安全問題

來源:互聯網
上載者:User

標籤:網路編程| poll|epoll

650) this.width=650;" src="http://s5.51cto.com/wyfs02/M02/78/3B/wKioL1Z4sNyR1HHTAALGkOT_xTQ973.jpg" title="b85e62c678b4a8859b03671be2e6a1bf_b.jpg" alt="wKioL1Z4sNyR1HHTAALGkOT_xTQ973.jpg" />

這篇曾經是答在這裡的 互連網中TCP Socket伺服器的實現過程需要考慮哪些安全問題- auxten 的回答

最近總是有人問我相關的問題,在專欄補發一下,希望能幫到更多人

首先,這是個很大的命題,之前在360負責過幾個對外的服務的研發,也算是有點小經驗,我試著答一下

在Internet環境下安全問題我主要分為如下幾類

  • 1. 資訊傳輸過程中被駭客竊取

  • 2. 伺服器自身的安全

  • 3. 服務端資料的安全

首先,如果能用https,就盡量用https,能用nginx等常見伺服器,就用常見伺服器,主要能避免以下問題:

  •   自己實現的協議&Server端可能會有各種Bug被緩衝區溢位攻擊等

  •  SSL加密體系在防監聽方面已經足夠成熟值得信賴

所幸,私人協議服務的攻擊需要駭客分析協議,這就給一般的小服務增加了一層保護。但如果是在大公司做事,樹大招風,就必須至少做到理論上沒有安全性漏洞。神馬,xor混淆一下,C/S端寫死一個對稱金鑰這種掩耳盜鈴的事情就不要做了,不然會死的很難看。

如果需要自己實現Server端,實現一套合格的SSL還是很考驗功底的:

  •  首先要弄明白SSL加密體系金鑰交換的原理

  •  對各種對稱、非對稱式加密演算法要有深刻的理解

  • 用非對稱式加密演算法怎麼實現一套金鑰交換體系

  • 如何處理ca認證在自簽名情況下怎麼避免中間人攻擊

工程實現過程中,要考慮

  • 各種可能的緩衝區溢位攻擊

  • SYN flood攻擊慢串連攻擊

  •  DDoS防起來有難度但至少能防禦DoS攻擊

商務邏輯層面,要考慮

  • 每個介面都要做好使用者&許可權驗證

  •  介面會不會被人亂用重放攻擊

  • 攻擊方會不會找到一個比較消耗服務端資源的介面用很小的代價耗盡服務端資源

  • 使用者的使用者名稱密碼會不會被通過介面破解參見2014 celebrityphoto hack

  • 你的服務會不會被駭客利用去攻擊別的服務特別是會根據使用者輸入抓取什麼資源的服務

  • 古老的SQL注入

  • 無恥的仿冒服務DNS欺詐

  • 涉及HTML的還要考慮跨站……

即使你做到了天衣無縫,還要考慮隊友有時會掉鏈子

  • glibc、openssl這些基礎的庫也會爆出漏洞參見Heartbleed

  • 同一台主機上的其它服務被攻陷

寫完之後整個人都不好了

關於加密解密演算法參見:加解密Encryption& 雜湊Hash演算法----入門指引 - 面向工資編程 - 知乎專欄


◆著作權歸作者所有◆

商業轉載請聯絡作者獲得授權非商業轉載請註明出處。
作者大家可以看我的知乎專欄
連結http://zhuanlan.zhihu.com/auxten/20315482
這是一個系列的文章之四之五已經寫完了會陸陸續續搬到Linuxtone著急的同學可以看

  • 網路編程(五):長串連&串連池的應用

  • 網路編程(六):連接埠那些事兒

==================================

》》想要瞭解更多精彩內容歡迎關注》》

聯絡Reboot-有更多技術分享、交流請加群238757010

本文出自 “Reboot營運開發” 部落格,請務必保留此出處http://opsdev.blog.51cto.com/2180875/1727062

網路編程四:互連網中TCP Socket伺服器的實現過程需要考慮哪些安全問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.