- 工業(yè)信息安全應(yīng)急管理理論與架構(gòu)
- 汪禮俊主編
- 4040字
- 2024-12-16 16:31:33
(六)工業(yè)領(lǐng)域網(wǎng)絡(luò)攻擊分析
傳統(tǒng)IT系統(tǒng)中安全的三要素由高到低排列分別是保密性(Confidentiality,C)、完整性(Integrity,I)、可用性(Availability,A)。
① 保密性:是指保證信息不被非授權(quán)訪問,即使非授權(quán)用戶得到信息,也無法知曉信息內(nèi)容,因而不能非法使用。保密性通常通過訪問控制阻止非授權(quán)用戶獲得機密信息,通過加密變換阻止非授權(quán)用戶獲知信息內(nèi)容。
② 完整性:是指維護信息的一致性,即信息在生成、傳輸、存儲和使用過程中不應(yīng)該發(fā)生人為或非人為的非授權(quán)篡改。信息的完整性包括兩個方面:一是數(shù)據(jù)完整性,主要指數(shù)據(jù)沒有被(未授權(quán))篡改或損壞;二是系統(tǒng)完整性,主要指系統(tǒng)未被非法操縱,按既定的目標運行。
③ 可用性:是指保障信息資源隨時可提供服務(wù)的能力特性,即授權(quán)用戶可根據(jù)需要隨時訪問所需信息??捎眯允切畔①Y源服務(wù)功能和性能可靠性的度量,涵蓋物理、網(wǎng)絡(luò)、系統(tǒng)、數(shù)據(jù)、應(yīng)用和用戶等多方面的因素,是對信息網(wǎng)絡(luò)總體可靠性的要求。其中,可用性也稱有效性,指信息資源可被授權(quán)實體按要求訪問、正常使用或在非正常情況下能恢復(fù)使用的特性。其保證系統(tǒng)在運行時能正確存取所需信息,當系統(tǒng)遭受意外攻擊或破壞時,可以迅速恢復(fù)并能投入使用。在工業(yè)領(lǐng)域,生產(chǎn)連續(xù)性一般是指不接受中斷,若需要中斷,則必須提前規(guī)劃,不允許生產(chǎn)系統(tǒng)隨意重新啟動。
企業(yè)開展工業(yè)信息安全防護的最終目標是免受網(wǎng)絡(luò)攻擊或減少網(wǎng)絡(luò)攻擊造成的損失,保障企業(yè)業(yè)務(wù)運營的連續(xù)性;對于行業(yè)和國家,做好工業(yè)信息安全工作則事關(guān)經(jīng)濟良好運行、國家安全和社會穩(wěn)定。如前所述,從傳統(tǒng)信息安全的角度出發(fā),開展信息安全工作的目標就是保證信息資產(chǎn)的“CIA”三元組:保密性、完整性、可用性。但對于工業(yè)控制系統(tǒng)而言,系統(tǒng)可用性至關(guān)重要,應(yīng)用于工業(yè)領(lǐng)域時,特別是生產(chǎn)環(huán)節(jié),則需要調(diào)整為“AIC”(如圖1-16所示),即工業(yè)領(lǐng)域更關(guān)注可用性,其次是完整性,最后才是保密性。

