2026年2月28日 星期六

PaloAlto_21 Security Policy 不是 allow any

 

開場白:allow any 是工程師的泡麵

凌晨兩點、專案卡關、客戶在催、系統就是不通。
這時候,最容易出現的一行設定就是:

Source:any
Destination:any
Service:any
Action:allow

它就像泡麵——
不健康、沒營養、但「立刻可以活下來」。

但在 Palo Alto Networks 的世界裡,
Security Policy 的存在,就是為了阻止你每天吃泡麵。


第一課:Security Policy 到底在管什麼?

先講人話版本:
Security Policy = 誰,可以,在什麼情況下,用什麼方式,跟誰說話。

工程師翻譯版是五個 W:

  1. Who(Source):誰發起連線

  2. To Whom(Destination):要連到哪

  3. How(Application / Service):用什麼方式

  4. When(Schedule):什麼時間

  5. So What(Action):放行 or 擋掉

allow any 等於直接跟防火牆說:

「你不要思考,我來承擔後果。」
(歷史證明,後果通常你也承擔不起)


第二課:為什麼 Palo Alto 討厭 allow any?

因為 Palo Alto 的核心哲學只有一句話:

「我不只看 port,我看你在幹嘛。」

傳統防火牆:

  • TCP/443?好,大概是 HTTPS,放。

Palo Alto:

  • TCP/443?

  • 是 HTTPS?

  • 還是 Dropbox?

  • 還是某個你不想讓老闆知道的東西?

你如果用 allow any,等於買了跑車卻永遠踩一檔。


第三課:正確的 Policy 心法

1️⃣ 先想「業務需求」,不是先想「怎麼通」

錯誤流程:

ping 不通 → allow any → 世界和平(10 分鐘)

正確流程:

這台 Server 要做什麼?
應該跟誰說話?

Security Policy 是白名單思維,不是黑名單懺悔錄。


2️⃣ App-ID 是你的好朋友,不是麻煩鬼

很多人抱怨:

「App-ID 很煩,規則寫不動。」

但實話是:
App-ID 是幫你把『不知道自己在幹嘛』變成『我很清楚』。

實務建議:

  • 能用 Application,就不要只用 Service

  • HTTPS ≠ 一切合法行為


3️⃣ Rule Order:防火牆是從上往下讀的

這不是小說,沒有伏筆。

  • 第一條 match,就停

  • allow any 放最上面 = 所有規則都是裝飾品

工程師金句:

「規則不是沒生效,是你永遠跑不到它。」


第四課:一個「不丟臉」的 Security Policy 教學範例

假設情境:

Web Server 需要對外提供 HTTPS

錯誤寫法(資安會皺眉):

  • Source:any

  • Destination:Web Server

  • Service:any

  • Action:allow

比較像樣的寫法:

  • Source:Internet Zone

  • Destination:Web Server Zone

  • Application:ssl, web-browsing

  • Service:application-default

  • Action:allow

這時候 Palo Alto 會說:

「好,我知道你在做網站,不是在亂來。」


第五課:Log 不看,比 allow any 更可怕

很多人寫完規則就收工,
Log 的存在彷彿只是為了佔硬碟。

但事實是:

  • Log = 你未來自保的證據

  • Log = 你跟資安、稽核、老闆溝通的翻譯機

至少做到三件事:

  1. 允許的流量要記錄

  2. 被擋的流量要敢看

  3. 出事時不要第一句就說「防火牆沒動」


結語:allow any 不是原罪,但是警訊

老實說,每個工程師人生中都用過 allow any。
真正的差別在於:

  • 新手:用了就忘

  • 老手:用了會內疚,然後刪掉

Security Policy 的成熟度,
不是你會不會寫 allow any,
而是你能不能不用它,系統還是活得好好的。

如果你現在打開 Palo Alto,
看到某條 allow any 在角落對你微笑——
別怕,
它不是在嘲笑你,
它是在等你長大。

沒有留言:

張貼留言

PaloAlto_21 Security Policy 不是 allow any

  開場白:allow any 是工程師的泡麵 凌晨兩點、專案卡關、客戶在催、系統就是不通。 這時候,最容易出現的一行設定就是: Source:any Destination:any Service:any Action:allow 它就像泡麵—— 不健康、沒...