- 網站開發教程
- 網站開發 - 首頁
- 網站開發 - 簡介
- 所需技能
- 域名
- 域名註冊
- 網站開發 - 子域名
- 域名隱私
- 在主機平臺上配置DNS記錄
- CMS平臺
- 靜態和動態網頁
- 釋出和開發工具
- 商業和免費主題
- 選擇網站託管公司和套餐
- 網站開發 - Cpanel
- 網站開發 - 設定
- 公共機構證書
- 購買公共證書
- 電子商務平臺
- 電子商務支付閘道器
- 小型企業網站
- 備份您的網站
- 網頁遷移
- 測試您的網站
- 網站開發 - 安全性
- 加速您的網站
- 推廣您的網頁
- 網站開發 - Adwords
- 網站開發 - SEO
- 網站開發資源
- 網站開發 - 快速指南
- 網站開發 - 資源
- 網站開發 - 討論
網站開發 - 安全性
保護您的網頁與開發它一樣重要,因為任何可能危及安全性的威脅都會損害您的商業信譽,造成經濟損失(竊取您的線上存款),損害訪問您網站的客戶等。
根據安全專家的建議,應根據OWASP TOP 10進行網站安全檢查,這是一個強大的網路應用程式安全意識文件。OWASP Top 10 代表了關於哪些是最關鍵的網路應用程式安全漏洞的廣泛共識。
SQL注入
SQL、OS和LDAP注入等注入漏洞發生在將不受信任的資料作為命令或查詢的一部分發送到直譯器時。攻擊者的惡意資料可能會欺騙直譯器執行意外命令或訪問未經授權的資料。
解決方案 - 為保護您的網頁免受SQL注入攻擊,您必須驗證輸入並過濾符號。
身份驗證和會話管理漏洞
與身份驗證和會話管理相關的應用程式功能通常實現不正確,這允許攻擊者破壞密碼、金鑰、會話令牌,甚至利用其他實現缺陷來假冒其他使用者的身份。
解決方案 - 為保護您的網站免受此漏洞攻擊,您必須為Cookie和會話設定過期時間。
跨站點指令碼 (XSS)
只要應用程式獲取不受信任的資料並將其傳送到 Web 瀏覽器而沒有適當的驗證或轉義,就會發生 XSS 漏洞。XSS 允許攻擊者在受害者的瀏覽器中執行指令碼,然後劫持使用者會話、篡改網站或將使用者重定向到惡意網站。
解決方案 - 對此的保護與SQL注入攻擊的保護類似。
不安全的直接物件引用
當開發人員公開對內部實現物件的引用(例如檔案、目錄或資料庫金鑰)時,就會發生直接物件引用。如果沒有訪問控制檢查或其他保護,攻擊者可以操縱這些引用來訪問未經授權的資料。
解決方案 - 您應該實現特定的保護機制(例如密碼)來保護此類檔案。
安全錯誤配置
良好的安全性需要為應用程式、框架、應用程式伺服器、Web 伺服器、資料庫伺服器和平臺定義和部署安全的配置。應定義、實現和維護安全設定,因為預設設定通常是不安全的。
解決方案 - 應使軟體保持最新。
敏感資料洩露
許多 Web 應用程式無法正確保護敏感資料,例如信用卡、稅務 ID 和身份驗證憑據。攻擊者可能會竊取或修改此類保護較弱的資料以進行信用卡欺詐、身份盜竊或其他犯罪活動。
解決方案 - 敏感資料需要額外的保護,例如靜態或傳輸中的加密,以及與瀏覽器交換時應採取特殊的預防措施。
缺少函式級別訪問控制
大多數 Web 應用程式會在使該功能在 UI 中可見之前驗證函式級別訪問許可權。但是,應用程式需要在訪問每個函式時在伺服器上執行相同的訪問控制檢查。如果未驗證請求,攻擊者將能夠偽造請求以訪問未經授權的功能。
解決方案 - 您應該檢查身份驗證級別。
跨站點請求偽造 (CSRF)
CSRF 攻擊強制登入的受害者的瀏覽器傳送偽造的 HTTP 請求,包括受害者的會話 Cookie 和任何其他自動包含的身份驗證資訊,到易受攻擊的 Web 應用程式。這允許攻擊者強制受害者的瀏覽器生成請求,易受攻擊的應用程式認為這些請求是來自受害者的合法請求。
解決方案 - 最常用的預防措施是為來自網站的每個請求附加一些基於不可預測挑戰的令牌,並將它們與使用者的會話關聯。
使用具有已知漏洞的元件
元件(例如庫、框架和其他軟體模組)幾乎總是以完全許可權執行。如果利用了易受攻擊的元件,則此類攻擊可能會導致嚴重的資料丟失或伺服器接管。使用具有已知漏洞的元件的應用程式可能會破壞應用程式防禦,並可能導致各種可能的攻擊和影響。
解決方案 - 檢查該元件版本是否存在漏洞,並嘗試避免或更換為其他版本。
無效的重定向和轉發
Web 應用程式經常將使用者重定向並轉發到其他頁面和網站。這些應用程式使用不受信任的資料來確定目標頁面。如果沒有適當的驗證,攻擊者可以將受害者重定向到網路釣魚或惡意軟體網站,或者使用轉發來訪問未經授權的頁面。
解決方案 - 始終驗證URL。
安全使用的協議
如果您擁有VPS方案並自行管理所有內容,就會出現這種情況。安裝服務時,它們使用預設埠。這使得駭客的工作更容易,因為他知道在哪裡尋找。
下面列出了一些網站託管中使用的主要服務埠 -
- SSH – 埠 22
- FTP – 埠 21
- MySQL – 埠 3306
- DNS – 埠 53
- SMTP – 埠 25
這些服務的埠更改取決於作業系統及其不同的版本。除此之外,您還必須安裝防火牆。如果是Linux作業系統,我們建議使用IPtables並阻止所有其他不需要的埠。如果您的作業系統是Windows,您可以使用其內建的防火牆。
為了阻止服務中的暴力破解登入,您可以使用基於Linux的軟體Fail2ban,並阻止所有進行多次失敗登入嘗試的IP地址。