圖1-16 工業(yè)信息安全“AIC”示意
完整性是指信息在傳輸、交換、存儲和處理過程中,保持信息不被破壞或修改、不丟失和信息未經(jīng)授權(quán)不能改變的特性。同樣,從生產(chǎn)的角度看,完整性也是十分重要的,直接影響產(chǎn)品的“良品率”。隨著工業(yè)領(lǐng)域數(shù)字化轉(zhuǎn)型的深入,工業(yè)領(lǐng)域管理、運維、市場等數(shù)據(jù)的保密性也正在成為工業(yè)信息安全關(guān)注的焦點。保密性是指不將有用信息泄露給非授權(quán)用戶的特性,可以通過信息加密、身份認證、訪問控制、安全通信協(xié)議等技術(shù)實現(xiàn)。
隨著安全形勢的不斷演變和安全需求的發(fā)展,在“AIC”基本特性的基礎(chǔ)上,強調(diào)保證數(shù)據(jù)安全、共享安全,數(shù)據(jù)權(quán)屬等的可控性、不可否認性、可審計性、可鑒別性等特性也逐步被單獨地研究和應(yīng)用。
1.常見的網(wǎng)絡(luò)攻擊類型
(1)中間人攻擊
中間人攻擊是“間接”的入侵攻擊方式。所謂“中間人”,是指通過各種技術(shù)手段將受攻擊者控制的一臺計算機虛擬放置在網(wǎng)絡(luò)連接中的兩臺通信計算機之間(如圖1-17所示),這臺受攻擊者控制的計算機就被稱為“中間人”。攻擊者控制的計算機與通信的兩端分別創(chuàng)建獨立的聯(lián)系。對下,篡改上位機的控制指令,使PLC脫離管理員的控制,破壞生產(chǎn);對上,顯示系統(tǒng)正常運行,延遲管理員發(fā)現(xiàn)安全威脅的時間,從而造成更大的破壞。中間人攻擊可以概括為一種“欺上瞞下”的攻擊手段。

圖1-17 中間人攻擊原理
中間人攻擊的步驟可以簡要概括為以下4步。第一步,獲取PLC、上位機的設(shè)備型號、IP地址、常用端口號等信息,這是建立連接的必要前提。第二步,進行ARP地址欺騙,建立連接,捕獲流量數(shù)據(jù)。第三步,對捕獲的流量數(shù)據(jù)進行分析,查找用于控制的功能碼或其他關(guān)鍵參數(shù),并進行篡改。第四步,發(fā)動攻擊,發(fā)送篡改或原來的數(shù)據(jù)包導(dǎo)致系統(tǒng)運行異常。
(2)模糊測試(Fuzz Testing)攻擊
工業(yè)控制系統(tǒng)的模糊測試原本是一種測試方法,指自動化生成可用于輸入被測試工業(yè)控制系統(tǒng)或設(shè)備的測試數(shù)據(jù),進而檢驗工業(yè)控制系統(tǒng)或設(shè)備的安全性。而模糊測試攻擊則利用相同的手段達到破壞系統(tǒng)運行的目的。模糊測試攻擊的原理如圖 1-18所示。

