2023年1月9日 星期一

注意Firefox和Chrome不能訪問非安全埠問題(ERR_UNSAFE_PORT)

資料來源(浮雲雅築): http://shaurong.blogspot.com/2021/07/errunsafeport.html
ERR_UNSAFE_PORT、ERR_CONNECTION_REFUSED、此網址已被限制、連線失敗、此網站不安全、無法連線至此網頁、無法連線到此頁面、拒絕連線。
********************************************************************************

在測試某系統時,預設使用port: 101,測試使用IE瀏覽器是可以運作的,但換成Chrome,卻不行運作。之後,又再測試其它瀏覽器如:firefox、Edge,也都有類似的情形,再測試使用別的Port,卻又可以使用。

我才開始覺得似乎有不尋常之處,開始網路爬文,之後也確實得到證實,原來此問題,是源自原廠的設下的特定Port的限制。
以下為網路收集資訊,給自己做個參考。

********************************************************************************
Google 日前在 Chrome 瀏覽器中屏蔽了 數個 TCP 埠,如果用戶訪問的網站就是採用了這幾個埠,那麼將無法訪問到這些網站。此舉的目的主要是爲了防止 NAT Slipstreaming 2.0 漏洞。

這個新型 NAT Slipstreaming 漏洞使網站可以託管惡意腳本,這些惡意腳本發送經過特殊設計的響應,從而繞過網站訪問者的 NAT 防火牆並能夠訪問用戶內部網絡上的任何 TCP/UDP 埠。

NAT Slipstream 2.0 攻擊是一種跨協議的請求僞造,它允許帶有惡意腳本的網際網路伺服器攻擊 NAT 設備之下的那些專用網絡上的計算機。這種攻擊取決於能夠在 1720 埠(H.323)上發送流量。

Google 在其 Chrome 狀態頁面上的功能描述中解釋到:「爲了防止進一步的攻擊,此更改還會阻止其他幾個已知會被 NAT 設備檢查的埠,以防止這些埠會遭受到類似的利用。」

當用戶嘗試使用這些埠連接到網站時,Chrome 瀏覽器會顯示一條消息指出無法訪問該網站,並給出 ERR_UNSAFE_PORT錯誤提示。

********************************************************************************


在Chrome若此port被阻擋,將會顯示以下資訊。
無法連線到此網頁,ERR_CONNECTION_REFUSED,網站不存在或連不上。

Chrome阻擋不安全的Port
********************************************************************************

Chrome限制port清單:The general list of blocked ports on Chrome.
https://chromium.googlesource.com/chromium/src.git/+/refs/heads/main/net/base/port_util.cc

Browser Security Handbook, part 2
https://code.google.com/archive/p/browsersec/wikis/Part2.wiki#Port_access_restrictions

Firefox限制port清單:Mozilla Port Blocking
https://www-archive.mozilla.org/projects/netlib/portbanning#portlist

Internet Explorer 11 好像沒有限制 port 清單

********************************************************************************

Chrome 允許不安全 port 方法(測試無效)

根據許多網友說法Chrome用 explicitly-allowed-ports 可以允許連線到被禁止的 port,並在 Chrome 上成功設定,方法如下:

C:\Documents and Settings\User\Local Settings\Application Data\Google\Chrome\Application\chrome.exe --explicitly-allowed-ports=6666

但經過實地測試在 Chrome 版本108,都不行運作。

使用 "explicitly-allowed-ports" site:support.google.com 查,並沒有正式官方文件提到 explicitly-allowed-ports  參數。

在Chrome捷徑內,加入相關語法,但是方法無效。
還沒有找到,相關有效的辦法。
但山不轉路轉,自己改用別的Port,不用固執硬要用被限制的Port。




********************************************************************************

在FireFox若此port被阻擋,將會顯示以下資訊。
FireFox阻擋不安全的Port
但FireFox 允許不安全 port 方法

How to allow a restricted port? | Firefox Support Forum | Mozilla Support
https://support.mozilla.org/en-US/questions/1083282

Network.security.ports.banned - MozillaZine Knowledge Base
http://kb.mozillazine.org/Network.security.ports.banned

這篇提到網址列輸入 about:config,使用 network.security.ports.banned.override  進行設定。



======================================================
官方Chrome限制的Port參考如下:
    1,      // tcpmux
    7,      // echo
    9,      // discard
    11,     // systat
    13,     // daytime
    15,     // netstat
    17,     // qotd
    19,     // chargen
    20,     // ftp data
    21,     // ftp access
    22,     // ssh
    23,     // telnet
    25,     // smtp
    37,     // time
    42,     // name
    43,     // nicname
    53,     // domain
    69,     // tftp
    77,     // priv-rjs
    79,     // finger
    87,     // ttylink
    95,     // supdup
    101,    // hostriame
    102,    // iso-tsap
    103,    // gppitnp
    104,    // acr-nema
    109,    // pop2
    110,    // pop3
    111,    // sunrpc
    113,    // auth
    115,    // sftp
    117,    // uucp-path
    119,    // nntp
    123,    // NTP
    135,    // loc-srv /epmap
    137,    // netbios
    139,    // netbios
    143,    // imap2
    161,    // snmp
    179,    // BGP
    389,    // ldap
    427,    // SLP (Also used by Apple Filing Protocol)
    465,    // smtp+ssl
    512,    // print / exec
    513,    // login
    514,    // shell
    515,    // printer
    526,    // tempo
    530,    // courier
    531,    // chat
    532,    // netnews
    540,    // uucp
    548,    // AFP (Apple Filing Protocol)
    554,    // rtsp
    556,    // remotefs
    563,    // nntp+ssl
    587,    // smtp (rfc6409)
    601,    // syslog-conn (rfc3195)
    636,    // ldap+ssl
    989,    // ftps-data
    990,    // ftps
    993,    // ldap+ssl
    995,    // pop3+ssl
    1719,   // h323gatestat
    1720,   // h323hostcall
    1723,   // pptp
    2049,   // nfs
    3659,   // apple-sasl / PasswordServer
    4045,   // lockd
    5060,   // sip
    5061,   // sips
    6000,   // X11
    6566,   // sane-port
    6665,   // Alternate IRC [Apple addition]
    6666,   // Alternate IRC [Apple addition]
    6667,   // Standard IRC [Apple addition]
    6668,   // Alternate IRC [Apple addition]
    6669,   // Alternate IRC [Apple addition]
    6697,   // IRC + TLS
    10080,  // Amanda


沒有留言:

TeraTerm是一款開放原始碼的遠程客戶端操作軟體

因為工作需求,有時我們需要從遠端登入某設備或是主機,又或者因為故障排除,需要透過serial port連入某設備進行檢查和操控。 偶然看到某SI的工程師,使用這個工具,想說也來使用看看。心中相信這應該是好工具,人家才會用它。 我自己通常都是簡單使用的話用 putty,想要用好一...