[Python]開發一個簡單的網站 Header 檢查工具

文、意如

步驟一:安裝所需函式庫
pip install requests
步驟二:程式碼
import requests

def check_security_headers(url):
 
    print(f"--- 啟動 **資安工具**:檢查網站 Header:{url} ---")
    
    try:
        # 使用 Python requests 函式庫進行快速 HTTP 請求
        response = requests.get(url, timeout=5)
        headers = response.headers
        
        # 定義需要檢查的關鍵安全 Header 列表
        CRITICAL_HEADERS = [
            'Strict-Transport-Security',  # HSTS
            'X-Content-Type-Options',     # MIME 類型嗅探防禦
            'Content-Security-Policy',    # CSP
            'X-Frame-Options'             # Clickjacking 防禦
        ]
        missing_count = 0
        # 遍歷檢查,判斷是否缺少關鍵安全 Header
        for header in CRITICAL_HEADERS:
            if header not in headers:
                print(f"[**資安工具** 警報] 缺少關鍵安全 Header: {header}")
                missing_count += 1
            else:
                print(f"[**資安工具** 檢查] 發現 Header: {header}")  
        if missing_count == 0:
            print("\n[結果] 網站的安全 Header 配置良好!")
        else:
            print(f"\n[結果] 總共缺少 {missing_count} 個建議的安全 Header。")

    except requests.exceptions.RequestException as e:
        print(f"[錯誤] 連線失敗或超時: {e}")

# 執行我們的自動化資安工具 (替換成您想檢查的網站)
if __name__ == "__main__":
    # 使用一個已知可能缺少 HSTS 的網站進行測試
    check_security_headers("http://www.example.com") 
    print(f"\n這是 Python 在開發自動化 **資安掃描工具** 上效率高的實例。")
  1. 快速部署: 僅需幾行程式碼就完成了一個實用的資安檢測工具類型
  2. 自動化: 它可以輕鬆擴展,用於自動化檢查數百個網站的安全配置,這在企業的資安相關工作職缺中非常實用。
  3. 原型設計: 這是快速驗證安全理念(如檢查 Header)的完美起點,是所有資安人才職缺在實戰中必備的能力。

Yiru@Studio - 關於我 - 意如