圖1-18 模糊測試攻擊原理
(3)口令爆破攻擊
口令爆破攻擊基于身份驗證漏洞。身份驗證是網(wǎng)絡(luò)互聯(lián)條件下授予指定用戶控制權(quán)限前,證明網(wǎng)絡(luò)或系統(tǒng)上用戶身份的過程。若用戶身份驗證系統(tǒng)存在使用簡易密碼等漏洞,則很容易被非授權(quán)用戶猜解,或攻擊者從其他渠道獲取了某系統(tǒng)存儲的大量的用戶密碼對,由于用戶常常在不同的系統(tǒng)中使用相同的身份驗證信息,因此攻擊者可發(fā)動撞庫攻擊,爆破登錄口令。這兩種方式都可能導(dǎo)致攻擊者打穿或繞過身份驗證過程,非法獲取系統(tǒng)控制權(quán)限。因此,若使用者的密碼設(shè)置簡單或在多個系統(tǒng)中使用相同的密碼,則可成為攻擊者的攻擊切入點。
(4)勒索軟件攻擊
勒索軟件(Ransomware)是一種流行的木馬病毒,通過騷擾、恐嚇甚至采用綁架用戶文件等方式,使用戶數(shù)據(jù)資產(chǎn)或計算資源無法正常使用,并以此為條件向用戶勒索錢財。用戶數(shù)據(jù)資產(chǎn)包括文檔、郵件、數(shù)據(jù)庫、源代碼、圖片、壓縮文件等多種文件。贖金形式包括真實貨幣、等價的比特幣或其他虛擬貨幣。
當前勒索軟件攻擊肆虐,甚至已形成了“三重勒索”的攻擊模式。據(jù)國家工業(yè)信息安全發(fā)展研究中心統(tǒng)計,2020年工業(yè)領(lǐng)域的勒索軟件攻擊事件共33起,遠超2016—2019年的事件數(shù)量總和;近些年針對工業(yè)實體的勒索軟件攻擊暴增500%以上,其中,制造業(yè)是發(fā)生勒索軟件攻擊事件最多的行業(yè),攻擊數(shù)量占比高達36%。
2.常見的網(wǎng)絡(luò)攻擊過程
攻擊者在掌握對應(yīng)漏洞的條件下可以發(fā)起上述攻擊,但在實際過程中,攻擊者會先實施攻擊目標確認、位置隱藏、威脅信息收集、漏洞掃描、漏洞利用等步驟,為發(fā)動攻擊打好基礎(chǔ),便于其后續(xù)實施惡意操作并放大破壞效果。
(1)攻擊目標確認
攻擊者在發(fā)起攻擊前,需要先明確攻擊的目標。攻擊的目標主要由中斷、拒絕和操縱組成。
① 中斷:包括畫面中斷和控制中斷。
② 拒絕:包括拒絕接收畫面、拒絕接收控制指令、拒絕接收功能安全指令。
③ 操縱:包括畫面操縱、控制操縱、傳感器與儀器儀表操縱、功能安全操縱。
(2)位置隱藏
發(fā)起攻擊前,攻擊者通常會使用如下技術(shù)隱藏真實的IP地址,從而規(guī)避法律懲罰。
● 利用被侵入的主機作為跳板。
● 在安裝Windows的計算機內(nèi)利用WinGate軟件作為跳板。
● 利用配置不當?shù)腜roxy作為跳板。
● 更老練的黑客會使用電話轉(zhuǎn)接技術(shù)隱蔽自己。常用的手法包括:利用800號電話的私人轉(zhuǎn)接服務(wù)連接因特網(wǎng)服務(wù)提供商(Internet Service Provider,ISP),然后盜用他人的賬號上網(wǎng);通過電話連接一臺主機,再經(jīng)由主機連接互聯(lián)網(wǎng)。
(3)威脅信息收集
在信息收集階段,攻擊者會從技術(shù)上制定滲透計劃,使攻擊行動更具可行性。信息收集的方式主要分為3種。
① 被動收集信息:通過第三方渠道收集信息,完全不與被攻擊對象產(chǎn)生交互,這種信息收集方式安全,但信息不一定完全準確。
② 半主動收集信息:和被攻擊對象交互,但流量是正常的訪問流量,比如正常使用瀏覽器打開被攻擊對象的網(wǎng)頁,這種正常的用戶行為是很難被提前甄別的。
③ 主動收集信息:直接和被攻擊對象交互,如端口掃描、子域名窮舉等,這種行為通常會被入侵檢測系統(tǒng)(Intrusion Detection System,IDS)和防火墻攔截,所以在主動收集信息時最好不要觸發(fā)任何報警機制。
通過應(yīng)用Nmap、Shodan、Burp Suite、sqlmap等收集的信息一般包括如下內(nèi)容。
● 通過DNS和IP地址收集目標網(wǎng)絡(luò)信息。
● Google Hacking查詢子域名、子目錄、敏感文件、通信信息、注入點。
● 子域名獲取。
● 收集目錄結(jié)構(gòu)。
● 端口、服務(wù)、指紋識別。
● 安全漏洞信息等。
(4)漏洞掃描
漏洞是指系統(tǒng)存在的弱點或缺陷,系統(tǒng)對特定威脅攻擊或危險事件的敏感性,或進行攻擊的威脅作用的可能性。漏洞可能來自應(yīng)用軟件或操作系統(tǒng)設(shè)計時的缺陷或編碼時產(chǎn)生的錯誤,也可能來自業(yè)務(wù)在交互處理過程中的設(shè)計缺陷或邏輯流程上的不合理之處。
漏洞掃描與漏洞挖掘是兩個概念,漏洞挖掘一般是指通過模糊測試的方法,構(gòu)造一系列無規(guī)則的“壞”數(shù)據(jù)“插入”工業(yè)控制設(shè)備,觀察其運行狀態(tài),以發(fā)現(xiàn)潛在的故障。如果故障可被重復(fù)利用并能導(dǎo)致控制設(shè)備的宕機、DoS等異常現(xiàn)象,則推斷這是一個漏洞,也就是我們常常聞之色變的“零日”漏洞。
但在工業(yè)控制系統(tǒng)中,漏洞挖掘會給正在運行的生產(chǎn)過程帶來威脅,因此一般采用漏洞掃描的方式。漏洞掃描能夠把已經(jīng)公開的漏洞通過漏洞庫信息匹配等已知、確定的方法展現(xiàn)出來。
(5)漏洞利用
這里以經(jīng)典的、廣泛存在的SQL漏洞利用為例進行介紹。SQL注入是指Web應(yīng)用程序?qū)τ脩糨斎霐?shù)據(jù)的合法性沒有進行判斷或過濾不嚴,攻擊者可以在Web應(yīng)用程序中事先定義好的查詢語句的結(jié)尾添加額外的SQL語句,在管理員不知情的情況下實現(xiàn)非法操作,以此欺騙數(shù)據(jù)庫服務(wù)器執(zhí)行非授權(quán)的任意查詢,從而進一步得到相應(yīng)的數(shù)據(jù)信息。SQL注入原理如圖1-19所示。

