張正欣
(鹽城市社會保障信息中心,江蘇 鹽城 224001)
端口是網絡應用層程序與傳輸層TCP、UDP協議間聯系的通道,每個端口對應著一個應用程序。通常系統中運行的程序越多,開放的端口也越多,系統被入侵的風險也就越大。Windows、Linux等操作系統上常見的 TCP 135、139、445、593、1025、111、513端口和UDP 135、137、138、445端口以及一些流行病毒的后門端口(如 TCP 2745、3127、6129 端口)等默認情況下都是處于開放狀態,使得網絡病毒或黑客可通過這些開放端口對受害者電腦開展惡意破壞、竊取數據信息等攻擊行為。如何有效避免開放高危端口、快速定位排查信息系統故障,保障信息系統的安全穩定運行顯得極為重要。
信息系統在建轉運過程中未對系統端口開放情況進行梳理和審核,系統的端口開放情況、每個端口的用途以及端口之間的關聯關系未形成詳細記錄。部分系統開放了許多不必要的端口,存在感染病毒木馬或被攻擊者利用,進而影響到整個信息網絡安全的風險。此外,端口的作用和端口之間關聯關系不清晰,導致系統接口故障難以準確定位,故障排查效率低下。
缺少專門用于端口治理的自動化工具,端口治理工作中的大部分工作只能靠人工完成,不僅效率低下,而且準確性不高。
安全運維中,沒有明確的系統端口異動管控機制可供參考,無法發現端口異動情況,及時采取有效的應對措施,日積月累必然會產生大量高危端口或非必要端口,存在較大的安全隱患。
針對上述問題,基于自動化工具建立全面系統的業務端口信息臺帳制度,實現全業務對象全生命周期全流程常態化的有效管控,主要做法如下:
采用自動化手段全面梳理信息內外網服務器IP地址上的端口開放情況。研究每個高危端口的用途和存在的風險,并制定相應的防護措施。
2.1.1 生成全服務網段端口清單
本文以掃描一個C網段地址上開放的所有端口為例。通過以下命令掃描服務器上開放的所有端口并將結果保存在“up_hosts_all_ports_fullscan.xml”文件中:
nmap --open -p0-65535 192.168.104.0/24 -oX d:up_hosts_all_ports_fullscan.xml
執行效果如圖所示:

圖1 Nmap掃描服務器C網段上所有端口結果
生成的xml端口掃描結果文件內容截圖如下:

圖2 xml端口掃描結果
2.1.2 自主開發自動化工具完成端口梳理
(1)按端口號對端口掃描結果進行分組和排序
使用自主編寫的python腳本實現對端口掃描結果進行分組和排序,并生成一個多重嵌套列表文件(即列表的每個元素也可展開為一個獨立的列表)。其中,每個成員列表第一個元素為端口號(int),第二個元素為該端口的IP地址(string)列表。腳本代碼如下:


腳本執行結果截圖如下所示:

圖3 端口分組排序結果
(2)按端口號進行查詢
提高端口梳理的效率,掌握每個端口(尤其是高危端口)的開放和分布情況,可編寫端口查詢腳本。通過腳本,可以根據端口查詢出相應的主機,腳本代碼如下:

執行效果如下圖所示:

圖4 端口查詢結果
(3)高危端口數量統計
參考國家漏洞庫漏洞,結合端口查詢腳本,統計出開放高危端口的主機數量,并有針對性地開展整改工作,各高危端口的統計數量如下表所示:

表1 高危端口數量排名前20列表
2.1.3 高危端口治理
根據前期統計出的高危端口的主機列表,主要采用以下三種方式來關閉高危端口:關停端口對應的服務;配置防火墻策略限制對高危端口的訪問;修改服務器注冊表關閉高危端口。
關閉高危端口對業務系統運行可能造成的影響,分階段關閉高危端口。
第一階段:勒索病毒相關端口治理
在所有的windows服務器組策略中集中關閉勒索病毒相關端口(137、138、139和445端口)的服務。同時,在各邊界防火墻上配置訪問控制策略,禁止所有訪問勒索病毒端口的行為。

圖5 IP組策略集中關閉勒索病毒相關的端口
第二階段:rlogin遠程登錄及RPC遠程調用端口治理
集中關閉513和111端口。111端口是Linux類系統上的RPC遠程過程調用服務端口,通過關閉portmap服務與關閉服務自動啟動的方式來關閉。因NFS共享文件服務也使用111端口,對于開啟了NFS的服務器,采用人工逐臺核對的方式進行手動關閉,對于確實需要使用NFS服務的系統通過防火墻策略對111端口進行限制。而513端口是remote login遠程登錄服務端口,通過批量卸載rsh-server軟件包的方式徹底關閉服務,目前已全部關閉513端口服務。

圖6 集中關閉513、111端口
第三階段:其余端口治理
對剩余高危端口關閉可能產生的影響及風險進行評估記錄,分批次、分階段關閉剩余的高危端口。
第四階段:從源頭上治理
為了防止出現經高危端口治理后開放端口數量下降,但新增設備繼續出現高危端口的情況,可制作linux標準化安裝光盤,使用linux標準化安裝光盤安裝后,刪除不必要的服務,僅開通了10022的遠程連接端口,能夠提升系統的安全性,減少后期的端口治理工作量。

