Ssl
Bluecoat 代理:允許 HTTPS 訪問網站,同時禁止 TCP 隧道 (SSH/…)
我們使用 BlueCoat ProxySG(軟體 6.4.3.1)進行了顯式(= 不透明)代理設置。
當我創建 Web 訪問層規則時,例如:
- 協議:HTTPS -> 所有 HTTPS:允許,
- 協議:所有 TCP 隧道:拒絕,然後
我仍然可以通過代理在外面進行 SSH。
相反,當指定某些東西時
- 協議:所有外殼:拒絕
(沒有明確的 HTTPS 聲明)我也可以通過代理進行 SSH。
唯一有幫助的(使用 SSH)是指定
All TCP Tunneling: DENY
. 但是在這種情況下,HTTPS 也不再有效。因此,HTTPS 似乎被視為 TCP 隧道。這也是跟踪文件在 HTTPS 請求上顯示的內容:
CONNECT tcp://www.xxx.com:443/
我知道只要允許某人創建傳出的加密連接,他們就可以使幾乎任何事情都正常工作。但我不想讓它太容易。
那麼如何辨識 HTTPS 同時又不允許太多其他東西呢?(如果不設置 MitM 的東西等可能是不可能的。)為什麼會有一個名為 HTTPS 的對象,當我使用它時它不會改變任何東西。我真的不明白那部分。
好吧,
尋找在 SSH 等情況下不存在的 User-Agent 標頭是官方的答案。
正常 HTTPS 會話通常會將這些標頭與對 HTTP CONNECT xxx:443 方法的呼叫一起傳輸(在隧道連接的情況下)。我們確實只允許連接到代理上的埠 80,因此所有不是 HTTP 的東西都得到(不再)隧道化。
這是默默無聞的安全性,但我想在這種情況下和使用這個設備不能做更多的事情……