本發明屬于網絡安全,具體涉及一種網絡安全實時防護方法、裝置、電子設備及存儲介質。
背景技術:
1、隨著網絡攻擊的日益復雜化,利用tls(transport?layer?security,傳輸層安全性協議)指紋技術可以有效地識別和防御網絡中的惡意流量,如ddos攻擊、垃圾郵件發送、網絡釣魚等;通過實時分析網絡流量中的tls指紋,ids(intrusiondetection?system,入侵檢測系統)能夠及時發現異常通信模式,從而預警并防范潛在的安全威脅;tls指紋技術已被應用于多種網絡安全場景,包括但不限于網絡流量分析、威脅情報收集和合規性檢查。
2、tls作為互聯網上最廣泛使用的加密協議之一,其安全性對于保護用戶數據和隱私至關重要;tls指紋技術是基于tls協議的深入分析,可以在數據傳輸過程中提供額外的安全層,有助于更精確地識別和分析網絡通信,通過分析tls指紋,可以識別出使用特定tls配置的惡意軟件通信。
3、在現有技術中,通常只會生成一個ja3指紋,通過ja3指紋進行安全檢測。但是在一些高版本的瀏覽器中,會對數據進行排序處理,那么對同一個ja3指紋在經過不同高低版本的瀏覽器后,會生成兩種數據,進而影響檢測的準確性。
技術實現思路
1、本發明的一個目的是提供一種網絡安全實時防護方法、裝置、電子設備及存儲介質,能夠解決現有技術中對網絡請求安全性檢測準確率較低的技術問題。
2、根據本發明的第一方面,提供了一種網絡安全實時防護方法,所述方法包括:
3、獲取客戶端發送的第一網絡請求,其中,所述第一網絡請求包括tls版本信息、加密套件信息、擴展列表信息、橢圓算法組信息和橢圓曲線格式信息;
4、獲取所述第一網絡請求對應的第一ja3字符串數據;
5、對所述第一ja3字符串數據進行哈希處理,獲得第一ja3指紋數據;
6、對所述第一網絡請求進行排序處理,獲得第二ja3字符串數據;
7、對所述第二ja3字符串數據進行哈希處理,獲得第二ja3指紋數據;
8、根據所述第一網絡請求對應的ip信息,以及所述第一ja3指紋數據和所述第二ja3指紋數據,構建情報庫;
9、根據所述客戶端發送的第二網絡請求,利用所述情報庫進行風險檢測處理。
10、可選地,所述根據所述客戶端發送的第二網絡請求,利用所述情報庫進行風險檢測處理,包括:
11、獲取所述第二網絡請求對應的tls?client?hello指紋信息;
12、根據所述第二網絡請求對應的tls?client?hello指紋信息,獲取對應的第三ja3指紋數據;
13、根據所述第三ja3指紋數據以及所述情報庫從ip、ua以及ja3指紋三個維度進行檢測分析,確定所述第二網絡請求的風險等級。
14、可選地,所述根據所述第三ja3指紋數據以及所述情報庫從ip、ua以及ja3指紋三個維度進行檢測分析,確定所述第二網絡請求的風險等級,包括:
15、對所述第二網絡請求的ua進行合規性檢測,根據合規性檢測結果確定第一風險值;
16、對指定時間內與所述第二網絡請求同一ip的訪問流量的ua類型數量進行統計,根據ua類型數量的統計結果確定第二風險值;
17、獲取指定時間內與所述第二網絡請求同一ip下的其它請求對應的ua以及ja3指紋數據,通過情報庫判斷同一ua是否存在多個ja3指紋數據,根據判斷結果確定第三風險值;
18、累計所述第一風險值、所述第二風險值以及所述第三風險值,獲取指定時間內的累計風險值;
19、通過智能決策算法,根據所述指定時間內的累計風險值確定所述第二網絡請求的風險等級。
20、可選地,所述根據所述第三ja3指紋數據以及所述情報庫從ip、ua以及ja3指紋三個維度進行檢測分析,確定所述第二網絡請求的風險等級,包括:
21、對所述第二網絡請求的ua進行識別,根據識別結果設置第四風險值;
22、在指定時間內統計使用的ua數量,根據ua數量計算第五風險值;
23、從情報庫中查詢每個ua對應的ja3指紋數量,根據查詢結果確定第六風險值;
24、根據所述第四風險值、所述第五風險值、所述第六風險值以及檢測強度確定所述第二網絡請求的風險等級。
25、可選地,所述方法還包括:
26、獲取所述第二網絡請求對應的ja3指紋數據;
27、確定所述第二網絡請求對應的ja3指紋數據是否符合實時規則,其中,所述實時規則包括以下至少一種:同一ip和ua在不同網站中的ja3指紋數據不同、ja3指紋數據中的擴展列表數大于預設閾值、在同一會話期間訪問請求的前后ja3指紋數據不一致;
28、若符合,對所述第二網絡請求實施攔截。
29、可選地,所述方法還包括:
30、如果所述第二網絡請求的風險等級大于預設等級,對所述第二網絡請求進行阻斷,禁止回到源站;
31、如果所述第二網絡請求的風險等級不大于所述預設等級,根據所述第二網絡請求的風險等級實施對應的驗證防護策略;
32、在所述客戶端響應所述驗證防護策略并且驗證通過之后,放行所述第二網絡請求。
33、根據本發明的第二方面,提供了一種網絡安全實時防護裝置,包括:
34、第一獲取模塊,用于獲取客戶端發送的第一網絡請求,其中,所述第一網絡請求包括tls版本信息、加密套件信息、擴展列表信息、橢圓算法組信息和橢圓曲線格式信息;
35、第二獲取模塊,用于獲取所述第一網絡請求對應的第一ja3字符串數據;
36、第一處理模塊,用于對所述第一ja3字符串數據進行哈希處理,獲得第一ja3指紋數據;
37、第二處理模塊,用于對所述第一網絡請求進行排序處理,獲得第二ja3字符串數據;
38、第三處理模塊,用于對所述第二ja3字符串數據進行哈希處理,獲得第二ja3指紋數據;
39、構建模塊,用于根據所述第一網絡請求對應的ip信息,以及所述第一ja3指紋數據和所述第二ja3指紋數據,構建情報庫;
40、第四處理模塊,用于根據所述客戶端發送的第二網絡請求,利用所述情報庫進行風險檢測處理。
41、根據本發明的第三方面,提供了一種電子設備,包括處理器和存儲器,所述存儲器存儲可在所述處理器上運行的程序或指令,所述程序或指令被所述處理器執行時實現如本發明第一方面所述的一種網絡安全實時防護方法的步驟。
42、根據本發明的第四方面,提供了一種可讀存儲介質,所述可讀存儲介質上存儲程序或指令,所述程序或指令被處理器執行時實現如本發明第一方面所述的一種網絡安全實時防護方法的步驟。
43、本發明的有益效果在于:本發明不僅對原始數據進行哈希計算,還對排序后的數據進行哈希計算,形成兩個唯一的哈希串,提高識別結果的準確性。本發明通過智能決策算法,對ip、ua頻次以及ua合規性進行檢查,通過算法根據一定時間內的訪問流量情況進行閾值的決策,不同業務場景中設置不同的閾值,適配多種業務場景,提高不同場景下檢測的準確度。