圖7 驗證僅開通10022遠程連接端口
制定全服務器網段端口清單,同時制定業務端口臺帳異動管理辦法,通過確認每次檢修操作是否對IP地址臺帳進行變更,來保持臺帳信息的完整準確。
2.2.1 形成全服務器網段端口清單
通過技術手段獲取內外網服務器網段的所有業務端口后,可給每個網段分配一名監督負責人,及時更新臺賬信息形成一份完整的全服務器網段端口清單。其中各監督負責人參考已有的內外網服務器IP地址資源臺賬,聯系各IP地址申請人員填寫IP地址端口功能臺賬表格。端口臺賬清單模板如下圖所示:

圖8 IP地址端口臺帳清單模板
2.2.2 制定業務端口臺帳信息異動管理辦法
涉及IP地址端口臺賬信息變更都必須經過檢修,為確保每次檢修后對端口的變更記錄在冊,及時更新IP地址端口臺帳信息,可給每個IP地址網段指定一名監督負責人和管理員外,同時指定IP臺帳信息總負責人。若某次檢修后IP地址端口臺帳信息有變更,監督負責人則更新維護所負責的臺帳信息,同時將變更信息反饋給臺帳信息總負責人,由總負責人更新IP地址端口信息總臺賬,并做好相關記錄,以便后期核查。因此形成兩份IP地址端口信息臺帳變更維護表,一份由各監督負責人記錄留存,另一份由總負責人記錄留存。其中變更維護表可以看做是一份IP端口信息更新日志記錄,檢修操作后如IP端口臺帳信息有變更,需及時記錄在兩份變更維護表中。IP地址端口變更記錄管控流程圖如下所示:

圖9 IP地址端口變更記錄管控流程圖
為確保IP地址端口臺帳的準確完整性,可實行每三個月對各網段IP地址端口臺帳開展一次全面的內外網服務器端口掃描,并結合IP地址端口總臺帳信息變更維護表,審核IP地址總臺賬信息是否依舊準確完整。
2.2.3 網絡安全風險預警單處理
驗證業務端口治理提升工作的有效性和實用性,將端口治理成果應用到網絡安全風險預警單處理過程。
例如2017年6月22日全球能源互聯網研究院發布的BMC RSCD AGENT遠程命令執行漏洞風險預警單,利用該漏洞惡意攻擊者可繞過操作系統認證執行任意命令,取得對服務器的控制權限。預警單給出的排查方法是:
利用端口掃描工具對目標服務器進行端口掃描,確認TCP 4750端口是否開放;
在測試機上執行bmpexp.exe工具,bmcexp.exe –host x.x.x.x–cmd=”ifconfig”,成功返回命令的結果則說明存在此漏洞;
對所有使用BMC rscd agent軟件(存在的漏洞版本為:BMC rscd agent<8.7)的版本進行系統排查,更新BMC rscd agent至最新版本。為快速高效實現漏洞預警單的處理,可利用自動化端口掃描、分組、排序、查詢及統計腳本,結合IP地址臺賬變更記錄管控機制,形成一份準確完整的4750端口臺賬清單,給各網段IP地址臺賬負責人下發漏洞預警,對責任范圍內的所有使用BMC rscd agent軟件版本的系統進行快速排查,及時更新軟件版本。
對外網信息系統對社會僅開放80及443端口的可行性進行分析。完成互聯網出口統一。
有效管控全業務對象全生命周期全流程常態化,提高信息系統運行安全防護水平,探索提出基于自動化、分類、細顆粒度的建設運行全生命周期的端口治理方案,基于自動化工具建立全面系統的分類結構化業務端口信息臺帳,制定常態化的全業務對象全生命周期全流程風險管控制度,實現網絡安全風險管控和業務端口治理提升工作。
從零開始建立全面系統的分類結構化的業務端口信息臺賬。基于自主編寫的自動化腳本建立了信息系統分類結構化業務端口信息臺帳,梳理在運系統、設備及服務器上開放的所有端口清單,顆粒度細化各IP地址所有端口的用途和訪問關系,可為端口治理常態化工作奠定基礎;編寫自動化腳本實現端口分組、排序、查詢及高危端口統計、關閉等功能,提高端口信息的快速搜集分類、信息系統故障和網絡安全風險預警單分析處置的效率。
基于分類結構化的端口信息臺賬,可建立全業務對象全生命周期全流程常態化的風險管控制度。基于分類結構化的端口信息臺帳,建立全業務對象全生命周期全流程的常態化風險管控制度,重點監控高危端口、重要業務端口,實現端口全生命業務對象的有效管控;制定端口異動管控機制,參照標準化配置手冊相關做法,從源頭上規避高危端口風險隱患,實現端口全生命周期的常態化管控;以自動化腳本為輔助工具,提高端口臺帳信息的快速收集、分析、研判、預警處置能力,實現端口全流程的常態化管控。
開展風險防范和業務系統優化工作,依據連續有效的業務端口信息臺帳,開展信息外網系統端口治理提升工作,在不影響外網業務系統應用的前提下,將外網業務對互聯網開放的端口統一歸并為80和443端口,保障外網業務系統的安全穩定運行。