System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及計算機,特別是涉及一種惡意bot識別方法、裝置、計算機設備、計算機可讀存儲介質和計算機程序產品。
技術介紹
1、在網絡安全領域中,bot(robot的簡稱)是指對web(互聯網的簡稱)站點、app(application,應用程序)應用、api(application?programming?interface,應用程序編程接口)接口通過工具腳本、爬蟲程序或模擬器等實現非人工手動操作訪問的自動化程序。由于惡意bot通常被用于執行自動化攻擊,比如漏洞掃描、ddos(distributed?denial?ofservice,分布式拒絕服務攻擊)攻擊、數據爬取、虛假廣告點擊等。因此,針對惡意bot流量的識別和阻斷對于保護網絡安全至關重要。
2、目前,傳統的waf(web?application?firewall,web應用防火墻)通常基于ip(internet?protocol,互聯網協議)地址、user-agent(用戶代理)請求頭和行為模式來識別惡意bot。但這些上述這些識別方式容易被攻擊者通過更換ip地址、偽造user-agent請求頭和模擬正常用戶行為模式等手段繞過識別,從而導致waf對惡意bot的識別準確率較低。因此,亟需一種能夠提高識別準確率的惡意bot識別方法。
技術實現思路
1、基于此,有必要針對上述技術問題,提供一種能夠提高惡意bot的識別準確率的惡意bot識別方法、裝置、計算機設備、計算機可讀存儲介質和計算機程序產品。
2、第一方面,
3、接收客戶端發送的客戶端問候消息,并獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息和關鍵信息;
4、基于所述關鍵信息,生成所述客戶端對應的第一ja4指紋信息;
5、基于所述第一ja4指紋信息和所述第一設備信息,對所述客戶端進行惡意bot識別。
6、在其中一個實施例中,所述獲取所述客戶端問候消息中攜帶的關鍵信息,包括:
7、通過openresty平臺中的openssl庫獲取所述客戶端問候消息中攜帶的關鍵字段;
8、通過所述openresty平臺中的nginx模塊從所述關鍵字段中獲取關鍵信息,并將所述關鍵信息存儲至預設的數據結構體中。
9、在其中一個實施例中,所述基于所述第一ja4指紋信息和所述第一設備信息,對所述客戶端進行惡意bot識別,包括:
10、在預先存儲的善意bot白名單中,確定是否存在與所述第一ja4指紋信息相同的第二ja4指紋信息,且所述第一設備信息與第二設備信息是否相同;所述善意bot白名單包含善意bot對應的ja4指紋信息和設備信息,所述第二設備信息為所述善意bot白名單中,所述第一ja4指紋信息所屬的善意bot對應的設備信息;
11、如果存在與所述第一ja4指紋信息相同的第二ja4指紋信息,且所述第一設備信息與第二設備信息相同,則確定所述客戶端為善意bot;反之,則確定所述客戶端為惡意bot。
12、在其中一個實施例中,所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息,包括:
13、獲取所述客戶端問候消息中攜帶的用戶代理請求頭字段;
14、從所述用戶代理請求頭字段中,獲取所述客戶端對應的第一設備信息。
15、在其中一個實施例中,所述方法還包括:
16、在識別所述客戶端為惡意bot的情況下,對所述客戶端發送的bot流量進行攔截處理。
17、在其中一個實施例中,所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息和關鍵信息之前,所述方法還包括:
18、獲取所述客戶端問候消息中攜帶的服務器域名;
19、基于預先存儲的防護域名庫,確定所述服務器域名是否屬于防護域名;
20、在確定所述服務器域名屬于防護域名的情況下,執行所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息和關鍵信息的步驟。
21、第二方面,本申請提供了一種惡意bot識別裝置,所述裝置包括:
22、第一獲取模塊,用于接收客戶端發送的客戶端問候消息,并獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息和關鍵信息;
23、生成模塊,用于基于所述關鍵信息,生成所述客戶端對應的第一ja4指紋信息;
24、識別模塊,用于基于所述第一ja4指紋信息和所述第一設備信息,對所述客戶端進行惡意bot識別。
25、在其中一個實施例中,所述第一獲取模塊,具體用于:
26、通過openresty平臺中的openssl庫獲取所述客戶端問候消息中攜帶的關鍵字段;
27、通過所述openresty平臺中的nginx模塊從所述關鍵字段中獲取關鍵信息,并將所述關鍵信息存儲至預設的數據結構體中。
28、在其中一個實施例中,所述識別模塊,具體用于:
29、在預先存儲的善意bot白名單中,確定是否存在與所述第一ja4指紋信息相同的第二ja4指紋信息,且所述第一設備信息與第二設備信息是否相同;所述善意bot白名單包含善意bot對應的ja4指紋信息和設備信息,所述第二設備信息為所述善意bot白名單中,所述第一ja4指紋信息所屬的善意bot對應的設備信息;
30、如果存在與所述第一ja4指紋信息相同的第二ja4指紋信息,且所述第一設備信息與第二設備信息相同,則確定所述客戶端為善意bot;反之,則確定所述客戶端為惡意bot。
31、在其中一個實施例中,所述第一獲取模塊,具體用于:
32、獲取所述客戶端問候消息中攜帶的用戶代理請求頭字段;
33、從所述用戶代理請求頭字段中,獲取所述客戶端對應的第一設備信息。
34、在其中一個實施例中,所述裝置還包括:
35、攔截模塊,用于在識別所述客戶端為惡意bot的情況下,對所述客戶端發送的bot流量進行攔截處理。
36、在其中一個實施例中,所述裝置還包括:
37、第二獲取模塊,用于獲取所述客戶端問候消息中攜帶的服務器域名;
38、確定模塊,用于基于預先存儲的防護域名庫,確定所述服務器域名是否屬于防護域名;
39、處理模塊,用于在確定所述服務器域名屬于防護域名的情況下,觸發所述第一獲取模塊執行所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息和關鍵信息的步驟。
40、第三方面,本申請提供了一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執行所述計算機程序時實現第一方面中任一項所述的方法的步驟。
41、第四方面,本申請提供了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現第一方面中任一項所述的方法的步驟。
42、第五方面,本申請提供了本文檔來自技高網...
【技術保護點】
1.一種惡意BOT識別方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述獲取所述客戶端問候消息中攜帶的關鍵信息,包括:
3.根據權利要求1所述的方法,其特征在于,所述基于所述第一JA4指紋信息和所述第一設備信息,對所述客戶端進行惡意BOT識別,包括:
4.根據權利要求1所述的方法,其特征在于,所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息,包括:
5.根據權利要求1或3所述的方法,其特征在于,所述方法還包括:
6.根據權利要求1所述的方法,其特征在于,所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息和關鍵信息之前,所述方法還包括:
7.一種惡意BOT識別裝置,其特征在于,所述裝置包括:
8.一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,其特征在于,所述處理器執行所述計算機程序時實現權利要求1至6中任一項所述的方法的步驟。
9.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行
10.一種計算機程序產品,包括計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至6中任一項所述的方法的步驟。
...【技術特征摘要】
1.一種惡意bot識別方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述獲取所述客戶端問候消息中攜帶的關鍵信息,包括:
3.根據權利要求1所述的方法,其特征在于,所述基于所述第一ja4指紋信息和所述第一設備信息,對所述客戶端進行惡意bot識別,包括:
4.根據權利要求1所述的方法,其特征在于,所述獲取所述客戶端問候消息中攜帶的所述客戶端對應的第一設備信息,包括:
5.根據權利要求1或3所述的方法,其特征在于,所述方法還包括:
6.根據權利要求1所述的方法,其特征在于,所述獲取所述客戶端問候消息中...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。