JP2024537659A - Machine learning based system and method using URL feature hashing, HTML encoding, and content page embedded images to detect phishing websites - Google Patents
Machine learning based system and method using URL feature hashing, HTML encoding, and content page embedded images to detect phishing websites Download PDFInfo
- Publication number
- JP2024537659A JP2024537659A JP2024516418A JP2024516418A JP2024537659A JP 2024537659 A JP2024537659 A JP 2024537659A JP 2024516418 A JP2024516418 A JP 2024516418A JP 2024516418 A JP2024516418 A JP 2024516418A JP 2024537659 A JP2024537659 A JP 2024537659A
- Authority
- JP
- Japan
- Prior art keywords
- phishing
- url
- image
- html
- content page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 125
- 238000010801 machine learning Methods 0.000 title description 31
- 238000009877 rendering Methods 0.000 claims abstract description 55
- 238000012549 training Methods 0.000 claims description 56
- 238000003860 storage Methods 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 30
- 238000013528 artificial neural network Methods 0.000 claims description 27
- 238000004519 manufacturing process Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 15
- 230000002457 bidirectional effect Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 abstract description 25
- 238000010586 diagram Methods 0.000 abstract description 24
- 238000001514 detection method Methods 0.000 description 58
- 239000013598 vector Substances 0.000 description 21
- 238000005516 engineering process Methods 0.000 description 20
- 230000015654 memory Effects 0.000 description 9
- 238000010606 normalization Methods 0.000 description 9
- 238000013527 convolutional neural network Methods 0.000 description 7
- 238000013526 transfer learning Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003278 mimic effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 241001449342 Chlorocrambe hastata Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 235000014820 Galium aparine Nutrition 0.000 description 1
- 240000005702 Galium aparine Species 0.000 description 1
- 244000035744 Hura crepitans Species 0.000 description 1
- 241000238634 Libellulidae Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000001994 activation Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Image Analysis (AREA)
Abstract
URLをパース及びハッシュ化して特徴量ハッシュを生成するURL特徴量ハッシャと、URLのページにアクセスして内部的にレンダリングし、HTMLトークンを抽出し、レンダリングの画像をキャプチャするヘッドレスブラウザと、を有する、URL及びコンテンツページをフィッシングか、又はそうでないとして分類する、フィッシング分類器が開示される。また、URLをパース及びハッシュ化して特徴量ハッシュにするURL特徴量ハッシャと、URLのページにアクセスしてページを内部的にレンダリングし、レンダリングから単語を抽出し、ページの画像をキャプチャするヘッドレスブラウザと、を有する、URLとこのURLを介してアクセスされたコンテンツページと、をフィッシングか、又はそうでないとして分類する、フィッシング分類器が開示される。URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はそうでないとして分類することが更に開示される。1つ以上の開示に加えて、フィッシング分類層、URL埋め込み器、及びHTMLエンコーダがある。
【選択図】なし
A phishing classifier is disclosed for classifying URLs and content pages as phishing or not, comprising a URL feature hasher that parses and hashes URLs into feature hashes, and a headless browser that visits and internally renders the pages of the URLs, extracts HTML tokens, and captures an image of the rendering. Also disclosed is a phishing classifier for classifying URLs and content pages accessed via the URLs as phishing or not, comprising a URL feature hasher that parses and hashes URLs into feature hashes, and a headless browser that visits and internally renders the pages of the URLs, extracts words from the rendering, and captures an image of the pages. Classifying URLs and content pages accessed via the URLs as phishing or not is further disclosed. In addition to one or more of the disclosures, there is a phishing classification layer, a URL embedder, and an HTML encoder.
[Selection diagram] None
Description
関連出願の相互参照
本出願は、以下の優先権及び利益を主張する:
CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to and the benefit of:
現在は2022年9月13日に発行された米国特許第11,444,978号(代理人整理番号NSKO1052-1)である、2021年9月14日に出願された「A Machine Learning-Based system for Detecting Phishing Websites Using the URLs, Word encodings and Images of Content Pages」と題された米国出願第17/475,236号、及び U.S. Application No. 17/475,236, entitled "A Machine Learning-Based System for Detecting Phishing Websites Using the URLs, Word encodings and Images of Content Pages," filed on September 14, 2021, which is now U.S. Patent No. 11,444,978 (Attorney Docket No. NSKO1052-1), issued on September 13, 2022; and
現在は2022年5月17日に発行された米国特許第11,336,689号(代理人整理番号NSKO1060-1)である、2021年9月14日に出願された「Detecting Phishing Websites via a Machine Learning-Based System Using URL Feature Hashes, HTML Encodings and Embedded Images of Content Pages」と題された米国出願第17/475,233号、及び U.S. Application No. 17/475,233, entitled "Detecting Phishing Websites via a Machine Learning-Based System Using URL Feature Hashes, HTML Encodings and Embedded Images of Content Pages," filed September 14, 2021, which is now U.S. Patent No. 11,336,689 (Attorney Docket No. NSKO1060-1), issued May 17, 2022; and
現在は2022年9月6日に発行された米国特許第11,438,377号(代理人整理番号:NSKO1061-1)である、2021年9月14日に出願された「Machine Learning-Based Systems and Methods of Using URLs and HTML Encodings for Detecting Phishing Websites」と題された米国出願第17/475,230号。 U.S. Application No. 17/475,230, entitled "Machine Learning-Based Systems and Methods of Using URLs and HTML Encodings for Detecting Phishing Websites," filed on September 14, 2021, which is now U.S. Patent No. 11,438,377, issued on September 6, 2022 (Attorney Docket No. NSKO1061-1).
関連事例
本出願はまた、本明細書に完全に記載されているかのように、あらゆる目的で参照により援用される以下の出願にも関連する。
RELATED CASES This application is also related to the following applications, which are incorporated by reference for all purposes as if fully set forth herein:
現在は2021年8月3日に発行された米国特許第11,082,445号(代理人整理番号:NSKO1037-1)である2021年1月21日に出願された「Preventing Phishing Attacks Via Document Sharing」と題された米国出願第17/154,978号の継続である、2021年7月30日に出願された「Preventing Cloud-Based Phishing Attacks Using Shared Documents with Malicious Links」と題された米国出願第17/390,803号(代理人整理番号1037-2)。 U.S. Application No. 17/390,803 entitled "Preventing Cloud-Based Phishing Attacks Using Shared Documents with Malicious Links" filed on July 30, 2021 (Attorney Docket No. 1037-2), which is a continuation of U.S. Application No. 17/154,978 entitled "Preventing Phishing Attacks Via Document Sharing" filed on January 21, 2021, which is now U.S. Application No. 11,082,445 issued on August 3, 2021 (Attorney Docket No. NSKO1037-1).
援用
以下の材料は、本出願において参考として援用される。
“KDE Hyper Parameter Determination,”Yi Zhang et al.,Netskope,Inc.、
2016年9月2日に出願された「Machine Learning Based Anomaly Detection」と題する米国非仮出願第15/256,483号(代理人整理番号NSKO1004-2)(現在は2019年4月23日に発行された米国特許第10,270,788号)、
2019年4月19日に出願された「Machine Learning Based Anomaly Detection」と題する米国非仮出願第16/389,861号(代理人整理番号NSKO1004-3)(現在は2021年6月1日に発行された米国特許第11,025,653号)、
2014年3月05日に出願された「Security For Network Delivered Services」と題する米国非仮出願第14/198,508号(代理人整理番号NSKO1000-3)(現在は2016年2月23日に発行された米国特許第9,270,765号)、
2016年12月02日に出願された「Systems and Methods of Enforcing Multi-Part Policies on Data-Deficient Transactions of Cloud Computing Services」と題する米国非仮出願第15/368,240号(代理人整理番号NSKO1003-2)(現在は2020年11月03日に発行された米国特許第10,826,940号)、及び2016年3月11日に出願された「Systems and Methods of Enforcing Multi-Part Policies on Data-Deficient Transactions of Cloud Computing Services」と題する米国仮出願第62/307,305号(代理人整理番号NSKO1003-1)、
“Cloud Security for Dummies,Netskope Special Edition”by Cheng,Ithal,Narayanaswamy,and Malmskog,John Wiley&Sons,Inc.2015;
“Netskope Introspection”by Netskope,Inc.;
“Data Loss Prevention and Monitoring in the Cloud”by Netskope,Inc.;
“The 5 Steps to Cloud Confidence”by Netskope,Inc.;
“Netskope Active Cloud DLP”by Netskope,Inc.;
「Repave the Cloud-Data Breach Collision Course」 by Netskope, Inc.、及び
「Netskope Cloud Confidence Index(商標)」by Netskope,Inc.
INCORPORATION The following materials are incorporated by reference in this application.
“KDE Hyper Parameter Determination,” Yi Zhang et al. , Netskop, Inc. ,
U.S. Non-provisional Application No. 15/256,483, entitled “Machine Learning Based Anomaly Detection,” filed September 2, 2016 (Attorney Docket No. NSKO1004-2) (now U.S. Pat. No. 10,270,788, issued April 23, 2019);
U.S. Non-provisional Application No. 16/389,861, entitled “Machine Learning Based Anomaly Detection,” filed April 19, 2019 (Attorney Docket No. NSKO1004-3) (now U.S. Pat. No. 11,025,653, issued June 1, 2021);
U.S. Non-provisional Application No. 14/198,508, entitled “Security For Network Delivered Services,” filed March 05, 2014 (Attorney Docket No. NSKO1000-3) (now U.S. Pat. No. 9,270,765, issued February 23, 2016);
No. 15/368,240 (Attorney Docket No. NSKO1003-2), filed December 2, 2016 (now U.S. Pat. No. 10,826,940, issued November 3, 2020), entitled “Systems and Methods of Enforcing Multi-Part Policies on Data-Deficient Transactions of Cloud Computing Services” and U.S. Pat. No. 62/307,305 (Attorney Docket No. NSKO1003-1), entitled "Transactions of Cloud Computing Services";
“Cloud Security for Dummies, Netskope Special Edition” by Cheng, Ithal, Narayanaswamy, and Malmskog, John Wiley & Sons, Inc. 2015;
“Netskope Introspection” by Netskop, Inc. ;
“Data Loss Prevention and Monitoring in the Cloud” by Netskop, Inc. ;
“The 5 Steps to Cloud Confidence” by Netskope, Inc. ;
“Netskope Active Cloud DLP” by Netskope, Inc. ;
"Repave the Cloud-Data Breach Collision Course" by Netskope, Inc., and "Netskope Cloud Confidence Index™" by Netskope, Inc.
開示される技術は、概して、クラウドベースのセキュリティに関し、より具体的には、コンテンツページのURL、単語エンコーディング、及び画像を使用して、フィッシングウェブサイトを検出するためのシステム及び方法に関する。また、コンテンツページのURL特徴量ハッシュ、HTMLエンコーディング、及び埋め込まれた画像を使用するための方法及びシステムが開示される。開示される技術は、機械学習及び統計分析を通じて、URLリンク及びダウンロードされたHTMLを介してリアルタイムでフィッシングを検出することに更に関する。 The disclosed technology relates generally to cloud-based security, and more specifically to systems and methods for detecting phishing websites using URLs, word encodings, and images of content pages. Also disclosed are methods and systems for using URL feature hashes, HTML encodings, and embedded images of content pages. The disclosed technology further relates to detecting phishing in real-time via URL links and downloaded HTML through machine learning and statistical analysis.
このセクションで考察される主題は、単にこのセクションにおけるその言及の結果として先行技術であると想定されるべきではない。同様に、このセクションで言及される問題、又は背景として提供される主題と関連する問題は、先行技術において以前に認識されていたと仮定されるべきではない。このセクションの主題は、異なるアプローチを表すにすぎず、それ自体、特許請求される技術の実装態様に対応することもできる。 The subject matter discussed in this section should not be assumed to be prior art merely as a result of its mention in this section. Similarly, it should not be assumed that the problems mentioned in this section, or related to the subject matter provided as background, have been previously recognized in the prior art. The subject matter in this section merely represents different approaches and may, as such, correspond to implementation aspects of the claimed technology.
スピアヘッドフィッシングと呼ばれることもあるフィッシングが増加している。フィッシングによって盗まれたパスワードを使用して取得された文書の悪用によって、全国ニュースが中断されている。通常、電子メールには正当に見えるリンクが含まれており、正当に見えるページにつながり、ユーザは、フィッシング攻撃の危険にさらされるパスワードを入力する。クレジットカードスキマー又はガソリンポンプ若しくはATMのシムのようなクリーバーフィッシングサイトは、入力されたパスワードを実際のウェブサイトに転送し、経路から外れ得るため、ユーザは、パスワード盗難が発生したときにパスワード盗難を検出しない。近年、在宅勤務は、フィッシング攻撃の大幅な増加につながっている。 Phishing, sometimes called spearhead phishing, is on the rise. National news has been punctuated by exploits of documents obtained using passwords stolen through phishing. Typically, emails contain legitimate-looking links that lead to legitimate-looking pages where users enter their passwords, exposing them to a phishing attack. Cleaver phishing sites, such as credit card skimmers or gas pump or ATM sims, can forward the entered password to a real website, taking it out of the way so that users do not detect the password theft when it occurs. Work-from-home efforts in recent years have led to a significant increase in phishing attacks.
フィッシングという用語は、無防備なユーザからウェブ上で機密情報を不正に取得するためのいくつかの方法を指す。フィッシングは、部分的には、ますます洗練された誘導を使用して会社の極秘情報を引き出すことから生じる。これらの方法は、一般に、フィッシング攻撃と称される。レンダリングされたウェブページが正当なログインページの外観を模倣している場合、ウェブサイトユーザは、フィッシング攻撃の被害に遭う。フィッシング攻撃の被害者は、不正なウェブサイトに誘導され、銀行口座、ログインパスワード、社会保障IDなどの機密情報の暴露をもたらす。 The term phishing refers to several methods for fraudulently obtaining confidential information from unsuspecting users over the web. Phishing stems, in part, from the use of increasingly sophisticated lures to elicit confidential company information. These methods are commonly referred to as phishing attacks. Website users fall victim to phishing attacks when the rendered web page mimics the appearance of a legitimate login page. Victims of phishing attacks are lured to fraudulent websites, resulting in the disclosure of confidential information such as bank account, login passwords, and social security IDs.
最近のデータ侵害調査報告書によると、ソーシャルエンジニアリングに基づく大規模な攻撃の風潮が高まっている。これは、一部には、エクスプロイトの難易度の増加に起因している可能性があり、また一部には、そのようなエクスプロイトを防止及び検出するための機械学習(ML)アルゴリズムの進歩の利用の賜物である。したがって、フィッシング攻撃は、より頻繁かつ洗練なものになっている。新しい防御ソリューションが必要とされている。 Recent data breach investigation reports indicate that there is a growing trend of large-scale attacks based on social engineering. This can be attributed in part to the increasing difficulty of exploits and in part to the use of advances in machine learning (ML) algorithms to prevent and detect such exploits. Phishing attacks are therefore becoming more frequent and sophisticated. New defensive solutions are needed.
ML/DLを使用して、URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するための機会が生じる。また、URLと、このURLリンクを介してアクセスされ、かつダウンロードされたHTMLと、をリアルタイムでフィッシングか、又はフィッシングでないとして分類する機会も出現する。 Using ML/DL, an opportunity arises to classify URLs and content pages accessed via the URL as phishing or not phishing. There is also an opportunity to classify URLs and HTML accessed and downloaded via the URL links as phishing or not phishing in real time.
図面において、同様の参照文字は、概して、異なる図全体を通して同様の部分を指す。また、図面は、必ずしも縮尺通りではなく、代わりに、概して、開示される技術の原理を図示することに重点が置かれている。以下の説明では、開示される技術の種々の実装態様が、以下の図面を参照して説明される。 In the drawings, like reference characters generally refer to like parts throughout the different views. Also, the drawings are not necessarily to scale, with emphasis instead generally being placed upon illustrating the principles of the disclosed technology. In the following description, various implementations of the disclosed technology are described with reference to the following drawings:
以下の詳細な説明は、図面を参照して行われる。特許請求の範囲によって定義されるその範囲を限定するためではなく、開示される技術を例示するために、サンプルの実装態様が説明される。この議論は、当業者が開示される技術を作製及び使用することを可能にするために提示され、特定の用途及びその要件の文脈において提供される。開示される実施形態に対する様々な修正は、当業者には容易に明白であり、本明細書で定義される一般的な原理は、本発明の趣旨及び範囲から逸脱することなく、他の実装態様態及び用途に適用され得る。したがって、開示される技術は、示される実装態様に限定されるものではなく、本明細書で開示される原理及び特徴と一致する最も広い範囲を与えられるべきである。 The following detailed description is provided with reference to the drawings. Sample implementations are described to illustrate the disclosed technology, but not to limit its scope as defined by the claims. The discussion is presented to enable those skilled in the art to make and use the disclosed technology, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other implementations and applications without departing from the spirit and scope of the invention. Thus, the disclosed technology is not intended to be limited to the implementations shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
開示される技術によって対処される問題は、フィッシングウェブサイトの検出である。セキュリティ部門は、フィッシングが生じるとフィッシングキャンペーンをカタログ化しようと試みる。セキュリティベンダは、フィッシングウェブサイトのリストに依存して、セキュリティエンジンを動かす。フィッシングリンクをカタログ化する独自のソース及びオープンソースの両方が利用可能である。フィッシングユニバーサルリソースロケータ(URL)リストの2つのオープンソースのコミュニティの例は、PhishTank及びOpenPhishである。セキュリティ部門がリストを使用して、悪意のあるリンクを分析し、かつ悪意のあるURLからシグネチャを生成する。シグネチャを使用して、典型的には、URLの一部若しくは全て、又はそのコンパクトハッシュを一致させることによって、悪意のあるリンクを検出する。シグネチャからの一般化が、ハッカーがシステムを攻撃するために使用することができるゼロデイフィッシング攻撃を阻止するための主なアプローチとなっている。ゼロデイとは、ベンダ又は開発者が知ったばかりであり、かつ修正するための日数がゼロである、最近発見されたセキュリティ脆弱性を指す。 The problem addressed by the disclosed technology is the detection of phishing websites. Security departments attempt to catalog phishing campaigns as they occur. Security vendors rely on lists of phishing websites to power their security engines. Both proprietary and open source sources are available to catalog phishing links. Two open source community examples of phishing Universal Resource Locator (URL) lists are PhishTank and OpenPhish. Security departments use the lists to analyze malicious links and generate signatures from malicious URLs. Signatures are used to detect malicious links, typically by matching part or all of the URL or a compact hash of it. Generalization from signatures has become the primary approach to thwart zero-day phishing attacks that hackers can use to attack systems. Zero-day refers to a recently discovered security vulnerability that a vendor or developer has just learned about and has zero days to fix.
フィッシング詐欺師が捕まるのを回避するため、フィッシングキャンペーンは、フィッシングリンクのウェブサイトが分析され得る前に終了することがある。セキュリティ部門によってウェブサイトがリストに掲載されるとすぐに、フィッシング詐欺師によってウェブサイトが解体され得る。収集されたURLの分析は、アクティブなフィッシングサイトへの悪意のあるURLを追跡することよりも確実に永続する。サイトは、サイトが現れた時と同じように突然消失する。一部には消失するサイトに起因して、最先端の技術は、URLを分析することとなっている。 To avoid getting caught, phishing campaigns may end before the website of the phishing link can be analyzed. The website can be taken down by the phisher as soon as it is listed by security departments. Analysis of collected URLs is more likely to persist than tracing malicious URLs to active phishing sites. Sites disappear as suddenly as they appeared. Due in part to disappearing sites, state of the art technology has become URL analysis.
開示される技術は、機械学習/深層学習(ML/DL)を、非常に低い偽陽性率及び良好な再現率でフィッシング検出に適用する。テキスト/画像解析に基づく、かつHTML解析に基づく、3つの転移学習技法が提示される。 The disclosed technology applies machine learning/deep learning (ML/DL) to phishing detection with very low false positive rates and good recall. Three transfer learning techniques are presented, based on text/image analysis and based on HTML analysis.
第1の技法では、我々は、ウェブページのテキストコンテンツ及び視覚コンテンツを埋め込むために、多言語自然言語理解及びコンピュータビジョンのための新しい深層学習アーキテクチャを利用することによって、転移学習を使用する。フィッシング検出にML/DLを適用する第1の世代は、ウェブページテキスト及びウェブページ画像の連結埋め込みを使用する。我々は、テキスト及び画像の埋め込みに関する一般的な訓練からの転移学習を利用して、Transformerからの双方向エンコーダ表現(BERT)及び残差ニューラルネットワーク(ResNet)のデコーダ関数などの、モデルのエンコーダ関数を使用する検出分類器を訓練する。大量のデータで訓練されるため、そのようなモデルの最終層は、ウェブページの視覚コンテンツ及びテキストコンテンツのための信頼性の高いエンコーディングとして機能する。良性の、フィッシングでないリンクはフィッシングサイトよりもはるかに豊富であり、フィッシングでないリンクのブロックは迷惑であるため、偽陽性を低減するように注意が払われる。 In the first technique, we use transfer learning by leveraging a new deep learning architecture for multilingual natural language understanding and computer vision to embed the textual and visual content of web pages. The first generation of applying ML/DL to phishing detection uses concatenated embeddings of web page text and web page images. We use transfer learning from general training on text and image embeddings to train a detection classifier that uses the model's encoder function, such as the Bidirectional Encoder Representation (BERT) from Transformer and the decoder function of a Residual Neural Network (ResNet). Because it is trained on a large amount of data, the final layer of such a model serves as a reliable encoding for the visual and textual content of a web page. Care is taken to reduce false positives, since benign, non-phishing links are much more abundant than phishing sites, and blocking non-phishing links is a nuisance.
フィッシング検出にML/DLを適用する第2の技法は、ブラウザによるディスプレイへのレンダリングを複製するためのHTMLの埋め込みを反直感的にデコードする新しいエンコーダ-デコーダペアを作成する。埋め込みは、もちろん情報損失がある。デコードは、ブラウザが達成するものよりもはるかに正確でない。HTMLコードを埋め込むことへのエンコーダ-デコーダアプローチは、転移学習を容易にする。エンコーダがHTMLを埋め込むように訓練されると、分類器が、デコーダを置き換える。埋め込みに基づく転移学習は、比較的小さな訓練コーパスを用い、実用的である。現在、フィッシングページの例のうちのわずか20k又は40kの例が、埋め込みを処理する2つの全結合層の分類器を訓練するのに十分であることが証明されている。HTMLの第2世代の埋め込みは、ResNet画像埋め込み、URL特徴量埋め込み、又はResNet画像埋め込み及びURL特徴量埋め込みの両方などの、他の埋め込みを連結することによって強化され得る。 The second technique for applying ML/DL to phishing detection creates a new encoder-decoder pair that counter-intuitively decodes HTML embeddings to replicate the browser's rendering to the display. Embeddings are of course information-lossy; the decoding is much less accurate than what the browser achieves. The encoder-decoder approach to embedding HTML code facilitates transfer learning. Once the encoder is trained to embed HTML, a classifier replaces the decoder. Embedding-based transfer learning uses a relatively small training corpus and is practical. Currently, it has been proven that as few as 20k or 40k examples of phishing pages are sufficient to train a classifier with two fully connected layers that process embeddings. The second generation embeddings of HTML can be augmented by concatenating other embeddings, such as ResNet image embeddings, URL feature embeddings, or both ResNet image embeddings and URL feature embeddings.
しかしながら、新しいURLのスケールは、深層学習アーキテクチャの高い計算複雑性、及びウェブページのコンテンツのレンダリング時間及びパース時間に起因して、これらのコンテンツを使用するウェブページのリアルタイム検出を妨げる可能性がある。 However, the scale of new URLs can prevent real-time detection of web pages that use these contents due to the high computational complexity of deep learning architectures and the rendering and parsing times of web page content.
ML/DLをフィッシング検出に適用する第3の世代は、URL埋め込み器、HTMLエンコーダ、及びフィッシング分類器層を使用して、URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類し、悪意のあるウェブページが検出されたときにリアルタイムで反応することができる。この第3の技術は、ウェブサイトを訪問する必要がなく、訓練されたより高速のモデルを使用して、疑わしいURLを効果的にフィルタリングする。疑わしいURLを、最終検出のために後で第1又は第2の技術にルーティングすることもできる。 The third generation of applying ML/DL to phishing detection uses a URL embedder, HTML encoder, and phishing classifier layer to classify URLs and content pages accessed through the URLs as phishing or not, and can react in real-time when malicious web pages are detected. This third technique effectively filters suspicious URLs without the need to visit the website and uses faster trained models. Suspicious URLs can also be routed later to the first or second techniques for final detection.
次に、オフラインモードで、及びリアルタイムでURLリンク及びダウンロードされたHTMLを介してフィッシングを検出するための例示的なシステムについて説明する。 Next, we describe an exemplary system for detecting phishing via URL links and downloaded HTML in offline mode and in real time.
アーキテクチャ
図1は、URLリンク及びダウンロードされたHTMLを介してフィッシングを検出するためのシステム100のアーキテクチャレベルの概略図を示す。システム100はまた、リダイレクトされた、又は隠された、URLリンク及びリアルタイムでダウンロードされたHTMLを介してフィッシングを検出するための機能性を含む。図1はアーキテクチャ図であるため、説明をより明確にするために、一部の詳細は意図的に省略されている。図1の説明は以下のように構成される。最初に、図の要素について説明し、その後、それらの相互接続について説明する。次に、システムにおける要素の使用をより詳細に説明する。
Architecture Figure 1 shows an architecture level schematic diagram of a
図1は、エンドポイント166を含むシステム100を含む。ユーザエンドポイント166は、クラウドベースのストア136及びクラウドベースのサービス138上に記憶されたデータへのアクセス及び対話を提供する、コンピュータ174、スマートフォン176、及びコンピュータタブレット178などのデバイスを含み得る。別の組織ネットワークでは、組織ユーザは、追加のデバイスを利用し得る。インラインプロキシ144が、ネットワーク155を通じて、特に、ネットワーク管理者122、ネットワークポリシー132、評価エンジン152、及びデータストア164を含むネットワークセキュリティシステム112を通じて、ユーザエンドポイント166とクラウドベースのサービス138との間に介在する。インラインプロキシ144は、ネットワークセキュリティシステム112の一部として、ネットワーク155を通じてアクセス可能である。インラインプロキシ144は、ユーザエンドポイント166と、クラウドベースのストア136と、他のクラウドベースのサービス138との間のトラフィックの監視及び制御を提供する。インラインプロキシ144は、HTML及びウェブページのスナップショットを収集し、データセットをデータストア164に記憶するアクティブスキャナ154を有する。トラフィックからリアルタイムで特徴量を抽出することができ、かつスナップショットがライブトラフィックから収集されない場合、アクティブスキャナ154は、フィッシング検出にML/DLを適用する第3の世代のシステムにおけるように、URLのウェブページコンテンツをクロールするために必要とされない。フィッシングウェブサイトを検出するための3つのML/DLシステムについて、以下で詳細に説明する。インラインプロキシ144は、特に、データ損失防止(DLP)ポリシー及びプロトコルを含むネットワークセキュリティポリシーを実施するために、ユーザエンドポイント166とクラウドベースのサービス138との間のネットワークトラフィックを監視する。評価エンジン152は、フィッシングウェブサイトの開示される検出を介して、悪意があるとみなされるURLのデータベースレコードをチェックし、これらのフィッシングURLは、自動的かつ恒久的にブロックされる。
FIG. 1 includes a
URLリンク及びダウンロードされたHTMLを介してリアルタイムでフィッシングを検出するために、ユーザエンドポイント166とクラウドベースのストレージプラットフォームとの間に位置付けられたインラインプロキシ144は、着信トラフィックを検査し、以下に説明されるフィッシング検出エンジン202、404、602に転送する。インラインプロキシ144は、ユーザがプロキシを介してページにアクセスすることを可能にする前に、リンクに対応するコンテンツをサンドボックス化し、リンクを検査/探索して、URLによって指し示されるページが安全であることを確認するように構成され得る。次いで、悪意のあるものとして識別されたリンクを隔離し、セキュアなサンドボックス化を含む、知られている技法を利用して脅威を検査することができる。
To detect phishing in real-time via URL links and downloaded HTML, an in-
図1の説明を続けると、クラウドベースのサービス138は、クラウドベースのホスティングサービス、ウェブ電子メールサービス、ビデオ、メッセージング、及び音声通話サービス、ストリーミングサービス、ファイル転送サービス、並びにクラウドベースのストレージサービスを含む。ネットワークセキュリティシステム112は、公共ネットワーク155を介してユーザエンドポイント166及びクラウドベースのサービス138に接続する。データストア164は、悪意のあるURLからの悪意のあるリンク及びシグネチャのリストを記憶する。シグネチャは、典型的には、URLの一部若しくは全て、又はそのコンパクトハッシュを一致させることによって、悪意のあるリンクを検出するために使用され、データストア164は、1つ以上のテナントから共通データベースイメージのテーブル内に情報を記憶して、マルチテナントデータベースシステム(MTDS)などの多くの方法で実装され得るオンデマンドデータベースサービス(ODDS)を形成する。データベース画像は、1つ以上のデータベースオブジェクトを含むことができる。他の実装態様では、データベースは、リレーショナルデータベース管理システム(RDBMS)、オブジェクト指向データベース管理システム(OODBMS)、分散ファイルシステム(DFS)、ノースキーマデータベース、又は任意の他のデータ記憶システム若しくはコンピューティングデバイスであり得る。一部の実装態様では、収集されたメタデータは、処理及び/又は正規化される。場合によっては、メタデータは、構造化データを含み、機能性は、クラウドベースのサービス138によって提供される特定のデータ構造をターゲットとする。フリーテキストなどの非構造化データもまた、クラウドベースのサービス138によって提供され、クラウドベースのサービス138に戻ってターゲットにされ得る。構造化データ及び非構造化データの両方が、JSON(JavaScriptオブジェクト表記)、BSON(バイナリJSON)、XML、Protobuf、Avro、又はThriftオブジェクトのような半構造化データ形式で記憶されることが可能であり、半構造化データ形式は、文字列フィールド(又は列)と、数字、文字列、配列、オブジェクトなどのような潜在的に異なる型の対応する値と、からなる。他の実装態様では、JSONオブジェクトは、ネストされることができ、フィールドは、多値、例えば、配列、ネストされた配列などであり得る。これらのJSONオブジェクトは、Apache Cassandra(商標)、GoogleのBigtable(商標)、HBase(商標)、Voldemort(商標)、CouchDB(商標)、MongoDB(商標)、Redis(商標)、Riak(商標)、Neo4j(商標)などのようなスキーマレス又はNoSQLキーバリューメタデータストア178に記憶され、これは、SQLのデータベースと同等のキースペースを使用して、パースされたJSONオブジェクトを記憶する。各キースペースは、テーブルに類似し、かつ行と列のセットとで構成される列ファミリに分割される。
Continuing with the description of FIG. 1, the cloud-based services 138 include cloud-based hosting services, web email services, video, messaging, and voice calling services, streaming services, file transfer services, and cloud-based storage services. The network security system 112 connects to the
図1の説明を更に続けると、システム100は、任意の数のクラウドベースのサービス138、すなわち、ポイントツーポイントストリーミングサービス、ホストサービス、クラウドアプリケーション、クラウドストア、クラウドコラボレーション及びメッセージングプラットフォーム、並びにクラウド顧客関係管理(CRM)プラットフォームを含むことができる。サービスには、BitTorrent(BT)、ユーザデータグラムプロトコル(UDP)ストリーミング及びファイル転送プロトコル(FTP)などのポータルトラフィックのためのプロトコルを介したピアツーピアファイル共有(P2P)と、セッション開始プロトコル(SIP)及びSkypeを介したインスタントメッセージオーバーインターネットプロトコル(IP)及びモバイルフォンコーリングオーバーLTE(VoLTE)などの音声、ビデオ及びメッセージングマルチメディア通信セッションとが含まれ得る。サービスは、インターネットトラフィック、クラウドアプリケーションデータ、及び汎用ルーティングカプセル化(GRE)データを処理することができる。ネットワークサービス又はアプリケーションは、ウェブベース(例えば、ユニフォームリソースロケータ(URL)を介してアクセスされる)又は同期クライアントなどのネイティブとすることができる。例としては、SaaS(software-as-a-service)提供物、PaaS(platform-as-a-service)提供物、及びIaaS(infrastructure-as-a-service)提供物、並びにURLを介して公開される内部エンタープライズアプリケーションが挙げられる。今日の一般的なクラウドベースのサービスの例として、Salesforce.com(商標)、Box(商標)、Dropbox(商標)、Google Apps(商標)、Amazon AWS(商標)、Microsoft Office 365(商標)、Workday(商標)、Oracle on Demand(商標)、Taleo(商標)、Yammer(商標)、Jive(商標)、及びConcur(商標)が挙げられる。
Continuing with the description of FIG. 1, the
システム100の要素の相互接続において、ネットワーク155は、コンピュータ、タブレット及びモバイルデバイス、クラウドベースのホスティングサービス、ウェブ電子メールサービス、ビデオ、メッセージング、及び音声通話サービス、ストリーミングサービス、ファイル転送サービス、クラウドベースのストレージサービス136、並びにネットワークセキュリティシステム112を通信可能に結合する。通信経路は、パブリック及び/又はプライベートネットワーク上のポイントツーポイントであり得る。通信は、種々のネットワーク、例えば、プライベートネットワーク、VPN、MPLS回路、又はインターネットを経由して生じることができ、適切なアプリケーションプログラムインターフェース(API)及びデータ交換フォーマット、例えば、REST、JSON、XML、SOAP、及び/又はJMSを使用することができる。全ての通信は暗号化することができる。この通信は、概して、EDGE、3G、4G LTE、Wi-Fi、及びWiMAXなどのプロトコルを介して、ローカルエリアネットワーク(LAN)、WAN(広域通信網)、電話ネットワーク(パブリック交換電話網(PSTN))、セッション開始プロトコル(SIP)、無線ネットワーク、ポイントツーポイントネットワーク、スター型ネットワーク、トークンリングネットワーク、ハブネットワーク、モバイルインターネットを含むインターネットなどのネットワークを介する。加えて、ユーザ名/パスワード、OAuth、Kerberos、SecureID、デジタル証明書などの種々の認可及び認証技術が、通信をセキュアにするために使用され得る。
In interconnecting the elements of the
図1のシステムアーキテクチャの説明を更に続けると、ネットワークセキュリティシステム112は、互いに通信するように結合された1つ以上のコンピュータ及びコンピュータシステムを含むことができるデータストア164を含む。それらはまた、1つ以上の仮想コンピューティング及び/又はストレージリソースであり得る。例えば、ネットワークセキュリティシステム112は、1つ以上のAmazon EC2インスタンスとすることができ、データストア164は、Amazon S3(商標)ストレージとすることができる。直接物理コンピュータ又は従来の仮想マシン上でネットワークセキュリティシステム112を実装するのではなく、Salesforce製のRackspace、Heroku、又はForce.comなどの他のサービスとしてのコンピューティングプラットフォームを使用することができる。加えて、セキュリティ機能を実装するために、1つ以上のエンジンを使用することができ、1つ以上のポイントオブプレゼンス(POP)を確立することができる。図1のエンジン又はシステムコンポーネントは、種々のタイプのコンピューティングデバイス上で実行されるソフトウェアによって実装される。例示的なデバイスは、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、及びサーバファーム、又は任意の他のデータ処理システム若しくはコンピューティングデバイスである。エンジンは、異なるネットワーク接続を介してデータベースに通信可能に結合することができる。
Continuing with the description of the system architecture of FIG. 1, the network security system 112 includes a
システム100は、特定のブロックを参照して本明細書で説明されるが、ブロックは、説明の便宜のために定義され、構成部品の特定の物理的配置を必要とすることを意図するものではないことを理解されたい。更に、ブロックは、物理的に別個のコンポーネントに対応する必要はない。物理的に別個のコンポーネントが使用される限りにおいて、コンポーネント間の接続は、必要に応じて有線及び/又は無線とすることができる。異なる要素又はコンポーネントは、単一のソフトウェアモジュールに組み合わせることができ、複数のソフトウェアモジュールは、同じプロセッサ上で実行することができる。
While
悪意のある行為者の最善の試みにもかかわらず、フィッシングウェブサイトのコンテンツ及び外観は、開示される深層学習モデルがフィッシングウェブサイトを確実に検出するために利用することができる特徴量を提供する。次に説明される開示されるシステムでは、我々は、ウェブページのテキストコンテンツ及び視覚コンテンツを埋め込むために、多言語自然言語理解及びコンピュータビジョンのための新しい深層学習アーキテクチャを利用することによって、転移学習を使用する。 Despite the best attempts of malicious actors, the content and appearance of phishing websites provide features that the disclosed deep learning models can exploit to reliably detect phishing websites. In the disclosed system described next, we use transfer learning by leveraging a novel deep learning architecture for multilingual natural language understanding and computer vision to embed the textual and visual content of web pages.
図2は、URL特徴量ハッシュと、自然言語(NL)単語のエンコーディングと、フィッシングサイトを検出するためのキャプチャされたウェブサイト画像の埋め込みと、を用いるML/DLを利用する、開示されるフィッシング検出エンジン202の高レベルブロック図200を例示している。開示されるフィッシング分類器層275は、特定のウェブサイトがフィッシングウェブサイトである可能性がどのくらいあるかを表す尤度スコア285を生成する。一実施形態では、フィッシング検出エンジン202は、エンコーダ264として100を超える言語をサポートするTransformer(BERT)モデルからの多言語双方向エンコーダ表現を利用し、画像に対する残差ニューラルネットワーク(ResNet50)を埋め込み器256として利用する。URL特徴量ハッシュ242、単語エンコーディング265、及び画像埋め込み257は、次いで、以下で説明されるように、最終訓練及び推論のためにニューラルネットワークフィッシング分類器層275に渡される。
2 illustrates a high-level block diagram 200 of the disclosed
エンコーダを、エンコーダとデコーダをペアリングすることによって訓練することができる。エンコーダ及びデコーダを、埋め込み空間に入力を圧縮し、次いで、埋め込みから入力を再構築するように訓練することができる。エンコーダが訓練されると、本明細書で説明されるように、エンコーダを再利用することができる。フィッシング分類器層275は、URL n-gramのURL特徴量ハッシュ242と、コンテンツページから抽出された単語の単語エンコーディング265と、URL214ウェブアドレスでコンテンツページ216からキャプチャされた画像の画像埋め込み257と、を利用する。
An encoder can be trained by pairing an encoder and a decoder. The encoder and decoder can be trained to compress the input into an embedding space and then reconstruct the input from the embedding. Once the encoder is trained, it can be reused as described herein. The phishing classifier layer 275 utilizes URL feature hashes 242 of the URL n-grams, word encodings 265 of words extracted from the content page, and image
一実施形態では、フィッシング検出エンジン202は、ウェブページのコンテンツ、及び応答ヘッダに存在するセキュリティ情報の特徴量ハッシュ化を利用して、良性のウェブページ及びフィッシングウェブページの両方で利用可能な特徴量を補完する。コンテンツは、一実装態様ではJavaScriptで表現される。別の実施形態では、Pythonなどの異なる言語を使用することができる。URL特徴量ハッシャ222は、URL214を受信し、URLをパースして特徴量にし、特徴量をハッシュ化してURL特徴量ハッシュ242を生成し、URL n-gramの次元削減をもたらす。ヘッダ+セキュリティ情報を有するURLのドメイン特徴量の一例を次に列挙する。
“scanned_url”:[
“http://alfabeek.com/”
],
“header”:{
“date”:”Tue, 02 Mar 2021 15:30:27 GMT”,
“server”:”Apache”,
“last-modified”:”Tue,08 Sep 2020 02:09:49 GMT”,
“accept-ranges”:”bytes”,
“vary”:”Accept-Encoding”,
“content-encoding”:”gzip”,
“content-length”:”23859”,
“content-type”:”text/html”},
“security_info”:[
{
“_subjectName”:”alfabeek.com”,
“_issuer”:”Sectigo RSA Domain Validation Secure Server CA”,
“_validFrom”:1583107200,
“_validTo”:1614729599,
“_protocol”:”TLS 1.3”,
“_sanList”:[
“alfabeek.com”,
“www.alfabeek.com”
]
In one embodiment,
“scanned_url”: [
“http://alfabeek.com/”
],
“header”: {
“date”:”Tue, 02 Mar 2021 15:30:27 GMT”,
“server”:”Apache”,
“last-modified”:”Tue,08 Sep 2020 02:09:49 GMT”,
“accept-ranges”: “bytes”,
“vary”:”Accept-Encoding”,
“content-encoding”: “gzip”,
“content-length”:”23859”,
“content-type”:”text/html”},
“security_info”: [
{
“_subjectName”:”alfabeek.com”,
“_issuer”: “Sectigo RSA Domain Validation Secure Server CA”,
“_validFrom”:1583107200,
“_validTo”:1614729599,
“_protocol”:”TLS 1.3”,
“_sanList”: [
“alfabeek.com”,
“www.alfabeek.com”
]
図2の説明を続けると、ヘッドレスブラウザ226は、URLのコンテンツにアクセスし、コンテンツページを内部的にレンダリングし、コンテンツページのレンダリングから単語を抽出し、かつコンテンツページのレンダリングの少なくとも一部の画像をキャプチャするように構成されている。ヘッドレスブラウザ226は、コンテンツページ216のウェブアドレスであるURL214を受信し、コンテンツページ216から単語を抽出する。ヘッドレスブラウザ226は、抽出された単語246を自然言語エンコーダ264に提供し、自然言語エンコーダ264は、抽出された単語からエンコーディングを生成する:ブロック図200の単語エンコーディング265。自然言語(NL)エンコーダ264は、自然言語に関して事前訓練され、コンテンツページから抽出された単語のエンコーディングを生成する。エンコーダ264は、例示的な実施形態では、標準エンコーダである自然言語のためのBERTを利用する。エンコーダは、エンコーダが比較的低次元の埋め込み空間で処理する入力を埋め込む。BERTは、400~800次元の埋め込み空間に自然言語パッセージを埋め込む。Transformerロジックは、自然言語入力を受け入れ、一例では、入力をエンコーディングして埋め込む768次元ベクトルを生成する。事前訓練されたデコーダ266の破線ブロック輪郭は、事前訓練されたものとして区別される。すなわち、BERTは、URL214のフィッシングを検出するために使用される前に訓練される。エンコーダ264は、フィッシングを検出するためにフィッシング分類器層275によって使用するために、スクリーニングされているコンテンツページから抽出された単語の単語エンコーディング265を生成する。異なる実装態様では、ユニバーサルセンテンスエンコーダなどの異なるML/DLエンコーダを利用することができる。異なる実施形態では、長期短期記憶(LSTM)モデルを利用することができる。
Continuing with FIG. 2, the
更に図2の説明を続けると、ヘッドレスブラウザ226は、コンテンツページ216のウェブアドレスであるURL214を受信し、ウェブページを訪問する実際のユーザを模倣し、かつレンダリングされたウェブページのスナップショットを撮ることによって、ウェブページの画像をキャプチャする。ヘッドレスブラウザ226は、スナップショットを撮り、キャプチャされた画像248を、画像に関して事前訓練された画像埋め込み器256に提供し、コンテンツページからキャプチャされた画像の埋め込みを生成する。画像埋め込みは、難読化されたケースに対して、効率を高め、フィッシング検出を改善することができる。埋め込み器256は、キャプチャされた画像248を画像埋め込み257としてエンコーディングする。一実施形態では、埋め込み器256は、標準埋め込み器である残差ニューラルネットワーク(ResNet50)を、画像に対する事前訓練された分類器258とともに利用する。異なる実装態様では、Inception-v3、VGG-16、ResNet34、又はResNet-101などの異なるML/DLで事前訓練された画像埋め込み器を利用することができる。例示的な実施形態を続けると、ResNet50は、RGB224x224ピクセル画像などの画像を埋め込み、この画像を埋め込み空間にマッピングする248次元の埋め込みベクトルを生成する。埋め込み空間は、元の入力よりもはるかにコンパクトである。事前訓練されたResNet50埋め込み器256は、フィッシングウェブサイトを検出するために使用される、スクリーニングされているコンテンツページのスナップショットの画像埋め込み257を生成する。
Continuing with FIG. 2, the
開示されるフィッシング検出エンジン202のフィッシング分類器層275は、URL特徴量ハッシュと、コンテンツページから抽出された単語のエンコーディングと、例示的なURLのコンテンツページからの画像キャプチャの埋め込みと、に関して訓練され、各例示的なURLは、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う。フィッシング分類器層275は、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みを処理して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを表す少なくとも1つの尤度スコアを生成する。尤度スコア285は、特定のウェブサイトがフィッシングウェブサイトである可能性がどのくらいあるかを表す。一実施形態では、フィッシング分類器層275への入力サイズは、2048+768+1024であり、BERTの出力は、768であり、ResNet50埋め込みサイズは、2048であり、URLのn-gramにわたる特徴量ハッシュのサイズは、1024である。フィッシング検出エンジン202は、フィッシングウェブサイトの言語に関わらず、フィッシングウェブサイトの意味的に有意な検出に非常に好適である。開示されるニアリアルタイムのクローリングパイプラインは、これらが無効化される前に、新しい疑わしいウェブページのコンテンツを迅速にキャプチャし、したがって、フィッシング攻撃の短いライフサイクルの性質に対処し、このことが、所定の深層学習アーキテクチャの継続的な再訓練のためのより大きな訓練データセットを蓄積するのに役立つ。
The phishing classifier layer 275 of the disclosed
図3は、上記の図2に示されるブロック図に関連して説明されるような、ウェブコンテンツページから抽出された単語の自然言語分類に利用され得るTransformerからの参照双方向エンコーダ表現(BERT)のブロック図を例示するものである。 Figure 3 illustrates a block diagram of a Reference Bidirectional Encoder Representation (BERT) from a Transformer that may be utilized for natural language classification of words extracted from web content pages, as described in connection with the block diagram shown in Figure 2 above.
フィッシング検出にML/DLを適用するための第2のシステムは、画像転移学習を利用し、また、HTML埋め込みを学習するために生成事前訓練(GPT)を使用する。これは、限られたフィッシングデータセットを有するという問題に対処し、また、HTMLのコンテンツのより良い表現を提供する。第1のアプローチとは異なり、BERTテキストエンコーディングの必要性がない。HTML埋め込みネットワークは、HTMLコンテンツ(テキスト、JS、CSSなど)のマルチモーダルコンテンツ全体を256個の数のベクトルによって表すことを学習する。このHTML埋め込みネットワークの理論的な基礎は、the 37th International Conference on Machine Learning, PMLR 119:1691-1703,2020の議事録に掲載された“Open AI Generative Pretraining From Pixels”に内示されている。 The second system for applying ML/DL to phishing detection utilizes image transfer learning and also uses generative pre-training (GPT) to learn HTML embeddings. This addresses the problem of having a limited phishing dataset and also provides a better representation of the HTML content. Unlike the first approach, there is no need for BERT text encoding. The HTML embedding network learns to represent the entire multimodal content of the HTML content (text, JS, CSS, etc.) by a vector of 256 numbers. The theoretical foundations of this HTML embedding network are presented in "Open AI Generative Pretraining From Pixels" in the proceedings of the 37th International Conference on Machine Learning, PMLR 119:1691-1703, 2020.
図4は、各例示的なURLが、フィッシングサイトを検出するために、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う、URL特徴量ハッシュと、コンテンツページから抽出されたHTMLのエンコーディングと、例示的なURLのコンテンツページからキャプチャされた画像の埋め込みと、を用いるML/DLを利用する、開示されるフィッシング検出エンジン402の高レベルブロック図400を例示している。開示されるフィッシング分類器層475は、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコア485を生成する。
Figure 4 illustrates a high level block diagram 400 of the disclosed phishing detection engine 402, where each exemplary URL uses ML/DL with URL feature hashing with ground truth classification as phishing or not phishing, encoding of HTML extracted from the content page, and embedding of an image captured from the exemplary URL's content page to detect phishing sites. The disclosed phishing classifier layer 475 generates at least one
フィッシング検出エンジン402は、URL414を特徴量にパースし、特徴量をハッシュ化して、URL特徴量ハッシュ442を生成し、URL n-gramの次元削減をもたらすURL特徴量ハッシャ422を使用する。ヘッダ+セキュリティ情報を有するURLのドメイン特徴量の一例が、上に列挙されている。
The phishing detection engine 402 uses a
ヘッドレスブラウザ426は、HTMLトークン446を抽出し、HTMLエンコーダ464に提供する。フィッシング検出エンジン202は、開示されるHTMLエンコーダ464を利用し、例示的なURL416のコンテンツページから抽出され、エンコードされ、次いで、コンテンツページのレンダリングからキャプチャされた画像を再現するようにデコードされる、HTMLトークン446に関して訓練される。破線は、キャプチャされた画像448からの破線を含む、アクティブなURLの後の処理から、エンコーダ埋め込みからページのレンダリングされた画像を生成する生成訓練デコーダ466の破線ブロック輪郭を区別する。データ分布P(X)を学習することは、P(X|Y)のその後の教師ありモデリングに非常に有益であり、Yは、フィッシング及び非フィッシングの二値クラスであり、Xは、HTMLコンテンツである。HTMLエンコーダ464は、生成事前訓練(GPT)を使用して事前訓練され、これは、大量の教師なしデータにわたる教師なし事前訓練が、P(Y|X)を用いた後続の教師あり意思決定のためにデータ分布P(X)を学習するために利用される。HTMLエンコーダ464が訓練されると、HTMLエンコーダ464は、再利用され得る。HTMLエンコーダ464は、コンテンツページ416から抽出されたHTMLトークン446のHTMLエンコーディング465を生成する。
The
HTMLは、ルールに基づいてトークン化され、HTMLトークン446は、HTMLエンコーダ464に渡される。フィッシングURLリストのコミュニティ例である、オープンソースを提供する、インターネット上の、フィッシングに関するデータ及び情報の共同クリアリングハウスとしては、フィッシングウェブサイトとして識別されているHTMLファイルのソースとして機能するPhishTank、OpenPhish、MalwarePatrol、及びKasperskyが挙げられる。フィッシングを含まない陰性サンプルは、フィッシングウェブサイトの現在の傾向を表す割合でデータセットをバランスさせる。HTMLエンコーダ464は、インハウスのアクティブスキャナ154によって集取された、HTML及びページスナップショットのラベル付けされていない大規模なデータセットを使用して訓練される。ウェブサイトのユーザは、特に、悪意のあるレンダリングされたページが正当なログインページの外観を模倣しているときに、攻撃の犠牲になるため、訓練の目標は、HTMLエンコーダに、これらのページのレンダリングされた画像に関してHTMLコンテンツを表すように学習することを強制する。
The HTML is tokenized based on the rules, and the HTML tokens 446 are passed to the
訓練のために、HTMLエンコーダ464は、HTMLのランダムな初期パラメータ及びパラメータで初期化される。一実施形態では、データストア164内の700K個のHTMLファイルがスキャンされ、コンテンツページを表す上位10K個のトークンの結果として得られた抽出が、かなりの数の偽陽性結果に悩まされない分類のためにフィッシング検出エンジン402を構成するために使用された。1つの例示的なコンテンツページでは、800個の有効なトークンが抽出された。別の例では、2K個の有効なトークンが認識され、第3の例では、およそ1K個のトークンが収集された。
For training, the
別の実施形態では、HTMLパーサを使用して、URLを介してアクセスされたコンテンツページからHTMLトークンを抽出することができる。ヘッドレスブラウザ及びHTMLパーサの両方を、所定のトークン語彙に属するHTMLトークンを抽出し、かつ所定のトークン語彙に属さないコンテンツの部分を無視するように構成することができる。一実施形態では、フィッシング検出エンジン402は、最大64個のHTMLトークンのHTMLエンコーディングの生成のために抽出するように構成されたヘッドレスブラウザを含む。64は、特定の、構成可能なシステムパラメータである。抽出は、いくつかの場合には、レンダリングに最大10ミリ秒を使用することができる。別の実施形態では、ヘッドレスブラウザを、最大128、256、1024、又は4096個のHTMLトークンのHTMLエンコーディングの生成のために抽出するように構成することができる。より多くのトークンの使用は、訓練を遅くする。最大2k個トークンの実装が達成されている。訓練を利用して、HTMLトークンのどのような順序パターンが特定のページビューを生じるかを学習することができる。数学的近似は、より良い分類のためにどのような分布のトークンを後に使用すべきかを学習するために使用可能である。 In another embodiment, an HTML parser can be used to extract HTML tokens from a content page accessed via a URL. Both the headless browser and the HTML parser can be configured to extract HTML tokens that belong to a predefined token vocabulary and to ignore portions of the content that do not belong to the predefined token vocabulary. In one embodiment, the phishing detection engine 402 includes a headless browser configured to extract for generation of an HTML encoding of up to 64 HTML tokens. 64 is a specific, configurable system parameter. The extraction can take up to 10 milliseconds to render in some cases. In another embodiment, the headless browser can be configured to extract for generation of an HTML encoding of up to 128, 256, 1024, or 4096 HTML tokens. The use of more tokens slows down training. Implementations of up to 2k tokens have been achieved. Training can be used to learn what ordering patterns of HTML tokens result in a particular page view. The mathematical approximation can be used to learn what distribution of tokens should be used later for better classification.
図4の説明を続けると、画像に関して事前訓練された画像埋め込み器は、コンテンツページからキャプチャされた画像の画像埋め込みを生成する。事前訓練された埋め込み器係数は、ニアリアルタイムでコスト効率の良い埋め込みを可能にする。ヘッドレスブラウザ426は、URLのコンテンツにアクセスし、かつコンテンツページを内部的にレンダリングするように構成されている。ヘッドレスブラウザ226は、コンテンツページ416のウェブアドレスであるURL414を受信し、ウェブページを訪問する実際のユーザを模倣し、かつレンダリングされたウェブページのスナップショットを撮ることによって、ウェブページの画像をキャプチャする。ヘッドレスブラウザ426は、スナップショットを撮り、キャプチャされた画像448を、画像に関して事前訓練されたレンダリング画像埋め込み器456に提供し、コンテンツページからキャプチャされた画像の埋め込みを生成する。画像埋め込みは、効率を高め、フィッシング検出を改善することができ、このことは、難読化されたケースに対して特に有用である。埋め込み器456は、キャプチャされた画像448を画像埋め込み457としてエンコーディングする。一実施形態では、レンダリング画像埋め込み器456は、標準埋め込み器である残差ニューラルネットワーク(ResNet50)を、画像に対する事前訓練された分類器458とともに利用する。異なる実装態様では、Inception-v3、VGG-16、ResNet34、又はResNet-101などの異なるML/DLで事前訓練された画像埋め込み器を利用することができる。例示的な実施形態を続けると、ResNet50は、RGB224x224ピクセル画像などの画像を埋め込み、この画像を埋め込み空間にマッピングする2048次元の埋め込みベクトルを生成する。埋め込み空間は、元の入力よりもはるかにコンパクトである。事前訓練されたResNet50埋め込み器456は、フィッシングウェブサイトを検出するために使用されるように、コンテンツページからキャプチャされた画像の画像埋め込み457を生成する。URL特徴量ハッシュ442、HTMLエンコーディング465、及び画像埋め込み457は、以下で説明されるように、最終訓練及び推論のためにニューラルネットワークフィッシング分類器層475に渡される。一実施形態では、最終分類器の入力サイズは、2048(ResNet50埋め込みサイズ)+256(HTMLエンコーダのエンコーディングサイズ)+1024(URLのn-gramにわたる特徴量ハッシュのサイズ)である。新しいフィッシングウェブサイトは、1つの本番システムで、セキュリティチームによって時間ごとに提出される。1つの例示的なフィッシングウェブサイトでは、HTMLスクリプトが開始し、次いで、空白のセクションが検出され、次いで、HTMLスクリプトが終了する。開示される技術は、新しいフィッシングウェブサイトのタイムリーな検出をサポートする。
Continuing with FIG. 4, the image embedder pre-trained on images generates an image embedding of the captured image from the content page. The pre-trained embedder coefficients allow for near real-time, cost-effective embedding. The
開示されるフィッシング検出エンジン402のフィッシング分類器層475は、URL特徴量ハッシュと、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングと、例示的なURLのコンテンツページからのキャプチャされた画像の埋め込みと、に関して訓練され、各例示的なURLは、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース472分類を伴う。訓練後、フィッシング分類器層275は、URL特徴量ハッシュ442、HTMLエンコーディング465、及び画像埋め込み457を処理して、URLと、このURL414を介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコア485を生成する。尤度スコア485は、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する可能性がどのくらいあるかを表す。次に、分類損失と、clf損失と、二値のフィッシングか否かと、分類器が見ることを期待するものと分類器が見るものとの間の差Gen_lossについて、モデルを訓練するための例示的な擬似コードを列挙する。
def training_step(self, batch, batch_idx):
html_tokens, snapshot, label, resnet_embed, domain_features = batch
# チューニング及び分類
if self.classify:
埋め込み、logits=self.gpt(x,classify=True)
gen_loss = self.criterion(logits, y)
clf_logits = self.concat_layer(torch.cat([embedding, resnet_embed, domain_features], dim=1))
clf_loss = self.clf_criterion(clf_logits, label)
#分類のための共同損失
loss = clf_loss + gen_loss
#生成事前訓練
else:
generated_img = self.gpt(html_tokens)
loss = self.criterion(generated_img, snapshot)
The phishing classifier layer 475 of the disclosed phishing detection engine 402 is trained on the URL feature hashes, HTML encodings of HTML tokens extracted from the content pages, and captured image embeddings from the content pages of example URLs, with each example URL accompanied by a
def training_step(self, batch, batch_idx):
html_tokens, snapshot, label, resnet_embed, domain_features = batch
# Tuning and Classification if self. classify:
Embedding, logits=self.gpt(x,classify=True)
gen_loss = self. Criterion (logits, y)
clf_logits = self. concat_layer(torch.cat([embedding, resnet_embed, domain_features], dim=1))
clf_loss = self. clf_criterion(clf_logits, label)
# Joint loss for classification loss = clf_loss + gen_loss
#Generate pretraining else:
generated_img = self. gpt(html_tokens)
loss = self. criteria(generated_img, snapshot)
図5は、フィッシング検出エンジン402で使用する前に、画像の分類のために事前訓練された参照残差ニューラルネットワーク(ResNet)のブロック図を例示している。 Figure 5 illustrates a block diagram of a reference residual neural network (ResNet) that is pre-trained for image classification prior to use in the phishing detection engine 402.
インラインフィッシングでは、ウェブページは、ユーザエンドポイント166においてユーザサイドでレンダリングされるため、ページのスナップショットは、利用可能ではないため、ResNetは、利用されず、フィッシング検出分類器は、コンテンツページのヘッダ情報にアクセスしない。次に、ページから抽出されたURL及びHTMLトークンを利用して、URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか否かとして分類する、開示される分類器システムについて説明する。この第3のシステムは、訪問されたコンテンツのスナップショットへの、及びヘッダ情報へのアクセスが利用可能でない場合、本番環境で特に有用であり、ネットワークセキュリティシステムで、リアルタイムで動作することができる。
In inline phishing, since the web page is rendered user-side at the
別の開示される分類器システムは、訪問されたコンテンツのスナップショットへの、及びヘッダ情報へのアクセスが利用可能でないときに、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか否かとして分類するためのML/DLを適用する。図6は、URL埋め込み器及びHTMLエンコーダを用いるML/DLを利用する、開示されるフィッシング検出エンジン602の高レベルブロック図600を例示している。HTMLのエンコーディングは、URLによって指し示されるコンテンツページから抽出される。開示されるフィッシング分類器層675は、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコア685を生成する。
Another disclosed classifier system applies ML/DL to a snapshot of the visited content and when access to header information is not available to classify a URL and the content accessed via the URL as phishing or not. FIG. 6 illustrates a high level block diagram 600 of a disclosed phishing detection engine 602 that utilizes ML/DL with a URL embedder and HTML encoder. The HTML encoding is extracted from the content page pointed to by the URL. The disclosed phishing classifier layer 675 generates at least one
フィッシング検出エンジン602は、URL614から所定の文字セット内の文字を抽出してURL文字シーケンス642を生成する、URLリンクシーケンス抽出器622を使用する。一次元1D畳み込みニューラルネットワーク(Conv1D)URL埋め込み器652は、URL埋め込み653を生成する。分類のために使用する前に、URL埋め込み器652及びURL分類器654は、URLをフィッシングか、又はフィッシングでないとして分類するグラウンドトゥルース632を伴う例示的なURLを使用して訓練される。訓練されたURL分類器654の破線ブロック輪郭は、訓練をアクティブなURLの後の処理から区別する。URL埋め込み器652の訓練中、フィッシング分類器層を越えて、URL埋め込みを生成するために使用される埋め込み層までの差がバックプロパゲートされる。
The phishing detection engine 602 uses a URL
図6に例示されるシステム600の説明を続けると、フィッシング検出エンジン602はまた、開示されるHTMLエンコーダ664を利用し、これは、例示的なURL616におけるコンテンツページからHTMLパーサ636によってパースされたHTMLトークン646を使用して訓練され、エンコーディングされ、次いで、デコードされて、コンテンツページのレンダリングからキャプチャされた画像を再現する。パースすることは、利用可能なメタデータから意味を抽出する。一実装態様では、トークン化は、メタデータのストリーム内のHTMLトークンを識別するためのパースすることの第1のステップとして動作し、パースすることは、次いで、トークンが見つかったコンテキストを使用して、参照されている情報の意味及び/又は種類を決定することに進む。HTMLエンコーダ664は、コンテンツページ616から抽出されたHTMLトークン646のHTMLエンコーディング665を生成する。
Continuing with the description of the
訓練中、ヘッドレスブラウザ628は、事前訓練で使用するために、URLのコンテンツページの画像をキャプチャする。キャプチャされた画像648から、エンコーダ埋め込みからページのレンダリングされた画像を生成する生成訓練デコーダ668の破線ブロック輪郭までの破線は、訓練をアクティブなURLの後の処理から区別する。訓練のために、HTMLエンコーダ664は、HTMLのランダムな初期パラメータ及びパラメータで初期化される。HTMLエンコーダ664は、生成事前訓練を使用して事前訓練され、これは、大量の教師なしデータにわたる教師なし事前訓練が、P(Y|X)を用いた後続の教師あり意思決定のためにデータ分布P(X)を学習するために利用される。HTMLエンコーダ664が訓練されると、本番での使用のために再利用される。エンコーダ664の訓練中、HTMLエンコーディングを生成するために使用されるエンコーディング層の差は、フィッシング分類器層を越えてバックプロパゲートされる。訓練データは、一実施形態では、206,224個の良性ページ及び69,808個のフィッシングページを含む。
During training, the
システム600の説明を更に続けると、フィッシング分類器層675は、例示的なURLのURL埋め込み及びHTMLエンコーディングに関して訓練され、各例示的なURLは、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類632を伴う。URL埋め込み器652の訓練中、URL埋め込み653を生成するために使用されるエンコーディング層の差は、フィッシング分類器層を越えてバックプロパゲートされる。すなわち、HTMLエンコーダ664が事前訓練されると、URL埋め込み653ネットワークは、ネットワークの残りの部分(分類層675、及びHTMLエンコーダ654の微調整ステップ)とともに、損失関数と、入力情報についてのグラウンドトゥルース632を有するURL例の助けと、を用いて訓練される。
Continuing with the description of the
訓練後、フィッシング分類器層675は、URL埋め込み653及びHTMLエンコーディング665の連結された入力を処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する。フィッシング検出エンジン602は、フィッシング分類器層675を、URL埋め込み及びHTMLエンコーディングの連結された入力に適用して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコア685を生成する。
After training, the phishing classifier layer 675 processes the concatenated input of the URL embeddings 653 and the HTML encodings 665 to generate at least one likelihood score that the URL and the content accessed via the URL present a phishing risk. The phishing detection engine 602 applies the phishing classifier layer 675 to the concatenated input of the URL embeddings and the HTML encodings to generate at least one
HTMLパーサ636は、URLを介してアクセスされたコンテンツページからHTMLトークンを抽出する。一例では、HTMLパーサ636は、所定のトークン語彙に属するHTMLトークンをコンテンツから抽出し、改行及び行送りなどの、所定のトークン語彙に属さないコンテンツの一部を無視するように構成可能である。一実施形態では、HTMLエンコーダ664を訓練するために指定するHTMLトークンの数を決定するための訓練において、データストア164における700K個のHTMLファイルのスキャンと、コンテンツページを表す上位10K個のトークンの結果として得られる抽出と、が、かなりの数の偽陽性結果に悩まされない分類のためのフィッシング検出エンジン602を構成するために使用された。1つの例示的なコンテンツページでは、800個の有効なトークンが抽出され、別の例では、2K個の有効なトークンが認識され、第3の例では、およそ1K個のトークンが収集された。訓練を使用して、HTMLトークンのどの順序パターンが特定のコンテンツページを生じるかを学習する。
The HTML parser 636 extracts HTML tokens from the content page accessed via the URL. In one example, the HTML parser 636 can be configured to extract HTML tokens from the content that belong to a predetermined token vocabulary and ignore parts of the content that do not belong to the predetermined token vocabulary, such as line breaks and line feeds. In one embodiment, in training to determine the number of HTML tokens to specify to train the
インライン実装を利用するリアルタイムフィッシング検出システムの場合、速度を考慮して、語彙のサイズを最小化するように注意が払われる。フィッシング検出エンジン602について、一実施形態では、HTMLパーサ636は、最大64個のHTMLトークンのHTMLエンコーディングの生成のために抽出するように構成されている。異なる実装態様では、異なる数のHTMLエンコーディングを利用することができる。別の実施形態では、ヘッドレスブラウザを、最大128、256、1024、又は4096個のHTMLトークンのHTMLエンコーディングの生成のために抽出するように構成することができる。 For real-time phishing detection systems utilizing an inline implementation, care is taken to minimize the size of the vocabulary for speed considerations. For the phishing detection engine 602, in one embodiment, the HTML parser 636 is configured to extract for generation of an HTML encoding of up to 64 HTML tokens. Different implementations may utilize different numbers of HTML encodings. In another embodiment, the headless browser may be configured to extract for generation of an HTML encoding of up to 128, 256, 1024, or 4096 HTML tokens.
フィッシングパターンは、絶えず進化し、多くの場合、検出方法が低い偽陽性率(FPR)を維持しながら高い真陽性率(TPR)を達成することは困難である。精度再現率曲線は、可能なカットオフの精度(=陽性予測値)と再現率(=感度)との間の関係を示す。 Phishing patterns are constantly evolving and it is often difficult for detection methods to achieve a high true positive rate (TPR) while maintaining a low false positive rate (FPR). A precision-recall curve shows the relationship between precision (= positive predictive value) and recall (= sensitivity) for possible cutoffs.
図7は、複数の開示されるフィッシング検出システムの精度再現率グラフを示す。偽陽性検出がほとんどないことが要求されることに起因して、精度が1.000に近い、グラフの最上部付近の結果の精度が興味深い。HTML+URL+ヘッダコンテンツを有する曲線は、点線746によって表されている。長いダッシュ736を有する曲線として表されるスナップショット(ResNet)+BERTは、HTML+URL+ヘッダコンテンツよりも精度が良く、実線曲線726として表されるスナップショットは、最も精度が良いフィッシング技法である。BERTは、計算費用が高く、グラフは、精度が良いフィッシング検出結果を取得するためにBERTが必要とされないことを示す。
Figure 7 shows a precision recall graph for several of the disclosed phishing detection systems. Of interest is the precision of the results near the top of the graph, where precision is close to 1.000, due to the requirement for few false positive detections. The curve with HTML+URL+header content is represented by the dotted
図8は、上で説明されるフィッシングウェブサイト検出のための受信者動作特性曲線(ROC)を例示している。ROC曲線は、様々な閾値設定における偽陽性率(FPR)の関数としての真陽性率(TPR)のプロットである。関心の領域は、フィッシングウェブサイトとしてのコンテンツページの偽陽性識別が維持可能でないため、非常に低いFPRを有する曲線の下の領域である。ROC曲線は、上で説明されるフィッシングウェブサイトを検出するためにシステムを比較するのに有用である。フィッシング検出エンジン202について、+スナップショット+Bert836と標記され、かつ長いダッシュを有して例示されるROC曲線は、URL特徴量ハッシュを有するML/DLと、NL単語のエンコーディングと、キャプチャされたウェブサイト画像の埋め込みと、を利用するシステムの結果を示す。第2のシステムでは、フィッシング検出エンジン402は、URL特徴量ハッシュを有するML/DLと、コンテンツページから抽出されたHTMLトークンのエンコーディングと、フィッシングサイトを検出するためにコンテンツページからキャプチャされた画像の埋め込みと、を利用する。+スナップショット826と標記された曲線は、その曲線がドットで例示されるHTML-URL-ヘッダ846よりも少ない偽陽性で、より高いシステムの精度を示す。
FIG. 8 illustrates a receiver operating characteristic curve (ROC) for phishing website detection as described above. The ROC curve is a plot of true positive rate (TPR) as a function of false positive rate (FPR) at various threshold settings. The area of interest is the area under the curve with a very low FPR, since false positive identification of a content page as a phishing website is not sustainable. The ROC curve is useful for comparing systems for detecting phishing websites as described above. For the
多言語Bert埋め込みを含む特徴量の異なる組み合わせを有する、図8のROC曲線の説明を続けると、比較は、BERTなどのテキスト埋め込みが、場合によっては、HTMLエンコーダがすでにテキストコンテンツを考慮に入れていることに起因して、モデルの有効性を損ない、その結果、より多くのテキストエンコーディングを含めることが、HTMLページのテキストへの過剰適合につながり得ることを例示している。+スナップショット826は、より高い精度を有し、本番におけるFPの最小数につながる。更に、画像埋め込みを伴わないモデルのバージョンは、スナップショットが利用可能でないランタイム環境などの環境でアクティブスキャナ/ヘッドレスブラウザ機能をバイパスすることができるシステムをもたらす。一例では、ヘッドレスブラウザを実行することは、本番環境で直面する膨大な数のURLにはあまりにも高価であり、スケーラブルではない場合がある。更に、攻撃者は、そのような環境での検出を回避することができる。
Continuing with the description of the ROC curves in FIG. 8 with different combinations of features including multilingual Bert embeddings, the comparison illustrates that text embeddings such as BERT can in some cases impair the effectiveness of the model due to the fact that the HTML encoder already takes into account the text content, and as a result, including more text encodings can lead to overfitting to the text of the HTML page. +
図9は、URL埋め込み器及びHTMLエンコーダを用いるML/DLを利用するフィッシング検出エンジン602のフィッシングウェブサイト検出のための受信者動作特性曲線(ROC)を例示している。ROC曲線936は、様々な閾値設定における偽陽性率(FPR)の関数としての真陽性率(TPR)のプロットである。ROC曲線936は、フィッシング検出エンジン602が、ROC曲線が図8に示されるフィッシング検出システムよりも高い真陽性率を有することを例示している。
Figure 9 illustrates a receiver operating characteristic curve (ROC) for phishing website detection of the phishing detection engine 602 using ML/DL with URL embedder and HTML encoder. The
フィッシング検出エンジン602のURL埋め込み器652及びhtmlエンコーダ664は、不規則なメモリアクセスパターン又はデータ依存フロー制御を有する高水準プログラムを備える。高水準プログラムは、C、C++、Java、Python、及びSpatialのようなプログラミング言語で書かれたソースコードである。高水準プログラムは、AlexNet、VGG Net、GoogleNet、ResNet、ResNeXt、RCNN、YOLO、SqueezeNet、SegNet、GAN、BERT、ELMo、USE、Transformer、及びTransformer-XLのような機械学習モデルの計算構造及びアルゴリズムを実装することができる。一例では、高水準プログラムは、各処理層が1つ以上のネストされたループを含むことができるように、いくつかの処理層を有する畳み込みニューラルネットワークを実装することができる。高水準プログラムは、入力及び重みにアクセスすることと、入力と重みとの間の行列乗算を実行することと、を伴う不定期のメモリ演算を実行することができる。高水準プログラムは、後続の処理層の出力を生成するために、後続の処理層の重みを有する先行する処理層からの入力値をロード及び乗算する、高い反復回数を有するネストされたループと、ループボディと、を含むことができる。高水準プログラムは、最も外側のループボディのループレベルの並列性を有することができ、粗粒度のパイプライン化を使用してこれを利用することができる。高水準プログラムは、最も内側のループボディの命令レベルの並列性を有することができ、ループアンローリング、単一命令、複数データ(SIMD)ベクトル化、及びパイプライン化を使用してこれを利用することができる。
The
図10は、オープンニューラルネットワーク交換(ONNX)形式で表されるC++コードを用いて、URL埋め込み653を生成する一次元1D畳み込みニューラルネットワーク(Conv1D)URL埋め込み器652の機能性の計算データフローグラフを例示している。URLは、URL1014の最初の100文字を入力し、例示的な一実施形態では、ワンホットエンコーディングを使用し、重み256×56×7を有する畳み込みブロック1024(スライドウィンドウのように、カーネルサイズ=7)をもたらし、多次元特徴量の二値出力を生成する。次元1×32×8(1×256)を有する出力1064は、フィッシング分類器層675への入力として生成された最終的なURL埋め込み653を表す。
Figure 10 illustrates a computational data flow graph of the functionality of a one-dimensional 1D convolutional neural network (Conv1D)
図11は、フィッシング分類器層675への入力としてのhtmlエンコーディング665を生成する、開示されるhtmlエンコーダ664のブロックの図を示す。HTMLエンコーダアーキテクチャは、訓練データに見られる画像を再構築する畳み込みデコーダの助けを借りて事前訓練される。デコーダは、典型的には、畳み込みニューラルネットワーク(CNNである。訓練は、HTMLコンテンツを、それらのレンダリングされた画像に関して表現するように学習することをHTMLエンコーダに強制し、したがって、HTMLの無関係な部分をスキップする。この訓練は、フィッシング攻撃が開始される方法に合わせられており、レンダリングされたページが正当なページの外観を模倣し続ける限り、ユーザは、フィッシング攻撃の犠牲になる。次に、ブロックの機能性の概要を説明する。入力埋め込み1112は、先に説明されるように、HTMLパーサ636によって抽出された64個のHTMLトークンを取り込み、HTMLトークンを語彙にマッピングする。位置エンコーディング1122は、HTMLトークンのベクトルのコンテキスト情報を追加する。マルチヘッドアテンション1132は、入力のどの要素に焦点を当てるかを識別するための複数の自己アテンションベクトルを生成する。抽象ベクトルQ、K、及びVは、入力の異なる成分を抽出し、アテンションベクトルを計算するために使用される。複数のアテンションベクトルは、HTMLベクトル間の関係を表す。マルチヘッドアテンション1132は、二次的なマルチヘッドアテンションを表す、以下の図12A~図12Dに関して説明される例示される計算データフローグラフにおいて4回繰り返される。異なる実施形態では、ヘッドの数を2倍にするか、又は更に大きくすることができる。マルチヘッドアテンション1132は、アテンションベクトルを、一度に1つのベクトルで、フィードフォワードネットワーク1162に渡す。フィードフォワードネットワーク1162は、次のブロックのベクトルを変換する。各ブロックは、各特徴量にわたって層を平滑化及び正規化するための、加算及び正規化1172によって示される加算及び正規化演算で終了し、訓練データに見られる画像を再生成する256個の数値にHTML表現を圧縮する。出力は、フィッシング分類器層675への256個の数値の入力として生成された最終的なHTMLエンコーディング665を表す。
Figure 11 shows a block diagram of the disclosed
図12Aは、フィッシング分類器層675に入力されるhtmlエンコーディング665をもたらす、開示されるhtmlエンコーダ664の概要ブロック図を示す。入力エンコーディング及び位置埋め込み1205が、上の図11に関連して説明され、詳細なONNXリストが、図12Bに例示されている。マルチヘッドアテンション1225が、上の図11に関連して説明され、図12Cは、図12Bからのブロックを実装するための演算子スキーマへの入力として示される入力エンコーディング及び位置埋め込みからの入力を伴う詳細なONNX画像を示す。加算及び正規化及びフィードフォワード1245も、図12Dの詳細なONNXリストを用いて、図11に関して説明される。図12Aはまた、入力テンソルの次元を削減する削減平均値(Reduce Mean)1265演算子を含み、提供された軸に沿った入力テンソルの要素の平均値を計算する。HTMLエンコーディング665出力は、生成されてフィッシング分類器層675への入力としてマッピングされる1×256ベクトル1285である。ONNX演算子についての入力、出力、及び実行される演算の詳細は、当業者に周知である。
12A shows a schematic block diagram of the disclosed
図12B、図12C、及び図12Dは、オープンニューラルネットワーク交換(ONNX)形式で表されるC++コードを用いて、フィッシング分類器層675に入力されるhtmlエンコーディング665をもたらす、htmlエンコーダ664の機能性の計算データフローグラフを合わせて例示している。別の実施形態では、ONNXコードは、異なるプログラミング言語を表現することができる。
12B, 12C, and 12D together illustrate a computational data flow graph of the functionality of
図12Bは、点線で区切られた2つの列におけるデータフローグラフの1つのセクションを示し、左列の最下部にある結合子は、右列の最上部に流れ込む。図12Bの右列の最下部にある結果は、図12C及び図12Dに流れ込む。図12Bは、ギャザー演算子1264によって示されるように、入力エンコーディング及び位置埋め込みを例示している。入力埋め込み1112について、ギャザーブロックが、次元64×256のデータを集取する1264。
Figure 12B shows a section of the dataflow graph in two columns separated by a dotted line, with connectors at the bottom of the left column flowing into the top of the right column. The results at the bottom of the right column of Figure 12B flow into Figures 12C and 12D. Figure 12B illustrates input encoding and positional embedding, as indicated by the gather
図12Cは、データ接続に沿ってデータを非同期的に伝送する計算ノードを有するデータフローグラフの一例を示す、マルチヘッドアテンション1225の単一の反復を例示している。データフローグラフは、Transformerモデルのいわゆるマルチヘッドアテンションモジュールを表す。一実施形態では、データフローグラフは、複数の処理パイプラインにわたって入力テンソルを処理するために別個の処理パイプラインとして並行に実行される複数のループを示し、第2のレベルのループが第1のレベルのループ内にあるように、ループがレベルの階層に配置されたループネストを伴い、ギャザー及び非圧縮及び連結演算を伴う。ギャザー演算(全体で3つ)は、マルチヘッドアテンション層におけるクエリ、キー、及びバリューベクトルの使用を指す。この開示されるモデルの例では、2つのヘッドが利用され、これらのベクトルの各々についての連結演算がもたらされた。例示される実施形態では、処理パイプラインの各々のそれぞれの出力が連結されて、連結された出力A2、B2、C2、D2を生成する。図12Cの下部、及び図12Dの上部にあるA2、B2、C2、D2によって例示されるように、マルチヘッドアテンション機能性からの出力は、加算及び正規化及びフィードフォワードに流れ込む。 12C illustrates a single iteration of multi-head attention 1225, showing an example of a dataflow graph with computational nodes asynchronously transmitting data along data connections. The dataflow graph represents the so-called multi-head attention module of the Transformer model. In one embodiment, the dataflow graph shows multiple loops executed in parallel as separate processing pipelines to process input tensors across multiple processing pipelines, with loop nesting arranged in a hierarchy of levels such that the second level loop is within the first level loop, with gather and uncompress and concatenate operations. The gather operations (three in all) refer to the use of query, key, and value vectors in the multi-head attention layer. In this disclosed example model, two heads were utilized, resulting in a concatenation operation on each of these vectors. In the illustrated embodiment, the respective outputs of each of the processing pipelines are concatenated to produce concatenated outputs A2, B2, C2, D2. As illustrated by A2, B2, C2, and D2 in the bottom of FIG. 12C and the top of FIG. 12D, the outputs from the multi-head attention functionality flow into summation and normalization and feedforward.
図12Dは、ONNX演算を使用する加算及び正規化及びフィードフォワード1245機能性を示す。図12Dは、点線で区切られた3つの列を使用して例示されており、左列の最下部にある結合子は、中央列の最上部に流れ込み、中央列の最下部にある結合子は、右列の演算に流れ込む。マルチヘッドアテンション(図12Cに示される)の出力は、加算及び正規化及びフィードフォワード演算に流れ込み、ソフトマックス演算1232は、入力ベクトルを変換し、行列乗算器MatMul1242に流れ込ませる確率分布に正規化する。加算及び正規化及びフィードフォワード1245の出力Ax、Bx、Cx、Dx(図12Dの右下隅に示される)は、削減平均値1265演算子(図12A)に流れ込む。削減平均値1265演算子は、入力テンソル(Ax、Bx、Cx、Dx)の次元を削減し、提供される軸に沿った入力テンソルの要素の平均値を計算する。HTMLエンコーディング665の出力は、1x256のベクトル1285である。
12D illustrates the summation and normalization and feedforward 1245 functionality using the ONNX operation. FIG. 12D is illustrated using three columns separated by dotted lines, with the connector at the bottom of the left column flowing into the top of the center column, and the connector at the bottom of the center column flowing into the operation in the right column. The output of the multi-head attention (shown in FIG. 12C) flows into the summation and normalization and feedforward operation, and the softmax operation 1232 transforms and normalizes the input vector into a probability distribution that flows into the
図13は、特定のウェブサイトがフィッシングウェブサイトである可能性がどのくらいあるかを表す尤度スコア(複数可)685を生成するフィッシング分類器層675の機能性の計算データフローグラフを例示しており、C++コードは、オープンニューラルネットワーク交換(ONNX)形式で表現されている。サイズ1×512のフィッシング分類器層675への入力1314は、URL埋め込み及びHTMLエンコーディングを連結することによって形成される。2つの連結されたベクトルは、先に説明されるように、1×256ベクトルHTMLエンコーディング及び次元1×32×8(1×256)を有するURL埋め込みである。バッチ正規化1324は、前の層の活性化に適用されたように、入力を標準化し、訓練を加速する。演算子GEneral行列乗算(GEMM)1346、1366は、DLにおける基本演算子である線形代数ルーチンを表す。サイズ1×2である最終的な2層フィードフォワード分類器の出力1374は、サイトをフィッシングか、又はフィッシングでないとして分類するための、ウェブページがフィッシングサイトである尤度、及びウェブページがフィッシングサイトではない尤度である。
Figure 13 illustrates a computational data flow graph of the functionality of the phishing classifier layer 675, which generates likelihood score(s) 685 that represent how likely a particular website is to be a phishing website, with C++ code expressed in Open Neural Network Exchange (ONNX) format. The
コンピュータシステム
図14は、URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するために使用され得るコンピュータシステム1000の簡略化されたブロック図である。コンピュータシステム1400は、バスサブシステム1455を介して一部の周辺デバイスと通信する少なくとも1つの中央処理装置(CPU)1472と、本明細書で説明されるネットワークセキュリティサービスを提供するためのネットワークセキュリティシステム112と、を含む。これらの周辺デバイスは、例えば、メモリデバイス及びファイルストレージサブシステム1436を含むストレージサブシステム1410と、ユーザインターフェース入力デバイス1438と、ユーザインターフェース出力デバイス1476と、ネットワークインターフェースサブシステム1474とを含むことができる。入力及び出力デバイスは、コンピュータシステム1400とのユーザ対話を可能にする。ネットワークインターフェースサブシステム1474は、他のコンピュータシステム内の対応するインターフェースデバイスへのインターフェースを含む、外部ネットワークへのインターフェースを提供する。
Computer System Figure 14 is a simplified block diagram of a computer system 1000 that may be used to classify URLs and content pages accessed via the URLs as phishing or non-phishing. The
一実装態様では、図1のクラウドベースのセキュリティシステム153は、ストレージサブシステム1410及びユーザインターフェース入力デバイス1438に通信可能にリンクされる。
In one implementation, the cloud-based security system 153 of FIG. 1 is communicatively linked to the storage subsystem 1410 and the user
ユーザインターフェース入力デバイス1438は、キーボード、マウス、トラックボール、タッチパッド、又はグラフィックタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム及びマイクロフォンなどのオーディオ入力デバイス、並びに他のタイプの入力デバイスを含むことができる。概して、「入力デバイス」という用語の使用は、コンピュータシステム1400に情報を入力するための全ての可能なタイプのデバイス及び方法を含むことが意図される。
User
ユーザインターフェース出力デバイス1476は、ディスプレイサブシステム、プリンタ、ファックス機、又は音声出力デバイスなどの非視覚的ディスプレイを含むことができる。ディスプレイサブシステムは、LEDディスプレイ、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、又は可視画像を作成するための何らかの他のメカニズムを含むことができる。ディスプレイサブシステムは、音声出力デバイスなどの非視覚的ディスプレイを提供することもできる。概して、「出力デバイス」という用語の使用は、コンピュータシステム1400からユーザ又は別のマシン若しくはコンピュータシステムに情報を出力するための全ての可能なタイプのデバイス及び方法を含むことが意図される。
The user
ストレージサブシステム1410は、本明細書に記載のモジュール及び方法の一部又は全部の機能を提供するプログラミング及びデータ構造を記憶する。サブシステム1478は、グラフィックス処理ユニット(GPU)又はフィールドプログラマブルゲートアレイ(FPGA)であり得る。
Storage subsystem 1410 stores programming and data structures that provide some or all of the functionality of the modules and methods described herein.
ストレージサブシステム1410内で使用されるメモリサブシステム1422は、プログラム実行中に命令及びデータを記憶するためのメインランダムアクセスメモリ(RAM)1432と、固定命令が記憶される読み取り専用メモリ(ROM)1434とを含む、一部のメモリを含むことができる。ファイルストレージサブシステム1436は、プログラム及びデータファイルのための永続的なストレージを提供することができ、ハードディスクドライブ、関連するリムーバブルメディアを伴うフロッピーディスクドライブ、CD-ROMドライブ、光学ドライブ、又はリムーバブルメディアカートリッジを含むことができる。特定の実装態様の機能を実装するモジュールは、ファイルストレージサブシステム1436によって、ストレージサブシステム1410内に、又はプロセッサによってアクセス可能な他のマシン内に記憶され得る。
The
バスサブシステム1455は、コンピュータシステム1400の種々のコンポーネント及びサブシステムに、意図されるように互いに通信させるための機構を提供する。バスサブシステム1455は、単一のバスとして概略的に示されているが、バスサブシステムの代替の実装態様は、複数のバスを使用することができる。
コンピュータシステム1400自体は、パーソナルコンピュータ、携帯型コンピュータ、ワークステーション、コンピュータターミナル、ネットワークコンピュータ、テレビ、メインフレーム、サーバファーム、疎にネットワーク化されたコンピュータの広く分散されたセット、又は任意の他のデータ処理システム若しくはユーザデバイスを含む、種々のタイプのものであることができる。コンピュータ及びネットワークの絶えず変化する性質に起因して、図14に示されるコンピュータシステム1400の説明は、本発明の好ましい実施形態を例示するための特定の例としてのみ意図される。図14に示すコンピュータシステムよりも多い又は少ないコンポーネントを有するコンピュータシステム1400の多くの他の構成が可能である。
The
特定の実装態様
URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するためのいくつかの特定の実装態様及び特徴量が、以下の議論で説明される。
Specific Implementations Several specific implementations and features for classifying URLs, and content accessed via those URLs, as phishing or non-phishing are described in the following discussion.
開示される一実装態様では、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するフィッシング分類器は、URLを特徴量にパースし、かつ特徴量をハッシュ化してURL特徴量ハッシュを生成する、URL特徴量ハッシャと、レンダリングされたコンテンツページから単語を抽出し、かつレンダリングされたコンテンツページの少なくとも一部の画像をキャプチャするように構成された、ヘッドレスブラウザと、を含む。開示される実装態様はまた、抽出された単語の単語エンコーディングを生成する自然言語エンコーダと、キャプチャされた画像の画像埋め込みを生成する画像埋め込み器と、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みの連結された入力を処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層と、を含む。 In one disclosed implementation, a phishing classifier that classifies a URL and content accessed via the URL as phishing or non-phishing includes a URL feature hasher that parses the URL into features and hashes the features to generate a URL feature hash, and a headless browser configured to extract words from a rendered content page and capture an image of at least a portion of the rendered content page. The disclosed implementation also includes a natural language encoder that generates word encodings of the extracted words, an image embedder that generates image embeddings of the captured image, and a phishing classifier layer that processes the concatenated input of the URL feature hash, the word encoding, and the image embedding to generate at least one likelihood score that the URL and content accessed via the URL presents a phishing risk.
開示される別の実装態様では、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するフィッシング分類器は、URLを特徴量にパースし、かつ特徴量をハッシュ化してURL特徴量ハッシュを生成する、URL特徴量ハッシャと、URLのコンテンツにアクセスしてコンテンツページを内部的にレンダリングし、コンテンツページのレンダリングから単語を抽出し、かつコンテンツページのレンダリングの少なくとも一部の画像をキャプチャするように構成された、ヘッドレスブラウザと、を含む。開示される実装態様はまた、コンテンツページから抽出された単語の単語エンコーディングを生成する、自然言語に関して事前訓練された自然言語エンコーダと、画像に関して事前訓練されており、コンテンツページからキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器と、を含む。実装態様は、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLの、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みに関して訓練されており、URLの、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みの連結された入力を処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層を更に含む。 In another disclosed implementation, a phishing classifier that classifies a URL and content accessed via the URL as phishing or non-phishing includes a URL feature hasher that parses the URL into features and hashes the features to generate a URL feature hash, and a headless browser configured to access the content of the URL to internally render a content page, extract words from the rendering of the content page, and capture an image of at least a portion of the rendering of the content page. The disclosed implementation also includes a natural language encoder pre-trained on natural language that generates word encodings of the words extracted from the content page, and an image embedder pre-trained on images that generates image embeddings of the images captured from the content page. The implementation further includes a phishing classifier layer, trained on the URL feature hashes, word encodings, and image embeddings of the example URL with each example URL having a ground truth classification as phishing or not phishing, that processes the concatenated input of the URL feature hashes, word encodings, and image embeddings of the URL to generate at least one likelihood score that the URL and the content accessed via the URL present a phishing risk.
フィッシング分類器のいくつかの開示される実装態様では、自然言語エンコーダは、Transformerからの双方向エンコーダ表現(略してBERT)及びユニバーサルセンテンスエンコーダのうちの1つである。画像埋め込み器は、残差ニューラルネットワーク(略してResNet)、Inception-v3、VGG-16のうちの1つである。 In some disclosed implementations of the phishing classifier, the natural language encoder is one of Bidirectional Encoder Representation (abbreviated BERT) and Universal Sentence Encoder from Transformer. The image embedder is one of Residual Neural Network (abbreviated ResNet), Inception-v3, and VGG-16.
一実装態様では、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類する開示されるコンピュータ実装方法は、URL特徴量ハッシャを適用し、URLから特徴量を抽出し、特徴量をハッシュ化してURL特徴量ハッシュを生成することを含む。開示される方法はまた、コンテンツのレンダリングからパースされた単語の単語エンコーディングを生成する、自然言語に関して事前訓練された自然言語エンコーダを適用することと、レンダリングの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像に関して事前訓練された画像エンコーダを適用することと、を含む。開示される方法は、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLの、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込み、の連結に関して訓練されたフィッシング分類器層を適用することと、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みを処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を更に含む。 In one implementation, a disclosed computer-implemented method for classifying a URL and content accessed via the URL as phishing or non-phishing includes applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash. The disclosed method also includes applying a pre-trained natural language encoder for the natural language to generate word encodings of words parsed from a rendering of the content, and applying a pre-trained image encoder for the image to generate image embeddings of images captured from at least a portion of the rendering. The disclosed method further includes applying a phishing classifier layer trained on a concatenation of the URL feature hashes, word encodings, and image embeddings of an example URL with a ground truth classification as phishing or non-phishing, and processing the URL feature hashes, word encodings, and image embeddings to generate at least one likelihood score that the URL and content accessed via the URL presents a phishing risk.
開示される技術のこのセクション及び他のセクションで説明される方法は、以下の特徴及び/又は開示される追加の方法に関連して説明される特徴のうちの1つ以上を含むことができる。簡潔にするために、本出願に開示される特徴の組み合わせは、個々に列挙されず、特徴の各基本セットとともに繰り返されない。読者は、この方法で識別された特徴を、実装態様として識別された基本特徴のセットとどのように容易に組み合わせることができるかを理解するであろう。 The methods described in this and other sections of the disclosed technology may include one or more of the following features and/or features described in connection with the additional methods disclosed. For brevity, combinations of features disclosed in this application are not individually recited and are not repeated with each base set of features. The reader will understand how features identified in this method can be readily combined with the set of base features identified as implementation aspects.
開示される一コンピュータ実装方法は、URLを介してコンテンツにアクセスし、かつコンテンツを内部的にレンダリングするためのヘッドレスブラウザを適用することと、レンダリングされたコンテンツから単語をパースすることと、レンダリングされたコンテンツの少なくとも一部の画像をキャプチャすることと、を更に含む。 A disclosed computer-implemented method further includes applying a headless browser to access the content via a URL and internally render the content, parsing words from the rendered content, and capturing an image of at least a portion of the rendered content.
開示されるコンピュータ実装方法の一実施形態は、Transformerからの双方向エンコーダ表現(BERT)及びユニバーサルセンテンスエンコーダのうちの1つとしての自然言語エンコーダを含む。開示されるコンピュータ実装方法のいくつかの実施形態はまた、残差ニューラルネットワーク(ResNet)、Inception-v3、及びVGG-16のうちの1つとしての画像埋め込み器を含む。 One embodiment of the disclosed computer-implemented method includes a natural language encoder as one of Bidirectional Encoder Representation (BERT) from Transformer and Universal Sentence Encoder. Some embodiments of the disclosed computer-implemented method also include an image embedder as one of Residual Neural Network (ResNet), Inception-v3, and VGG-16.
URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するようにフィッシング分類器層を訓練する開示される一コンピュータ実装方法は、例示的なURLについて、URL特徴量ハッシュと、コンテンツページから抽出された単語の単語エンコーディングと、コンテンツのレンダリングからキャプチャされた画像の画像埋め込みと、を受信及び処理して、各例示的なURLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することを含む。この方法はまた、各例示的なURLについての尤度スコアと、例示的なURL及びコンテンツページがフィッシングであるか、又はフィッシングでないという各対応するグラウンドトゥルースと、の間の差を計算することと、例示的なURLについての差を使用して、フィッシング分類器層の係数を訓練することと、を含む。この方法は、本番URLと、本番URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する使用のために、訓練された係数を保存することを更に含む。 One disclosed computer-implemented method for training a phishing classifier layer to classify URLs and content accessed via the URLs as phishing or non-phishing includes receiving and processing URL feature hashes, word encodings of words extracted from the content pages, and image embeddings of images captured from renderings of the content for example URLs to generate at least one likelihood score that each example URL and content accessed via the URL presents a phishing risk. The method also includes calculating a difference between the likelihood score for each example URL and a corresponding ground truth that the example URL and content page are phishing or non-phishing, and using the difference for the example URLs to train coefficients of the phishing classifier layer. The method further includes storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
開示されるコンピュータ実装方法は、差を、フィッシング分類器層を越えて、単語エンコーディングを生成するために使用されるエンコーディング層にバックプロパゲートしないことと、差を、フィッシング分類器層を越えて、画像埋め込みを生成するために使用される埋め込み層にバックプロパゲートしないことと、を更に含む。 The disclosed computer-implemented method further includes not backpropagating the differences beyond the phishing classifier layer to an encoding layer used to generate word encodings, and not backpropagating the differences beyond the phishing classifier layer to an embedding layer used to generate image embeddings.
開示されるコンピュータ実装方法はまた、例示的なURLの各々についてURL特徴量ハッシュを生成することと、コンテンツページのレンダリングから抽出された単語の単語エンコーディングを生成することと、レンダリングからキャプチャされた画像の画像埋め込みを生成することと、を含む。 The disclosed computer-implemented method also includes generating URL feature hashes for each of the example URLs, generating word encodings of words extracted from the rendering of the content page, and generating image embeddings of images captured from the rendering.
多くの開示されるコンピュータ実装態様について、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するようにフィッシング分類器層を訓練する、開示される方法は、Transformerからの双方向エンコーダ表現(BERT)エンコーダ又はBERTエンコーダの変形を使用して、単語エンコーディングを生成することと、残差ニューラルネットワーク(ResNet)、Inception-v3、及びVGG-16のうちの1つを使用して画像埋め込みを生成することと、を含む。 For many of the disclosed computer implementations, the disclosed method of training a phishing classifier layer to classify URLs and content accessed through the URLs as phishing or non-phishing includes generating word encodings using a Bidirectional Encoder Representation (BERT) encoder or a variant of the BERT encoder from Transformer, and generating image embeddings using one of a Residual Neural Network (ResNet), Inception-v3, and VGG-16.
開示される一実装態様では、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するフィッシング分類器は、URLを特徴量にパースし、かつ特徴量をハッシュ化してURL特徴量ハッシュを生成する、URL特徴量ハッシャと、レンダリングされたコンテンツページからHTMLトークンを抽出し、かつレンダリングされたコンテンツページの少なくとも一部の画像をキャプチャするように構成された、ヘッドレスブラウザと、を含む。開示される分類器はまた、抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダと、キャプチャされた画像の画像埋め込みを生成する画像埋め込み器と、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みを処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成するフィッシング分類器層と、を含む。いくつかの実装態様では、HTMLトークンは、HTMLトークンの認識された語彙に属する。 In one disclosed implementation, a phishing classifier that classifies a URL and content accessed via the URL as phishing or non-phishing includes a URL feature hasher that parses the URL into features and hashes the features to generate a URL feature hash, and a headless browser configured to extract HTML tokens from a rendered content page and capture an image of at least a portion of the rendered content page. The disclosed classifier also includes an HTML encoder that generates an HTML encoding of the extracted HTML tokens, an image embedder that generates an image embedding of the captured image, and a phishing classifier layer that processes the URL feature hash, the HTML encoding, and the image embedding to generate at least one likelihood score that the URL and content accessed via the URL present a phishing risk. In some implementations, the HTML tokens belong to a recognized vocabulary of HTML tokens.
一実装態様では、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類する、開示されるフィッシング分類器は、URLを特徴量にパースし、かつ特徴量をハッシュ化してURL特徴量ハッシュを生成する、URL特徴量ハッシャと、URLのコンテンツにアクセスしてコンテンツページを内部的にレンダリングし、コンテンツページからHTMLトークンを抽出し、かつコンテンツページのレンダリングの少なくとも一部の画像をキャプチャするように構成された、ヘッドレスブラウザと、を含む。開示されるフィッシング分類器はまた、例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、コンテンツページのレンダリングからキャプチャされた画像を再現するようにデコードされるHTMLトークンに関して訓練されており、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダを含む。また、画像に関して事前訓練されており、コンテンツページからキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器と、例示的なURLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みに関して訓練されており、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みを処理して、URLと、このURLを介してアクセスされたコンテンツページと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層と、が含まれる。 In one implementation, a disclosed phishing classifier that classifies a URL and content accessed via the URL as phishing or non-phishing includes a URL feature hasher that parses the URL into features and hashes the features to generate a URL feature hash, and a headless browser configured to access the content of the URL to internally render a content page, extract HTML tokens from the content page, and capture an image of at least a portion of the rendering of the content page. The disclosed phishing classifier also includes an HTML encoder that is trained on HTML tokens extracted from the content page of an exemplary URL, encoded, and then decoded to recreate the image captured from the rendering of the content page, and generates an HTML encoding of the HTML tokens extracted from the content page. Also included is an image embedder that is pre-trained on images and generates image embeddings of images captured from content pages, and a phishing classifier layer that is trained on the URL feature hashes, HTML encodings, and image embeddings of example URLs and processes the URL feature hashes, HTML encodings, and image embeddings of example URLs, each example URL with a ground truth classification as phishing or not phishing, to generate at least one likelihood score that the URL and the content page accessed via the URL presents a phishing risk.
開示される方法のいくつかの実装態様は、所定のトークン語彙に属するHTMLトークンをコンテンツから抽出し、かつ所定のトークン語彙に属さないコンテンツの部分を無視するように構成されたヘッドレスブラウザを更に含む。いくつかの開示される実装態様は、最大64個のHTMLトークンのHTMLエンコーディングの生成のために抽出するように構成されたヘッドレスブラウザを更に含む。 Some implementations of the disclosed methods further include a headless browser configured to extract HTML tokens from the content that belong to a predefined token vocabulary and ignore portions of the content that do not belong to the predefined token vocabulary. Some disclosed implementations further include a headless browser configured to extract up to 64 HTML tokens for generation of an HTML encoding.
URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する、開示される方法の一実装態様は、URL特徴量ハッシャを適用し、URLから特徴量を抽出し、特徴量をハッシュ化してURL特徴量ハッシュを生成することを含む。本方法はまた、自然言語に関して訓練されており、レンダリングされたコンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダを適用することを含む。方法は、画像に関して事前訓練されており、レンダリングされたコンテンツページの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器と、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴って分類された例示的なURLに関して、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みに関して訓練されたフィッシング分類器層を適用することと、URLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みを処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を更に含む。開示される一実装態様では、方法は、ヘッドレスブラウザを適用することと、URLを介してコンテンツページにアクセスしてコンテンツページを内部的にレンダリングすることと、レンダリングされたコンテンツからHTMLトークンをパースすることと、レンダリングされたコンテンツの少なくとも一部の画像をキャプチャすることと、を更に含む。 One implementation of the disclosed method for classifying a URL and a content page accessed via the URL as phishing or non-phishing includes applying a URL feature hasher to extract features from the URL and hashing the features to generate a URL feature hash. The method also includes applying an HTML encoder trained on natural language to generate an HTML encoding of the HTML tokens extracted from the rendered content page. The method further includes applying an image embedder, pre-trained on images, to generate an image embedding of an image captured from at least a portion of a rendered content page, and a phishing classifier layer trained on URL feature hashes, HTML encodings, and image embeddings for example URLs classified with a ground truth classification as phishing or not phishing, and processing the URL feature hashes, HTML encodings, and image embeddings of the URLs to generate at least one likelihood score that the URL and content accessed via the URL present a phishing risk. In one disclosed implementation, the method further includes applying a headless browser, accessing the content page via the URL and rendering the content page internally, parsing HTML tokens from the rendered content, and capturing an image of at least a portion of the rendered content.
いくつかの開示される実装態様は、ヘッドレスブラウザが、所定のトークン語彙に属するHTMLトークンをコンテンツからパースし、かつ所定のトークン語彙に属さないコンテンツの部分を無視することを更に含む。いくつかの実装態様はまた、ヘッドレスブラウザが、HTMLエンコーディングの生成のために、最大64個のHTMLトークンをパースすることを含む。 Some disclosed implementations further include the headless browser parsing HTML tokens from the content that belong to a predefined token vocabulary and ignoring portions of the content that do not belong to the predefined token vocabulary. Some implementations also include the headless browser parsing up to 64 HTML tokens for generation of the HTML encoding.
URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するようにフィッシング分類器層を訓練する開示される一コンピュータ実装方法の一実装態様は、例示的なURLについて、URL特徴量ハッシュと、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングと、コンテンツページのレンダリングからキャプチャされた画像の画像埋め込みと、を受信及び処理して、各例示的なURLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することを含む。方法は、各例示的なURLについての尤度スコアと、例示的なURL及びコンテンツページがフィッシングであるか、又はフィッシングでないかについての各対応するグラウンドトゥルースと、の間の差を計算することと、例示的なURLについての計算された差を使用して、フィッシング分類器層の係数を訓練することと、本番URLと、本番URLを介してアクセスされたコンテンツページと、をフィッシングであるか、又はフィッシングでないとして分類する使用のために、訓練された係数を保存することと、を含む。 One implementation of a disclosed computer-implemented method for training a phishing classifier layer to classify URLs and content accessed via the URLs as phishing or non-phishing includes receiving and processing URL feature hashes, HTML encodings of HTML tokens extracted from the content page, and image embeddings of images captured from renderings of the content page for example URLs to generate at least one likelihood score that each example URL and content accessed via the URL presents a phishing risk. The method includes calculating a difference between the likelihood score for each example URL and a corresponding ground truth about whether the example URL and the content page are phishing or non-phishing, using the calculated difference for the example URLs to train coefficients of the phishing classifier layer, and storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
開示される方法のいくつかの実装態様は、差を、フィッシング分類器層を越えて、HTMLエンコーディングを生成するために使用されるエンコーディング層にバックプロパゲートすることを含む。いくつかの実装態様は、差を、フィッシング分類器層を越えて、画像埋め込みを生成するために使用される埋め込み層にバックプロパゲートしないことを更に含む。 Some implementations of the disclosed methods include backpropagating the differences beyond the phishing classifier layer to an encoding layer used to generate the HTML encoding. Some implementations further include not backpropagating the differences beyond the phishing classifier layer to an embedding layer used to generate the image embeddings.
いくつかの実装態様はまた、例示的なURLの各々についてURL特徴量ハッシュを生成することと、コンテンツページのレンダリングから抽出されたHTMLトークンのHTMLエンコーディングを生成することと、レンダリングからキャプチャされた画像の画像埋め込みを生成することと、を含む。いくつかの実装態様は、第2の例示的なURLについて、第2の例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、第2の例示的なURLのコンテンツページからキャプチャされた画像を再現するようにデコードされるHTMLトークンを使用して、HTMLエンコーディングを生成するようにHTMLエンコーダ-デコーダを訓練することを更に含む。開示される方法のいくつかの実装態様はまた、埋め込み空間に画像を埋め込むように事前訓練されたResNet埋め込み器又はResNet埋め込み器の変形を使用して画像埋め込みを生成することを含む。 Some implementations also include generating URL feature hashes for each of the example URLs, generating an HTML encoding of the HTML tokens extracted from the rendering of the content page, and generating an image embedding of the image captured from the rendering. Some implementations further include training an HTML encoder-decoder for a second example URL to generate an HTML encoding using the HTML tokens extracted from the content page of the second example URL, encoded, and then decoded to recreate the image captured from the content page of the second example URL. Some implementations of the disclosed method also include generating an image embedding using a ResNet embedder or a variant of a ResNet embedder pre-trained to embed the image in an embedding space.
URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する、開示されるフィッシング分類器の一実装態様は、分類のためのURLを受け入れる入力プロセッサと、URLのURL埋め込みを生成するURL埋め込み器と、URLを介してアクセスされたコンテンツページからHTMLトークンを抽出するHTMLパーサと、HTMLトークンからHTMLエンコーディングを生成するHTMLエンコーダと、URL埋め込み及びHTMLエンコーディングに対して動作して、URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類するフィッシング分類器層と、を含む。 One implementation of the disclosed phishing classifier that classifies a URL and a content page accessed via the URL as phishing or non-phishing includes an input processor that accepts a URL for classification, a URL embedder that generates a URL embedding for the URL, an HTML parser that extracts HTML tokens from the content page accessed via the URL, an HTML encoder that generates an HTML encoding from the HTML tokens, and a phishing classifier layer that operates on the URL embedding and HTML encoding to classify the URL and the content accessed via the URL as phishing or non-phishing.
開示されるフィッシング分類器のいくつかの実装態様はまた、URLから所定の文字セット内の文字を抽出して文字列を生成し、かつフィッシングか、又はフィッシングでないとしてのURLのグラウンドトゥルース分類を使用して訓練されており、URL埋め込みを生成する、URL埋め込み器を含む。分類器は、URLのコンテンツにアクセスし、かつコンテンツページからHTMLトークンを抽出するように構成されたHTMLパーサを更に含む。また、各例示的なURLが、例示的なURLを介してアクセスされたコンテンツページからキャプチャされたグラウンドトゥルースイメージを伴う例示的なURLのコンテンツページから抽出されたHTMLトークンに関して訓練されており、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成する、開示されるHTMLエンコーダと、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLのURL埋め込み及びHTMLエンコーディングに関して訓練されており、URL埋め込み及びHTMLエンコーディングの連結された入力を処理して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層と、が含まれる。 Some implementations of the disclosed phishing classifier also include a URL embedder that extracts characters in a predefined character set from the URL to generate a string and is trained using a ground truth classification of the URL as phishing or non-phishing to generate a URL embedding. The classifier further includes an HTML parser configured to access the content of the URL and extract HTML tokens from the content page. Also included is a disclosed HTML encoder, where each example URL is trained on HTML tokens extracted from the content page of the example URL along with a ground truth image captured from the content page accessed via the example URL, generating an HTML encoding of the HTML tokens extracted from the content page; and a phishing classifier layer, where each example URL is trained on the URL embeddings and HTML encoding of the example URL along with a ground truth classification as phishing or not phishing, processing the concatenated input of the URL embeddings and HTML encoding to generate at least one likelihood score that the URL and the content accessed via the URL present a phishing risk.
開示されるフィッシング分類器のいくつかの実装態様について、入力プロセッサは、URLをリアルタイムでの分類のために受け入れる。開示されるフィッシング分類器の多くの実装態様では、フィッシング分類器層は、URLと、このURLを介してアクセスされたコンテンツと、をリアルタイムでフィッシングか、又はフィッシングでないとして分類するように動作する。いくつかの実装態様では、開示されるフィッシング分類器は、所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、かつ所定のトークン語彙に属さないコンテンツページの部分を無視するように構成されたHTMLパーサを更に含み、最大64個のHTMLトークンのHTMLエンコードの生成のために抽出するように構成されたHTMLパーサを更に含むことができる。 For some implementations of the disclosed phishing classifiers, the input processor accepts URLs for classification in real time. In many implementations of the disclosed phishing classifiers, the phishing classifier layer operates to classify URLs and content accessed via the URLs as phishing or non-phishing in real time. In some implementations, the disclosed phishing classifiers may further include an HTML parser configured to extract HTML tokens from a content page that belong to a predefined token vocabulary and ignore portions of the content page that do not belong to the predefined token vocabulary, and may further include an HTML parser configured to extract up to 64 HTML tokens for generation of an HTML encoding.
URLと、このURLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類する、開示されるコンピュータ実装方法の一実装態様は、URLから所定の文字セット内の文字を抽出して文字列を生成してURL埋め込みを生成し、フィッシングか、又はフィッシングでないとしてのURLのグラウンドトゥルース分類を訓練及び使用する、URL埋め込みを生成する、URL埋め込み器を適用することを含む。方法はまた、HTMLパーサを適用して、URLのコンテンツにアクセスし、コンテンツページからHTMLトークンを抽出し、HTMLエンコーダを適用して、抽出されたHTMLトークンのHTMLエンコーディングを生成することと、フィッシング分類器層をURL埋め込み及びHTMLエンコーディングの連結された入力に適用して、URLと、このURLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を含む。いくつかの実装態様はまた、所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、所定のトークン語彙に属さないコンテンツページの部分を無視するHTMLパーサを含み、最大64個のHTMLトークンのHTMLエンコードの生成のために抽出するHTMLパーサを更に含むことができる。開示される方法はまた、リアルタイムで、URL埋め込み器、HTMLパーサ、HTMLエンコーダ、及びフィッシング分類器層を適用することを含むことができる。いくつかの場合には、フィッシング分類器層は、URLと、URLを介してアクセスされたコンテンツと、がリアルタイムでフィッシングリスクを提示する少なくとも1つの尤度スコアを生成するように動作する。 One implementation of the disclosed computer-implemented method of classifying a URL and content accessed via the URL as phishing or non-phishing includes applying a URL embedder that extracts characters in a predefined character set from the URL to generate a string to generate a URL embedding, and trains and uses a ground truth classification of the URL as phishing or non-phishing to generate the URL embedding. The method also includes applying an HTML parser to access the content of the URL and extract HTML tokens from the content page, applying an HTML encoder to generate an HTML encoding of the extracted HTML tokens, and applying a phishing classifier layer to the concatenated input of the URL embedding and the HTML encoding to generate at least one likelihood score that the URL and the content accessed via the URL presents a phishing risk. Some implementations may also include an HTML parser that extracts HTML tokens from the content page that belong to a predefined token vocabulary and ignores portions of the content page that do not belong to the predefined token vocabulary, and may further include an HTML parser that extracts for generation of an HTML encoding of up to 64 HTML tokens. The disclosed method may also include applying the URL embedder, HTML parser, HTML encoder, and phishing classifier layer in real time. In some cases, the phishing classifier layer operates to generate at least one likelihood score that the URL and the content accessed via the URL present a phishing risk in real time.
URLと、このURLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するようにフィッシング分類器層を訓練する、開示されるコンピュータ実装方法の一実装態様は、例示的なURLと、このURLを介してアクセスされたコンテンツページと、について、URLから抽出された文字のURL埋め込みと、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングと、を受信及び処理して、各例示的なURLと、このURLを介してアクセスされたコンテンツページと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することを含む。開示される方法はまた、各例示的なURLについての尤度スコアと、例示的なURL及びコンテンツページがフィッシングであるか、又はフィッシングでないかという各対応するグラウンドトゥルースと、の間の差を計算することと、例示的なURLについての差を使用して、フィッシング分類器層の係数を訓練することと、本番URLと、本番URLを介してアクセスされたコンテンツページと、をフィッシングであるか、又はフィッシングでないとして分類する使用のために、訓練された係数を保存することと、を含む。 One implementation aspect of the disclosed computer-implemented method for training a phishing classifier layer to classify URLs and content pages accessed via the URLs as phishing or non-phishing includes receiving and processing URL embeddings of characters extracted from the URLs and HTML encodings of HTML tokens extracted from the content pages for example URLs and content pages accessed via the URLs to generate at least one likelihood score that each example URL and content page accessed via the URL presents a phishing risk. The disclosed method also includes calculating the difference between the likelihood score for each example URL and each corresponding ground truth that the example URL and content page is phishing or non-phishing, using the difference for the example URLs to train coefficients of a phishing classifier layer, and storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
開示される方法のいくつかの実装態様は、ヘッドレスブラウザを適用することと、URLのコンテンツにアクセスしてコンテンツページを内部的にレンダリングすることと、コンテンツページの少なくとも一部の画像をキャプチャすることと、を更に含む。開示される方法は、差を、フィッシング分類器層を越えて、HTMLエンコーディングを生成するために使用されるエンコーディング層にバックプロパゲートすることを更に含むことができ、差を、フィッシング分類器層を越えて、URL埋め込みを生成するために使用される埋め込み層にバックプロパゲートすることを更に含むことができる。 Some implementations of the disclosed method further include applying a headless browser, accessing the content of the URL to internally render the content page, and capturing an image of at least a portion of the content page. The disclosed method may further include backpropagating the difference beyond the phishing classifier layer to an encoding layer used to generate the HTML encoding, and may further include backpropagating the difference beyond the phishing classifier layer to an embedding layer used to generate the URL embedding.
開示される方法のいくつかの実装態様は、例示的なURLから抽出された文字のURL埋め込みを生成することと、例示的なURLを介してアクセスされたコンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成することと、レンダリングからキャプチャされた画像の画像埋め込みを生成することと、を更に含む。 Some implementations of the disclosed method further include generating a URL embedding of characters extracted from the exemplary URL, generating an HTML encoding of HTML tokens extracted from the content page accessed via the exemplary URL, and generating an image embedding of an image captured from the rendering.
開示される方法のいくつかの実装態様は、第2の例示的なURLについて、第2の例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、第2の例示的なURLのコンテンツページからキャプチャされた画像を再現するようにデコードされるHTMLトークンを使用して、HTMLエンコーディングを生成するようにHTMLエンコーダ-デコーダを訓練することを更に含む。開示される方法は、所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、所定のトークン語彙に属さないコンテンツページの部分を無視することを更に含むことができる。方法はまた、抽出を所定の数のHTMLトークンに制限することを含むことができ、最大64個のHTMLトークンのHTMLエンコーディングを生成することを更に含むことができる。 Some implementations of the disclosed method further include training an HTML encoder-decoder to generate an HTML encoding for the second exemplary URL using HTML tokens extracted from the content page of the second exemplary URL, encoded, and then decoded to recreate an image captured from the content page of the second exemplary URL. The disclosed method may further include extracting HTML tokens from the content page that belong to a predetermined token vocabulary and ignoring portions of the content page that do not belong to the predetermined token vocabulary. The method may also include limiting the extraction to a predetermined number of HTML tokens and may further include generating an HTML encoding of up to 64 HTML tokens.
このセクションで説明される方法の他の実装態様は、プロセッサ上で実行されるときに、プロセッサに上で説明された方法のいずれかを実行させるコンピュータプログラム命令で特徴付けられた有形の非一時的コンピュータ可読記憶媒体を含むことができる。このセクションで説明する方法の更に別の実装態様は、メモリと、上記で説明した方法のいずれかを実施するためにメモリに記憶されたコンピュータ命令を実行するように動作可能な1つ以上のプロセッサとを含むデバイスを含み得る。 Other implementations of the methods described in this section may include a tangible, non-transitory computer-readable storage medium characterized by computer program instructions that, when executed on a processor, cause the processor to perform any of the methods described above. Yet another implementation of the methods described in this section may include a device including a memory and one or more processors operable to execute computer instructions stored in the memory to perform any of the methods described above.
上記で説明又は参照された任意のデータ構造及びコードは、多くの実装態様によれば、コンピュータシステムによって使用するためのコード及び/又はデータを記憶することができる任意のデバイス又は媒体であり得るコンピュータ可読記憶媒体上に記憶される。これには、揮発性メモリ、非揮発性メモリ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクドライブ、磁気テープ、CD(コンパクトディスク)、DVD(ディジタルバーサタイルディスク又はディジタルビデオディスク)などの磁気及び光記憶デバイス、あるいは現在知られている又は今後開発されるコンピュータ可読媒体を格納することができる他の媒体が含まれるが、これらに限定されるものではない。 Any data structures and code described or referenced above are, according to many implementations, stored on a computer-readable storage medium, which may be any device or medium capable of storing code and/or data for use by a computer system. This includes, but is not limited to, volatile memory, non-volatile memory, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), magnetic and optical storage devices such as disk drives, magnetic tape, compact discs (CDs), digital versatile discs (DVDs) or digital video discs (DVDs), or other media capable of storing computer-readable media now known or hereafter developed.
前述の説明は、開示される技術の作製及び使用を可能にするために提示される。開示される実装態様に対する種々の修正が明らかになり、本明細書で定義される一般原理は、開示される技術の趣旨及び範囲から逸脱することなく、他の実装態様及び適用例に適用され得る。したがって、開示される技術は、示される実装態様に限定されるように意図されておらず、本明細書で開示される原理及び特徴と一致する最も広い範囲を与えられるべきである。開示される技術の範囲は、添付の特許請求の範囲によって定義される。 The foregoing description is presented to enable making and using the disclosed technology. Various modifications to the disclosed implementations will become apparent, and the general principles defined herein may be applied to other implementations and applications without departing from the spirit and scope of the disclosed technology. Thus, the disclosed technology is not intended to be limited to the implementations shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein. The scope of the disclosed technology is defined by the appended claims.
条項
以下の条項を開示する。
Provisions The following provisions are disclosed:
条項セット1
1.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する、フィッシング分類器であって、
URLを特徴量にパースして、特徴量をハッシュ化して、URL特徴量ハッシュを生成する、URL特徴量ハッシャと、
URLのコンテンツページにアクセスし、コンテンツページを内部的にレンダリングし、
コンテンツページのレンダリングから単語を抽出し、
コンテンツページのレンダリングの少なくとも一部の画像をキャプチャするように構成されたヘッドレスブラウザと、
自然言語に関して事前訓練されており、コンテンツページから抽出された単語の単語エンコーディングを生成する、自然言語エンコーダと、
画像に関して事前訓練されており、コンテンツページからキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器と、
例示的なURLの、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みに関して訓練されており、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴い、
URLの、URL特徴量ハッシュ、単語エンコーディング、及び画像埋め込みの連結された入力を処理して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層と、を含む、フィッシング分類器。
2.自然言語エンコーダが、Transformerからの双方向エンコーダ表現(略してBERT)と、ユニバーサルセンテンスエンコーダと、のうちの1つである、条項1に記載のフィッシング分類器。
3.画像埋め込み器が、残差ニューラルネットワーク(略してResNet)と、Inception-v3と、VGG-16と、のうちの1つである、条項1に記載のフィッシング分類器。
4.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するコンピュータ実装方法であって、
URL特徴量ハッシャを適用し、URLから特徴量を抽出し、特徴量をハッシュ化して、URL特徴量ハッシュを生成することと、
自然言語に関して事前訓練されており、コンテンツページのレンダリングからパースされた単語の単語エンコーディングを生成する、自然言語エンコーダを適用することと、
画像に関して事前訓練されており、レンダリングの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像エンコーダを適用することと、
フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLについての、URL特徴量ハッシュと、単語エンコーディングと、画像埋め込みと、の連結に関して訓練されたフィッシング分類器層を適用することと、
URL特徴量ハッシュと、単語エンコーディングと、画像埋め込みと、を処理して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を含む、コンピュータ実装方法。
5. ヘッドレスブラウザを適用することと、
URLを介してコンテンツページにアクセスし、コンテンツページを内部的にレンダリングすることと、
レンダリングされたコンテンツページから単語をパースすることと、
レンダリングされたコンテンツページの少なくとも一部の画像をキャプチャすることと、を更に含む、条項4に記載のコンピュータ実装方法。
6.自然言語エンコーダが、Transformerからの双方向エンコーダ表現(略してBERT)と、ユニバーサルセンテンスエンコーダと、のうちの1つである、条項4に記載のコンピュータ実装方法。
7.画像埋め込み器が、残差ニューラルネットワーク(略してResNet)と、Inception-v3と、VGG-16と、のうちの1つである、条項4に記載のコンピュータ実装方法。
8.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するコンピュータプログラム命令で特徴付けられた非一時的コンピュータ可読記憶媒体であって、命令が、プロセッサ上で実行されるときに、
URL特徴量ハッシャを適用し、URLから特徴量を抽出し、特徴量をハッシュ化して、URL特徴量ハッシュを生成することと、
自然言語に関して事前訓練されており、コンテンツページのレンダリングからパースされた単語の単語エンコーディングを生成する、自然言語エンコーダを適用することと、
画像に関して事前訓練されており、レンダリングの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像エンコーダを適用することと、
フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLについての、URL特徴量ハッシュと、単語エンコーディングと、画像埋め込みと、の連結に関して訓練されたフィッシング分類器層を適用することと、
URL特徴量ハッシュと、単語エンコーディングと、画像埋め込みと、を処理して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を含む方法を実装する、非一時的コンピュータ可読記憶媒体。
9.ヘッドレスブラウザを適用することと、
URLを介してコンテンツページにアクセスし、コンテンツページを内部的にレンダリングすることと、
レンダリングされたコンテンツページから単語をパースすることと、
レンダリングされたコンテンツページの少なくとも一部の画像をキャプチャすることと、を更に含む、条項8に記載の非一時的コンピュータ可読記憶媒体。
10.自然言語エンコーダが、Transformerからの双方向エンコーダ表現(略してBERT)と、ユニバーサルセンテンスエンコーダと、のうちの1つである、条項8に記載の非一時的コンピュータ可読記憶媒体。
11.画像埋め込み器が、残差ニューラルネットワーク(略してResNet)と、Inception-v3と、VGG-16と、のうちの1つである、条項8に記載の非一時的コンピュータ可読記憶媒体。
12.フィッシング分類器層を訓練して、URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するためのコンピュータ実装方法であって、
例示的なURLについて、
URL特徴量ハッシュと、コンテンツページから抽出された単語の単語エンコーディングと、コンテンツページのレンダリングからキャプチャされた画像の画像埋め込みと、を受信及び処理して、
各例示的なURLと、URLを介してアクセスされたコンテンツページと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、
各例示的なURLについての尤度スコアと、例示的なURL及びコンテンツページがフィッシングか、又はフィッシングでないという各対応するグラウンドトゥルースと、の間の差を計算することと、
例示的なURLについての差を使用して、フィッシング分類器層の係数を訓練することと、
本番URLと、本番URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する使用のために、訓練された係数を保存することと、を含む、コンピュータ実装方法。
13.差を、フィッシング分類器層を越えて、単語エンコーディングを生成するために使用されるエンコーディング層にバックプロパゲートしないことを更に含む、条項12に記載のコンピュータ実装方法。
14.差を、フィッシング分類器層を越えて、画像埋め込みを生成するために使用される埋め込み層にバックプロパゲートしないことを更に含む、条項12に記載のコンピュータ実装方法。
15.例示的なURLの各々についてURL特徴量ハッシュを生成することと、コンテンツページのレンダリングから抽出された単語の単語エンコーディングを生成することと、レンダリングからキャプチャされた画像の画像埋め込みを生成することと、を更に含む、条項12に記載のコンピュータ実装方法。
16.ransformerからの双方向エンコーダ表現(略してBERT)エンコーダ又はBERTエンコーダの変形を使用して、単語エンコーディングを生成することを更に含む、条項15に記載のコンピュータ実装方法。
17. 残差ニューラルネットワーク(略してResNet)と、Inception-v3と、VGG-16と、のうちの1つを使用して画像埋め込みを生成することを更に含む、条項15に記載のコンピュータ実装方法。
1. A phishing classifier that classifies URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
a URL feature hasher that parses a URL into features and hashes the features to generate a URL feature hash;
Access the content page at the URL and render the content page internally,
Extract words from content page renderings,
a headless browser configured to capture an image of at least a portion of a rendering of a content page;
a natural language encoder that is pre-trained on a natural language and that generates word encodings of words extracted from the content pages;
an image embedder that is pre-trained on images and that generates image embeddings of images captured from the content pages;
Trained on URL feature hashes, word encodings, and image embeddings of example URLs, with each example URL accompanied by a ground truth classification as phishing or non-phishing;
a phishing classifier layer that processes a concatenated input of the URL feature hashes, word encodings, and image embeddings of the URL to generate at least one likelihood score that the URL and content accessed via the URL presents a phishing risk.
2. The phishing classifier of
3. The phishing classifier of
4. A computer-implemented method for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash;
applying a natural language encoder that is pre-trained on a natural language and that generates word encodings for words parsed from a rendering of a content page;
applying an image encoder that is pre-trained on an image and that generates an image embedding of an image captured from at least a portion of the rendering;
applying a phishing classifier layer trained on a concatenation of URL feature hashes, word encodings, and image embeddings for example URLs with ground truth classifications as phishing or not phishing;
and processing the URL feature hashes, word encodings, and image embeddings to generate at least one likelihood score that the URL and content accessed via the URL present a phishing risk.
5. Applying headless browsers,
accessing a content page via a URL and internally rendering the content page;
Parsing words from the rendered content page;
5. The computer-implemented method of
6. The computer-implemented method of
7. The computer-implemented method of
8. A non-transitory computer readable storage medium characterized by computer program instructions for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, the instructions, when executed on a processor,
applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash;
applying a natural language encoder that is pre-trained on a natural language and that generates word encodings for words parsed from a rendering of a content page;
applying an image encoder that is pre-trained on an image and that generates an image embedding of an image captured from at least a portion of the rendering;
applying a phishing classifier layer trained on a concatenation of URL feature hashes, word encodings, and image embeddings for example URLs with ground truth classifications as phishing or not phishing;
1. A non-transitory computer-readable storage medium implementing a method that includes processing the URL feature hashes, word encodings, and image embeddings to generate at least one likelihood score that the URL and content accessed via the URL present a phishing risk.
9. Applying headless browsers;
accessing a content page via a URL and internally rendering the content page;
Parsing words from the rendered content page;
and capturing an image of at least a portion of the rendered content page.
10. The non-transitory computer-readable storage medium of
11. The non-transitory computer-readable storage medium of
12. A computer-implemented method for training a phishing classifier layer to classify URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
For an exemplary URL:
receiving and processing URL feature hashes, word encodings of words extracted from the content page, and image embeddings of images captured from the rendering of the content page;
generating at least one likelihood score that each example URL and content page accessed via the URL presents a phishing risk;
Calculating the difference between the likelihood score for each example URL and each corresponding ground truth that the example URL and content page is phishing or non-phishing;
training the coefficients of a phishing classifier layer using the differences for the example URLs;
and storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
13. The computer-implemented method of
14. The computer-implemented method of
15. The computer-implemented method of
16. The computer-implemented method of claim 15, further comprising generating the word encodings using a Bidirectional Encoder Representation from Ransformer (abbreviated BERT) encoder or a variant of a BERT encoder.
17. The computer-implemented method of claim 15, further comprising generating the image embeddings using one of: a Residual Neural Network (abbreviated as ResNet), Inception-v3, and VGG-16.
条項セット2
1.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する、フィッシング分類器であって、
URLを特徴量にパースして、特徴量をハッシュ化して、URL特徴量ハッシュを生成する、URL特徴量ハッシャと、
URLのコンテンツページにアクセスし、コンテンツページを内部的にレンダリングし、
コンテンツページからHTMLトークンを抽出し、
コンテンツページのレンダリングの少なくとも一部の画像をキャプチャするように構成されたヘッドレスブラウザと、
例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、コンテンツページのレンダリングからキャプチャされた画像を再現するようにデコードされるHTMLトークンに関して訓練されており、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダと、
画像に関して事前訓練されており、コンテンツページからキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器と、
例示的なURLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みに関して訓練されており、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴い、
URLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みを処理して、URLと、URLを介してアクセスされたコンテンツページと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層と、を含む、フィッシング分類器。
2.所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、かつ所定のトークン語彙に属さないコンテンツページの部分を無視するように構成されたヘッドレスブラウザを更に含む、条項1に記載のフィッシング分類器。
3.最大64個のHTMLトークンのHTMLエンコードの生成のために抽出するように構成されたヘッドレスブラウザを更に含む、条項1に記載のフィッシング分類器。
4.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するコンピュータ実装方法であって、
URL特徴量ハッシャを適用し、URLから特徴量を抽出し、特徴量をハッシュ化して、URL特徴量ハッシュを生成することと、
自然言語に関して訓練されており、レンダリングされたコンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダを適用することと、
画像に関して事前訓練されており、レンダリングされたコンテンツページの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器、
フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴って分類された例示的なURLについての、URL特徴量ハッシュと、HTMLエンコーディングと、画像埋め込みと、に関して訓練された、フィッシング分類器層を適用することと、
URLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みを処理して、URLと、URLを介してアクセスされたコンテンツページがフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を含む、コンピュータ実装方法。
5.ヘッドレスブラウザを適用することと、
URLを介してコンテンツページにアクセスし、コンテンツページを内部的にレンダリングすることと、
レンダリングされたコンテンツからのHTMLトークンをパースすることと、
レンダリングされたコンテンツの少なくとも一部の画像をキャプチャすることと、を更に含む、条項4に記載のコンピュータ実装方法。
6.ヘッドレスブラウザが、コンテンツからの、所定のトークン語彙に属するHTMLトークンをパースし、所定のトークン語彙に属さないコンテンツの部分を無視することを更に含む、条項5に記載のコンピュータ実装方法。
7.ヘッドレスブラウザが、HTMLエンコーディングの生成のために最大64個のHTMLトークンをパースすることを更に含む、条項5に記載のコンピュータ実装方法。
8.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するコンピュータプログラム命令で特徴付けられた非一時的コンピュータ可読記憶媒体であって、命令が、プロセッサ上で実行されるときに、
URL特徴量ハッシャを適用し、URLから特徴量を抽出し、特徴量をハッシュ化して、URL特徴量ハッシュを生成することと、
自然言語に関して訓練されており、レンダリングされたコンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダを適用することと、
レンダリングされたコンテンツの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する画像埋め込み器を適用することと、
URLの、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みを処理して、URLと、URLを介してアクセスされたコンテンツページがフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層を適用することと、を含む方法を実装する、非一時的コンピュータ可読記憶媒体。
9.命令が、プロセッサ上で実行されるときに、
フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴って分類された例示的なURLについての、URL特徴量ハッシュ、HTMLエンコーディング、及び画像埋め込みに関して、フィッシング分類器層を訓練することを更に含む、条項8に記載の非一時的コンピュータ可読記憶媒体。
10.命令が、プロセッサ上で実行されるときに、
HTMLエンコーダを、例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、コンテンツページのレンダリングからキャプチャされた画像を再現するようにデコードされるHTMLトークンに関して、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成するHTMLエンコーダを訓練することを更に含む、条項8に記載の非一時的コンピュータ可読記憶媒体。
11.命令が、プロセッサ上で実行されるときに、
画像埋め込み器が、埋め込み空間に画像を埋め込むように事前訓練された、ResNet埋め込み器又はResNet埋め込み器の変形である、方法を実装する、条項8に記載の非一時的コンピュータ可読記憶媒体。
12.命令が、プロセッサ上で実行されるときに、
ヘッドレスブラウザを適用することと、
URLを介してコンテンツにアクセスし、コンテンツを内部的にレンダリングすることと、
レンダリングされたコンテンツからHTMLトークンをパースすることと、
レンダリングされたコンテンツの少なくとも一部の画像をキャプチャすることと、を更に含む方法を実装する、条項8に記載の非一時的コンピュータ可読記憶媒体。
13.命令が、プロセッサ上で実行されるときに、ヘッドレスブラウザが、コンテンツからの、所定のトークン語彙に属するHTMLトークンをパースし、所定のトークン語彙に属さないコンテンツの部分を無視することを更に含む方法を実装する、条項12に記載の非一時的コンピュータ可読記憶媒体。
14.命令が、プロセッサ上で実行されるときに、ヘッドレスブラウザが、HTMLエンコーディングの生成のために最大64個のHTMLトークンをパースすることを更に含む方法を実装する、条項12に記載の非一時的コンピュータ可読記憶媒体。
15.フィッシング分類器層を訓練して、URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するためのコンピュータ実装方法であって、
例示的なURLについて、
URL特徴量ハッシュと、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングと、コンテンツページのレンダリングからキャプチャされた画像の画像埋め込みと、を受信及び処理して、
各例示的なURLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、
各例示的なURLと、例示的なURL及びコンテンツページがフィッシングであるか、又はフィッシングでないかに関する各対応するグラウンドトゥルースとの間の差を計算することと、
例示的なURLについての計算された差を使用して、フィッシング分類器層の係数を訓練することと、
本番URLと、本番URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する使用のために、訓練された係数を保存することと、を含む、コンピュータ実装方法。
16.差を、フィッシング分類器層を越えて、HTMLエンコーディングを生成するために使用されるエンコーディング層にバックプロパゲートすることを更に含む、条項15に記載のコンピュータ実装方法。
17.差を、フィッシング分類器層を越えて、画像埋め込みを生成するために使用される埋め込み層にバックプロパゲートしないことを更に含む、条項15に記載のコンピュータ実装方法。
18.例示的なURLの各々についてURL特徴量ハッシュを生成することと、コンテンツページのレンダリングから抽出されたHTMLトークンのHTMLエンコーディングを生成することと、レンダリングからキャプチャされた画像の画像埋め込みを生成することと、を更に含む、条項15に記載のコンピュータ実装方法。
19.第2の例示的なURLについて、第2の例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、第2の例示的なURLのコンテンツページからキャプチャされた画像を生成するようにデコードされるHTMLトークンを使用して、HTMLエンコーディングを生成するようにHTMLエンコーダ-デコーダを訓練することを更に含む、条項18に記載のコンピュータ実装方法。
20.ResNet埋め込み器又はResNet埋め込み器の変形を使用して画像埋め込みを生成することを更に含む、条項19に記載のコンピュータ実装方法。
1. A phishing classifier that classifies URLs and content pages accessed via the URLs as phishing or non-phishing,
a URL feature hasher that parses a URL into features and hashes the features to generate a URL feature hash;
Access the content page at the URL and render the content page internally,
Extracting HTML tokens from the content page;
a headless browser configured to capture an image of at least a portion of a rendering of a content page;
an HTML encoder that is trained on HTML tokens extracted from a content page of an exemplary URL, encoded, and then decoded to recreate an image captured from a rendering of the content page, and that generates an HTML encoding of the HTML tokens extracted from the content page;
an image embedder that is pre-trained on images and that generates image embeddings of images captured from the content pages;
Trained on URL feature hashes, HTML encodings, and image embeddings of example URLs, with each example URL accompanied by a ground truth classification as phishing or non-phishing;
a phishing classifier layer that processes the URL feature hashes, HTML encoding, and image embeddings of the URL to generate at least one likelihood score that the URL and a content page accessed via the URL presents a phishing risk.
2. The phishing classifier of
3. The phishing classifier of
4. A computer-implemented method for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash;
applying an HTML encoder trained on a natural language to generate an HTML encoding of HTML tokens extracted from a rendered content page;
an image embedder that is pre-trained on images and that generates an image embedding for an image captured from at least a portion of a rendered content page;
applying a phishing classifier layer trained on URL feature hashes, HTML encodings, and image embeddings for example URLs classified with ground truth classifications as phishing or not phishing;
1. A computer-implemented method comprising: processing the URL feature hashes, HTML encoding, and image embedding of the URL to generate at least one likelihood score that the URL and a content page accessed via the URL present a phishing risk.
5. Applying headless browsers,
accessing a content page via a URL and internally rendering the content page;
Parsing HTML tokens from the rendered content;
5. The computer-implemented method of
6. The computer-implemented method of
7. The computer-implemented method of
8. A non-transitory computer readable storage medium characterized by computer program instructions for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, the instructions, when executed on a processor,
applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash;
applying an HTML encoder trained on a natural language to generate an HTML encoding of HTML tokens extracted from a rendered content page;
applying an image embedder to generate an image embedding of the captured image from at least a portion of the rendered content;
and applying a phishing classifier layer that processes URL feature hashes, HTML encodings, and image embeddings of the URL to generate at least one likelihood score that the URL and a content page accessed via the URL presents a phishing risk.
9. When an instruction is executed on a processor:
9. The non-transitory computer-readable storage medium of
10. When an instruction is executed on a processor:
9. The non-transitory computer-readable storage medium of
11. When an instruction is executed on a processor:
9. The non-transitory computer-readable storage medium of
12. When an instruction is executed on a processor:
Applying a headless browser,
accessing the content via a URL and rendering the content internally;
Parsing HTML tokens from the rendered content;
9. The non-transitory computer-readable storage medium of
13. The non-transitory computer-readable storage medium of
14. The non-transitory computer-readable storage medium of
15. A computer-implemented method for training a phishing classifier layer to classify URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
For an exemplary URL:
receiving and processing the URL feature hashes, HTML encodings of HTML tokens extracted from the content page, and image embeddings of images captured from the rendering of the content page;
generating at least one likelihood score that each example URL and content accessed via the URL presents a phishing risk;
Calculating the difference between each example URL and each corresponding ground truth regarding whether the example URL and content page is phishing or non-phishing;
training the coefficients of a phishing classifier layer using the calculated differences for the example URLs;
and storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
16. The computer-implemented method of clause 15, further comprising backpropagating the differences beyond the phishing classifier layer to an encoding layer used to generate the HTML encoding.
17. The computer-implemented method of clause 15, further comprising not backpropagating the difference beyond the phishing classifier layer to an embedding layer used to generate the image embedding.
18. The computer-implemented method of clause 15, further including generating a URL feature hash for each example URL, generating an HTML encoding of HTML tokens extracted from the rendering of the content page, and generating image embeddings of images captured from the rendering.
19. The computer-implemented method of clause 18, further comprising training an HTML encoder-decoder to generate an HTML encoding for a second exemplary URL using HTML tokens extracted from the content page of the second exemplary URL, encoded, and then decoded to generate an image captured from the content page of the second exemplary URL.
20. The computer-implemented method of clause 19, further comprising generating the image embedding using a ResNet embedder or a variant of the ResNet embedder.
条項セット3
1.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する、フィッシング分類器であって、
分類のためのURLを受け入れる入力プロセッサと、
URLのURL埋め込みを生成するURL埋め込み器と、
URLを介してアクセスされたコンテンツページからHTMLトークンを抽出するHTMLパーサと、
HTMLトークンからHTMLエンコーディングを生成するHTMLエンコーダと、
URL埋め込み及びHTMLエンコーディングに対して動作して、URLと、URLを介してアクセスされたコンテンツと、をフィッシングか、又はフィッシングでないとして分類する、フィッシング分類層と、を含む、フィッシング分類器。
2.URLから所定の文字セット内の文字を抽出して文字列を生成し、かつフィッシングか、又はフィッシングでないとしてのURLのグラウンドトゥルース分類を使用して訓練されており、URL埋め込みを生成するURL埋め込み器と、
URLのコンテンツにアクセスし、
コンテンツページからHTMLトークンを抽出するように構成されたHTMLパーサと、
各例示的なURLが、例示的なURLを介してアクセスされたコンテンツページからキャプチャされたグラウンドトゥルースイメージを伴う例示的なURLのコンテンツページから抽出されたHTMLトークンに関して訓練されており、
コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成する、HTMLエンコーダと、
各例示的なURLがフィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLのURL埋め込みとHTMLエンコーディングに関して訓練されており、
URL埋め込み及びHTMLエンコーディングの連結された入力を処理して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成する、フィッシング分類器層と、を更に含む、条項1に記載のフィッシング分類器。
3.入力プロセッサが、URLをリアルタイムでの分類のために受け入れる、条項1に記載のフィッシング分類器。
4.フィッシング分類器層が、URLと、URLを介してアクセスされたコンテンツと、をリアルタイムでフィッシングか、又はフィッシングでないとして分類するように動作する、条項1に記載のフィッシング分類器。
5.所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、かつ所定のトークン語彙に属さないコンテンツページの部分を無視するように構成されたHTMLパーサを更に含む、条項1に記載のフィッシング分類器。
6.最大64個のHTMLトークンのHTMLエンコーディングの生成のために抽出するように構成されたHTMLパーサを更に含む、条項1に記載のフィッシング分類器。
7.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するコンピュータ実装方法であって、
URLから所定の文字セット内の文字を抽出して文字列を生成してURL埋め込みを生成し、フィッシングか、又はフィッシングでないとしてのURLのグラウンドトゥルース分類を訓練及び使用する、URL埋め込みを生成するURL埋め込み器を適用することと、
HTMLパーサを適用して、URLのコンテンツにアクセスし、コンテンツページからHTMLトークンを抽出することと、
HTMLエンコーダを適用して、抽出されたHTMLトークンのHTMLエンコーディングを生成することと、
URL埋め込み及びHTMLエンコーディングの連結された入力にフィッシング分類器層を適用して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を含む、コンピュータ実装方法。
8.所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、所定のトークン語彙に属さないコンテンツページの部分を無視するHTMLパーサを更に含む、条項7に記載のコンピュータ実装方法。
9.HTMLパーサが、最大64個のHTMLトークンのHTMLエンコーディングの生成のために抽出することを更に含む、条項7に記載のコンピュータ実装方法。
10.リアルタイムで、URL埋め込み器、HTMLパーサ、HTMLエンコーダ、及びフィッシング分類器層を適用することを更に含む、条項7に記載のコンピュータ実装方法。
11.フィッシング分類器層が、URLと、URLを介してアクセスされたコンテンツと、がリアルタイムでフィッシングリスクを提示する少なくとも1つの尤度スコアを生成するように動作する、条項7に記載のコンピュータ実装方法。
12.URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するコンピュータプログラム命令で特徴付けられた非一時的コンピュータ可読記憶媒体であって、命令が、プロセッサ上で実行されるときに、
URL埋め込み器を適用し、URLから所定の文字セット内の文字を抽出して文字列を生成し、URL埋め込みを生成することと、
HTMLパーサを適用して、コンテンツページからHTMLトークンを抽出することと、
HTMLエンコーダを適用して、抽出されたHTMLトークンのHTMLエンコーディングを生成することと、
URL埋め込み及びHTMLエンコーディングの連結された入力にフィッシング分類器層を適用して、URLと、URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、を含む方法を実装する、非一時的コンピュータ可読記憶媒体。
13.命令が、プロセッサ上で実行されるときに、所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、所定のトークン語彙に属さないコンテンツページの部分を無視するHTMLパーサを更に含む方法を実装する、条項12に記載の非一時的コンピュータ可読記憶媒体。
14.命令が、プロセッサ上で実行されるときに、HTMLパーサが、最大64個のHTMLトークンのHTMLエンコーディングの生成のために抽出することを更に含む方法を実装する、条項12に記載の非一時的コンピュータ可読記憶媒体。
15.命令が、プロセッサ上で実行されるときに、各例示的なURLが、例示的なURLを介してアクセスされたコンテンツページからキャプチャされたグラウンドトゥルース画像を伴う例示的なURLのコンテンツページから抽出されたHTMLトークンに関してHTMLエンコーダを訓練することを更に含む方法を実装する、条項12に記載の非一時的コンピュータ可読記憶媒体。
16.命令が、プロセッサ上で実行されるときに、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLのURL埋め込み及びHTMLエンコーディングに関してフィッシング分類器層を訓練することを更に含む方法を実装する、条項12に記載の非一時的コンピュータ可読記憶媒体。
17.フィッシング分類器層を訓練して、URLと、URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類するためのコンピュータ実装方法であって、
例示的なURLと、URLを介してアクセスされたコンテンツページと、について、
URLと、コンテンツページから抽出されたHTMLトークンのHTMLエンコーディングと、から抽出された文字のURL埋め込みを受信及び処理して、
各例示的なURLと、URLを介してアクセスされたコンテンツページと、がフィッシングリスクを提示する少なくとも1つの尤度スコアを生成することと、
各例示的なURLについての尤度スコアと、例示的なURL及びコンテンツページがフィッシングか、又はフィッシングでないという各対応するグラウンドトゥルースと、の間の差を計算することと、
例示的なURLについての差を使用して、フィッシング分類器層の係数を訓練することと、
本番URLと、本番URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する使用のために、訓練された係数を保存することと、を含む、コンピュータ実装方法。
18.ヘッドレスブラウザを適用することと、
URLのコンテンツにアクセスし、コンテンツページを内部的にレンダリングすることと、
コンテンツページの少なくとも一部の画像をキャプチャすることと、を更に含む、条項17に記載のコンピュータ実装方法。
19.差を、フィッシング分類器層を越えて、HTMLエンコーディングを生成するために使用されるエンコーディング層にバックプロパゲートすることを更に含む、条項17に記載のコンピュータ実装方法。
20.差を、フィッシング分類器層を越えて、URL埋め込みを生成するために使用される埋め込み層にバックプロパゲートすることを更に含む、条項17に記載のコンピュータ実装方法。
21.例示的なURLから抽出された文字のURL埋め込みを生成することと、
例示的なURLを介してアクセスされたコンテンツページから抽出されたHTMLトークンのHTMLエンコーディングを生成し、レンダリングからキャプチャされた画像の画像埋め込みを生成することと、を更に含む、条項18に記載のコンピュータ実装方法。
22.第2の例示的なURLについて、第2の例示的なURLのコンテンツページから抽出され、エンコードされ、次いで、第2の例示的なURLのコンテンツページからキャプチャされた画像を再現するようにデコードされるHTMLトークンを使用して、HTMLエンコーディングを生成するようにHTMLエンコーダ-デコーダを訓練することを更に含む、条項18に記載のコンピュータ実装方法。
23.所定のトークン語彙に属するHTMLトークンをコンテンツページから抽出し、所定のトークン語彙に属さないコンテンツページの部分を無視することを更に含む、条項17に記載のコンピュータ実装方法。
24.抽出を所定の数のHTMLトークンに制限することを更に含む、条項23に記載のコンピュータ実装方法。
25.最大64個のHTMLトークンのHTMLエンコーディングを生成することを更に含む、条項23に記載のコンピュータ実装方法。
1. A phishing classifier that classifies URLs and content pages accessed via the URLs as phishing or non-phishing,
an input processor for accepting a URL for classification;
a URL embedder for generating a URL embedding for a URL;
an HTML parser that extracts HTML tokens from a content page accessed via a URL;
an HTML encoder for generating an HTML encoding from the HTML tokens;
a phishing classification layer that operates on the URL embedding and HTML encoding to classify the URL and the content accessed via the URL as phishing or non-phishing.
2. A URL embedder that extracts characters in a predefined character set from a URL to generate a string and is trained using ground truth classification of URLs as phishing or non-phishing to generate a URL embedding;
Access the content of the URL
an HTML parser configured to extract HTML tokens from a content page;
each example URL is trained on HTML tokens extracted from the example URL's content page along with a ground truth image captured from the content page accessed via the example URL;
an HTML encoder that generates an HTML encoding of the HTML tokens extracted from the content page;
trained on URL embeddings and HTML encodings of example URLs with a ground truth classification of each example URL as phishing or non-phishing;
and a phishing classifier layer that processes the concatenated input of the URL embedding and HTML encoding to generate at least one likelihood score that the URL and the content accessed via the URL present a phishing risk.
3. The phishing classifier of
4. The phishing classifier of
5. The phishing classifier of
6. The phishing classifier of
7. A computer-implemented method for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
applying a URL embedder that extracts characters in a predefined character set from a URL to generate a string to generate a URL embedding, and training and using a ground truth classification of URLs as phishing or non-phishing;
applying an HTML parser to access the content of the URL and extract HTML tokens from the content page;
applying an HTML encoder to generate an HTML encoding of the extracted HTML tokens;
and applying a phishing classifier layer to a concatenated input of the URL embedding and the HTML encoding to generate at least one likelihood score that the URL and content accessed via the URL present a phishing risk.
8. The computer-implemented method of
9. The computer-implemented method of
10. The computer-implemented method of
11. The computer-implemented method of
12. A non-transitory computer readable storage medium characterized by computer program instructions for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, the instructions, when executed on a processor,
applying a URL embedder to extract characters in a predefined character set from the URL to generate a string to generate a URL embedding;
applying an HTML parser to extract HTML tokens from the content page;
applying an HTML encoder to generate an HTML encoding of the extracted HTML tokens;
1. A non-transitory computer-readable storage medium implementing a method that includes applying a phishing classifier layer to a concatenated input of the URL embedding and the HTML encoding to generate at least one likelihood score that the URL and content accessed via the URL present a phishing risk.
13. The non-transitory computer-readable storage medium of
14. The non-transitory computer-readable storage medium of
15. The non-transitory computer-readable storage medium of
16. The non-transitory computer-readable storage medium of
17. A computer-implemented method for training a phishing classifier layer to classify URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
For an example URL and a content page accessed via the URL:
receiving and processing the URL and the HTML encoding of the HTML tokens extracted from the content page and the URL embedding of the extracted characters;
generating at least one likelihood score that each example URL and content page accessed via the URL presents a phishing risk;
Calculating the difference between the likelihood score for each example URL and each corresponding ground truth that the example URL and content page is phishing or non-phishing;
training the coefficients of a phishing classifier layer using the differences for the example URLs;
and storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
18. Applying a headless browser;
accessing the content of the URL and internally rendering the content page;
20. The computer-implemented method of claim 17, further comprising: capturing an image of at least a portion of the content page.
19. The computer-implemented method of clause 17, further comprising backpropagating the differences beyond the phishing classifier layer to an encoding layer used to generate the HTML encoding.
20. The computer-implemented method of clause 17, further comprising backpropagating the differences beyond the phishing classifier layer to an embedding layer used to generate URL embeddings.
21. Generating a URL embedding of characters extracted from an example URL;
20. The computer-implemented method of claim 18, further comprising: generating an HTML encoding of the HTML tokens extracted from the content page accessed via the exemplary URL; and generating an image embedding of the image captured from the rendering.
22. The computer-implemented method of clause 18, further comprising training an HTML encoder-decoder to generate HTML encoding for a second exemplary URL using HTML tokens extracted from the content page of the second exemplary URL, encoded, and then decoded to recreate the image captured from the content page of the second exemplary URL.
23. The computer-implemented method of clause 17, further comprising extracting HTML tokens from the content page that belong to a predefined token vocabulary, and ignoring portions of the content page that do not belong to the predefined token vocabulary.
24. The computer-implemented method of clause 23, further comprising limiting the extraction to a predetermined number of HTML tokens.
25. The computer-implemented method of clause 23, further comprising generating an HTML encoding of up to 64 HTML tokens.
Claims (17)
前記URLを特徴量にパースして、前記特徴量をハッシュ化して、URL特徴量ハッシュを生成する、URL特徴量ハッシャと、
前記URLのコンテンツページにアクセスし、前記コンテンツページを内部的にレンダリングし、
前記コンテンツページの前記レンダリングから単語を抽出し、
前記コンテンツページの前記レンダリングの少なくとも一部の画像をキャプチャするように構成されたヘッドレスブラウザと、
自然言語に関して事前訓練されており、前記コンテンツページから抽出された前記単語の単語エンコーディングを生成する、自然言語エンコーダと、
画像に関して事前訓練されており、前記コンテンツページからキャプチャされた前記画像の画像埋め込みを生成する、画像埋め込み器と、
前記URLと、前記URLを介してアクセスされたコンテンツと、がフィッシングリスクを提示する少なくとも1つのスコアを生成するように、前記URL特徴量ハッシュと、前記単語エンコーディングと、前記URLの前記画像埋め込みと、の連結された入力を処理するフィッシング分類器層と、を含み、
前記フィッシング分類器層が、例示的なURLの、前記URL特徴量ハッシュ、前記単語エンコーディング、及び前記画像埋め込みに関して訓練されており、各例示的なURLが、フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う、フィッシング分類器。 a phishing classifier for classifying a URL and a content page accessed via said URL as phishing or non-phishing,
a URL feature hasher that parses the URL into features and hashes the features to generate a URL feature hash;
Accessing the content page at the URL and internally rendering the content page;
Extracting words from the rendering of the content page;
a headless browser configured to capture an image of at least a portion of the rendering of the content page;
a natural language encoder that is pre-trained on a natural language and that generates word encodings of the words extracted from the content pages;
an image embedder that is pre-trained on images and that generates an image embedding of the image captured from the content page;
a phishing classifier layer that processes a concatenated input of the URL feature hash, the word encoding, and the image embedding of the URL to generate at least one score that indicates a phishing risk of the URL and the content accessed via the URL;
a phishing classifier, the phishing classifier layer being trained on the URL feature hashes, the word encodings, and the image embeddings of example URLs, each example URL being accompanied by a ground truth classification as either phishing or not phishing.
URL特徴量ハッシャを適用し、前記URLから特徴量を抽出し、前記特徴量をハッシュ化して、URL特徴量ハッシュを生成することと、
自然言語に関して事前訓練されており、前記コンテンツページのレンダリングからパースされた単語の単語エンコーディングを生成する、自然言語エンコーダを適用することと、
画像に関して事前訓練されており、前記レンダリングの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器を適用することと、
フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLについての、前記URL特徴量ハッシュと、前記単語エンコーディングと、前記画像埋め込みと、の連結に関して訓練されたフィッシング分類器層を適用することと、
前記URL特徴量ハッシュと、前記単語エンコーディングと、前記画像埋め込みと、の連結された入力を処理して、前記URLと、前記URLを介してアクセスされた前記コンテンツと、がフィッシングリスクを提示する少なくとも1つのスコアを生成することと、を含む、コンピュータ実装方法。 1. A computer-implemented method for classifying URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash;
applying a natural language encoder that is pre-trained on a natural language and that generates word encodings for words parsed from the rendering of the content page;
applying an image embedder that is pre-trained on an image and that generates an image embedding of an image captured from at least a portion of the rendering;
applying a phishing classifier layer trained on the concatenation of the URL feature hashes, the word encodings, and the image embeddings for example URLs with ground truth classifications as phishing or not phishing;
and processing a concatenated input of the URL feature hash, the word encodings, and the image embeddings to generate at least one score that indicates a phishing risk of the URL and the content accessed via the URL.
前記URLを介して前記コンテンツページにアクセスし、前記コンテンツページを内部的にレンダリングすることと、
前記レンダリングされた前記コンテンツページから単語をパースすることと、
前記レンダリングされたコンテンツページの少なくとも一部の画像をキャプチャすることと、を更に含む、請求項4に記載のコンピュータ実装方法。 Applying a headless browser,
accessing the content page via the URL and internally rendering the content page;
Parsing words from the rendered content page;
The computer-implemented method of claim 4 , further comprising: capturing an image of at least a portion of the rendered content page.
URL特徴量ハッシャを適用し、前記URLから特徴量を抽出し、前記特徴量をハッシュ化して、URL特徴量ハッシュを生成することと、
自然言語に関して事前訓練されており、前記コンテンツページのレンダリングからパースされた単語の単語エンコーディングを生成する、自然言語エンコーダを適用することと、
画像に関して事前訓練されており、前記レンダリングの少なくとも一部からキャプチャされた画像の画像埋め込みを生成する、画像埋め込み器を適用することと、
フィッシングか、又はフィッシングでないとしてのグラウンドトゥルース分類を伴う例示的なURLについての、前記URL特徴量ハッシュと、前記単語エンコーディングと、前記画像埋め込みと、の連結に関して訓練されたフィッシング分類器層を適用することと、
前記URL特徴量ハッシュと、前記単語エンコーディングと、前記画像埋め込みと、の連結された入力を処理して、前記URLと、前記URLを介してアクセスされた前記コンテンツと、がフィッシングリスクを提示する少なくとも1つのスコアを生成することと、を含む方法を実装する、非一時的コンピュータ可読記憶媒体。 1. A non-transitory computer readable storage medium characterized by computer program instructions for classifying URLs and content pages accessed via said URLs as phishing or non-phishing, said instructions, when executed on a processor, comprising:
applying a URL feature hasher to extract features from the URL and hash the features to generate a URL feature hash;
applying a natural language encoder that is pre-trained on a natural language and that generates word encodings for words parsed from the rendering of the content page;
applying an image embedder that is pre-trained on an image and that generates an image embedding of an image captured from at least a portion of the rendering;
applying a phishing classifier layer trained on the concatenation of the URL feature hashes, the word encodings, and the image embeddings for example URLs with ground truth classifications as phishing or not phishing;
and processing a concatenated input of the URL feature hash, the word encodings, and the image embeddings to generate at least one score that presents a phishing risk for the URL and the content accessed via the URL.
前記URLを介して前記コンテンツページにアクセスし、前記コンテンツページを内部的にレンダリングすることと、
前記レンダリングされた前記コンテンツページから単語をパースすることと、
前記レンダリングされたコンテンツページの少なくとも一部の画像をキャプチャすることと、を更に含む、請求項8に記載の非一時的コンピュータ可読記憶媒体。 Applying a headless browser,
accessing the content page via the URL and internally rendering the content page;
Parsing words from the rendered content page;
and capturing an image of at least a portion of the rendered content page.
例示的なURLについて、
URL特徴量ハッシュと、前記コンテンツページから抽出された単語の単語エンコーディングと、前記コンテンツページのレンダリングからキャプチャされた画像の画像埋め込みと、の連結された入力を受信及び処理して、
各例示的なURLと、前記URLを介してアクセスされた前記コンテンツページと、がフィッシングリスクを提示する少なくとも1つのスコアを生成することと、
各例示的なURLについての前記スコアと、前記例示的なURL及び前記コンテンツページがフィッシングか、又はフィッシングでないという各対応するグラウンドトゥルースと、の間の差を計算することと、
前記例示的なURLについての差を使用して、前記フィッシング分類器層の係数を訓練することと、
本番URLと、前記本番URLを介してアクセスされたコンテンツページと、をフィッシングか、又はフィッシングでないとして分類する使用のために、前記訓練された係数を保存することと、を含む、コンピュータ実装方法。 1. A computer-implemented method for training a phishing classifier layer to classify URLs and content pages accessed via the URLs as phishing or non-phishing, comprising:
For an exemplary URL:
receiving and processing a concatenated input of URL feature hashes, word encodings of words extracted from the content page, and image embeddings of images captured from a rendering of the content page;
generating at least one score representing a phishing risk for each example URL and the content page accessed via said URL;
calculating a difference between the score for each example URL and each corresponding ground truth that the example URL and the content page are phishing or non-phishing;
training coefficients of the phishing classifier layer using the differences for the example URLs;
and storing the trained coefficients for use in classifying production URLs and content pages accessed via the production URLs as phishing or non-phishing.
16. The computer-implemented method of claim 15, further comprising generating the image embeddings using one of: a Residual Neural Network (ResNet for short), Inception-v3, and VGG-16.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/475,230 | 2021-09-14 | ||
US17/475,236 US11444978B1 (en) | 2021-09-14 | 2021-09-14 | Machine learning-based system for detecting phishing websites using the URLS, word encodings and images of content pages |
US17/475,230 US11438377B1 (en) | 2021-09-14 | 2021-09-14 | Machine learning-based systems and methods of using URLs and HTML encodings for detecting phishing websites |
US17/475,233 | 2021-09-14 | ||
US17/475,233 US11336689B1 (en) | 2021-09-14 | 2021-09-14 | Detecting phishing websites via a machine learning-based system using URL feature hashes, HTML encodings and embedded images of content pages |
US17/475,236 | 2021-09-14 | ||
PCT/US2022/043392 WO2023043750A1 (en) | 2021-09-14 | 2022-09-13 | Machine learning-based systems and methods of using url feature hashes, html encodings, and content page embedded images for detecting phishing websites |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024537659A true JP2024537659A (en) | 2024-10-16 |
Family
ID=85602023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024516418A Pending JP2024537659A (en) | 2021-09-14 | 2022-09-13 | Machine learning based system and method using URL feature hashing, HTML encoding, and content page embedded images to detect phishing websites |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP2024537659A (en) |
DE (1) | DE112022004398T5 (en) |
WO (1) | WO2023043750A1 (en) |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102790762A (en) * | 2012-06-18 | 2012-11-21 | 东南大学 | Phishing website detection method based on uniform resource locator (URL) classification |
US9398102B2 (en) | 2013-03-06 | 2016-07-19 | Netskope, Inc. | Security for network delivered services |
US10826940B2 (en) | 2016-03-11 | 2020-11-03 | Netskope, Inc. | Systems and methods of enforcing multi-part policies on data-deficient transactions of cloud computing services |
US10270788B2 (en) | 2016-06-06 | 2019-04-23 | Netskope, Inc. | Machine learning based anomaly detection |
US10601866B2 (en) * | 2017-08-23 | 2020-03-24 | International Business Machines Corporation | Discovering website phishing attacks |
EP3716575B1 (en) * | 2019-03-26 | 2024-07-17 | Proofpoint, Inc. | Visual comparison platform for malicious site detection |
US11715151B2 (en) * | 2020-01-31 | 2023-08-01 | Walmart Apollo, Llc | Systems and methods for retraining of machine learned systems |
US11082445B1 (en) | 2021-01-21 | 2021-08-03 | Netskope, Inc. | Preventing phishing attacks via document sharing |
US11444978B1 (en) | 2021-09-14 | 2022-09-13 | Netskope, Inc. | Machine learning-based system for detecting phishing websites using the URLS, word encodings and images of content pages |
US11336689B1 (en) | 2021-09-14 | 2022-05-17 | Netskope, Inc. | Detecting phishing websites via a machine learning-based system using URL feature hashes, HTML encodings and embedded images of content pages |
US11438377B1 (en) | 2021-09-14 | 2022-09-06 | Netskope, Inc. | Machine learning-based systems and methods of using URLs and HTML encodings for detecting phishing websites |
-
2022
- 2022-09-13 WO PCT/US2022/043392 patent/WO2023043750A1/en active Application Filing
- 2022-09-13 JP JP2024516418A patent/JP2024537659A/en active Pending
- 2022-09-13 DE DE112022004398.9T patent/DE112022004398T5/en active Pending
Also Published As
Publication number | Publication date |
---|---|
DE112022004398T5 (en) | 2024-07-04 |
WO2023043750A1 (en) | 2023-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11444978B1 (en) | Machine learning-based system for detecting phishing websites using the URLS, word encodings and images of content pages | |
US11336689B1 (en) | Detecting phishing websites via a machine learning-based system using URL feature hashes, HTML encodings and embedded images of content pages | |
US11438377B1 (en) | Machine learning-based systems and methods of using URLs and HTML encodings for detecting phishing websites | |
US11671448B2 (en) | Phishing detection using uniform resource locators | |
US11381598B2 (en) | Phishing detection using certificates associated with uniform resource locators | |
US11595435B2 (en) | Methods and systems for detecting phishing emails using feature extraction and machine learning | |
US12067493B2 (en) | Training and configuration of DL stack to detect attempted exfiltration of sensitive screenshot-borne data | |
US12021894B2 (en) | Phishing detection based on modeling of web page content | |
US11483340B2 (en) | System for malicious HTTP traffic detection with multi-field relation | |
US10867073B1 (en) | Detecting organization image-borne sensitive documents and protecting against loss of the sensitive documents | |
US11574151B2 (en) | Deep learning stack used in production to prevent exfiltration of image-borne identification documents | |
EP3920093A1 (en) | Detecting image-borne identification documents for protecting sensitive information | |
US11470114B2 (en) | Malware and phishing detection and mediation platform | |
Al-Fawa'reh et al. | Malware detection by eating a whole APK | |
Chiche et al. | Towards a scalable and adaptive learning approach for network intrusion detection | |
Yuan et al. | A novel approach for malicious URL detection based on the joint model | |
Halder et al. | Hands-On Machine Learning for Cybersecurity: Safeguard your system by making your machines intelligent using the Python ecosystem | |
US20230164180A1 (en) | Phishing detection methods and systems | |
US20230103395A1 (en) | Detecting organization sensitive data in images via customized deep lerning classifier | |
JP2024537659A (en) | Machine learning based system and method using URL feature hashing, HTML encoding, and content page embedded images to detect phishing websites | |
WO2021133592A1 (en) | Malware and phishing detection and mediation platform | |
Kissner | Hacking neural networks: A short introduction | |
US20240241956A1 (en) | Classifying cybersecurity threats using machine learning on non-euclidean data | |
US12137118B1 (en) | Prompt injection classifier using intermediate results | |
Rajeswary et al. | The LSTM-based automated phishing detection driven model for detecting multiple attacks on Tor hidden services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240516 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240516 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20240516 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240816 |