圖1-19 SQL注入原理
sqlmap是一款開源的滲透測試工具,可用于自動化的檢測,利用SQL注入漏洞獲取數(shù)據(jù)庫服務(wù)器的權(quán)限。它具有功能強大的檢測引擎,可提供針對各種不同類型數(shù)據(jù)庫的滲透測試的功能選項,包括獲取數(shù)據(jù)庫中存儲的數(shù)據(jù)、訪問操作系統(tǒng)文件,甚至可以通過外帶數(shù)據(jù)連接的方式執(zhí)行操作系統(tǒng)的命令。其目前支持的常見的數(shù)據(jù)庫有MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access等。常用的爆破命令如圖1-20所示。

圖1-20 常用的爆破命令
sqlmap -u "url"結(jié)果如圖1-21所示,可以看到,數(shù)據(jù)庫管理系統(tǒng)的類型為Microsoft Access。sqlmap -u "url" --tables獲取數(shù)據(jù)庫中的表,如圖1-22所示。sqlmap -u "url" -T表名 --columns 獲取數(shù)據(jù)庫某個表中的字段,如圖1-23所示。sqlmap -u "url" -T 表名 -C字段名 --dump 獲取表中字段具體的值,如圖1-24所示。

圖1-21 獲取數(shù)據(jù)庫管理系統(tǒng)類型

圖1-22 獲取數(shù)據(jù)庫中的表

圖1-23 獲取admin表中的字段

圖1-24 獲取admin表中字段具體的值
防范SQL注入攻擊通??梢圆扇∫韵?種措施。
① 定制黑、白名單:將對數(shù)據(jù)庫的常用請求定制為白名單,一些攻擊頻繁的攻擊限制其為黑名單。
② 限制查詢長度和類型:由于SQL注入過程中需要構(gòu)造較長的SQL語句,可對不常用的查詢類型進行限制。
③ 數(shù)據(jù)庫用戶的權(quán)限配置:根據(jù)程序要求為特定的表設(shè)置特定的權(quán)限,降低普通用戶的權(quán)限,使得攻擊者即便獲取了此賬號信息,也無法進行破壞性操作。
④ 限制目錄權(quán)限:管理員在互聯(lián)網(wǎng)信息服務(wù)中為每個網(wǎng)站設(shè)置好執(zhí)行權(quán)限,Web目錄應(yīng)至少遵循“可寫目錄不可執(zhí)行,可執(zhí)行目錄不可寫”的原則,在此基礎(chǔ)上,對各目錄進行必要的權(quán)限細化。
⑤ 輸入過濾:在網(wǎng)頁代碼中對用戶輸入的數(shù)據(jù)進行嚴格過濾,如危險字符過濾或語句過濾。