CN116743483B - 子域名生成方法、子域名命名规律学习方法、装置 - Google Patents
子域名生成方法、子域名命名规律学习方法、装置 Download PDFInfo
- Publication number
- CN116743483B CN116743483B CN202310870883.0A CN202310870883A CN116743483B CN 116743483 B CN116743483 B CN 116743483B CN 202310870883 A CN202310870883 A CN 202310870883A CN 116743483 B CN116743483 B CN 116743483B
- Authority
- CN
- China
- Prior art keywords
- sub
- domain name
- character
- word
- sample set
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000013507 mapping Methods 0.000 claims description 71
- 239000011159 matrix material Substances 0.000 claims description 71
- 239000012634 fragment Substances 0.000 claims description 70
- 230000007704 transition Effects 0.000 claims description 36
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000009826 distribution Methods 0.000 description 8
- 238000005422 blasting Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 230000035515 penetration Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005336 cracking Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 108020001568 subdomains Proteins 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/3015—Name registration, generation or assignment
- H04L61/3025—Domain name generation or assignment
-
- 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/40—Network security protocols
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)
Abstract
本申请提供一种子域名生成方法、子域名命名规律学习方法、装置,子域名生成方法包括:每次从预设范围内获取任一字符作为第一字符;根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集;所有根据所述第一字符生成的子域名预测子集中的预测子域名均包括所述第一字符;根据不同第一字符生成的多个子域名预测子集组成最终子域名预测集。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种子域名生成方法、子域名命名规律学习方法、装置、电子设备及可读存储介质。
背景技术
目前直接暴露在网络空间的联网设备数量大幅度增加,导致不少网络攻击者利用多种手段攻击网站进行非法获利。因此,对网站做渗透测试成为了目前越来越多企业的选择。
目前,在对一个网站做渗透测试时,通常需要收集该域名下的全部子域名,子域名就是下一级域名。目前一般采用暴力破解工具穷尽枚举所有可能子域名的方法获取网站子域名。
然而,在实际渗透测试时,网站的子域名有无数种可能,暴力破解全部可能子域名的方法并不现实,且效率低下,还有可能存在子域名收集不全的问题。
发明内容
为了解决子域名爆破的命中效率低下,且收集不全的问题,本申请提供一种子域名生成方法、子域名命名规律学习方法、装置、电子设备及可读存储介质。
第一方面,本申请提供一种子域名生成方法,包括:根据同级子域名样本集获取多种命名规律;从预设范围内获取任一字符作为第一字符,根据所述第一字符及多种所述命名规律分别生成与每种命名规律对应的子域名预测子集,多个所述子域名预测子集中的预测子域名均包括所述第一字符;获取根据不同第一字符对应生成的多个子域名预测子集并组成最终子域名预测集。
由于不同命名规律能生成不同预测空间的子域名预测集,且根据命名规律生成子域名预测集的生成过程相比现有技术的暴力破解更加具有方向性,因此,通过采用不同命名规律生成预测子域名的方法,能够提高预测子域名爆破的命中效率及提高预测子域名的覆盖度。
可选地,所述命名规律包括根据隐马尔科夫模型生成所述同级子域名样本集的状态转移矩阵及发射矩阵;所述根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:S1201.设定预测子域名的长度为L个字符,L为大于1的正整数;S1202.根据所述第M字符在所述发射矩阵中各隐状态下的概率值大小随机确定所述第M字符所属的第M隐状态,且M=1;S1203.根据所述第M隐状态及所述状态转移矩阵中状态转移概率大小随机确定第M+1隐状态;S1204.根据所述发射矩阵中所述第M+1隐状态下字符出现概率大小随机确定所述第M+1隐状态对应的第M+1字符,进而令M=M+1;S1205.循环S1203~S1204直至M>L,将获取的L个字符依次排列以得到所述预测子域名;通过在S1202~S1204中随机确定不同的第M隐状态、第M+1隐状态和第M+1字符,从而根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
由于隐马尔科夫模型的状态转移矩阵与发射矩阵反映隐状态间转移概率及在某一隐状态下可观测状态的出现概率,因此,根据隐马尔科夫模型得到的子域名的命名规律生成子域名,能够优先将概率更大的可观测状态序列生成预测子域名,相比现有技术的暴力破解,生成过程更加具有方向性,能够提高预测子域名爆破的命中效率。
可选地,所述命名规律包括第一映射关系集合;所述第一映射关系为二元字符片段与所述二元字符片段中后一字符在前一字符出现情况下的出现概率的对应关系;所述二元字符片段是采用滑动窗口的方式对所述同级子域名样本集中的每个子域名样本中每两个相邻字符分割得到的;所述根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:S1211.设定预测子域名的长度为L个字符,L为大于1的正整数;设定M=1;S1212.根据所述第M字符及起始字符为所述第M字符的二元字符片段对应的第一映射关系中第M+1字符在第M字符出现情况下的出现概率大小随机生成第M+1字符,进而令M=M+1;S1213.循环S1212,直至M>L,将获取的L个字符依次排列以得到所述预测子域名;通过在S1211~S1213随机确定不同的第M字符及第M+1字符,根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
由于第一映射关系实质反映后续字符在前一字符出现情况下的条件概率,因此,在给定第一字符的情况下,根据第一映射关系生成后续字符序列,能够将条件概率更大的字符优先生成,其生成过程更加具有方向性,因此,采用根据二元字符片段中后一字符的条件概率得到子域名的命名规律生成预测子域名,能够提高预测子域名爆破的命中效率。
可选地,所述命名规律包括第二映射关系集合;所述第二映射关系为二元单词片段与所述二元单词片段中后一单词在前一单词出现情况下的出现概率的对应关系;所述二元单词片段是采用滑动窗口的方式对所述同级子域名样本集中的每个子域名样本中每两个相邻单词分割得到的;所述根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:S1221.设定预测子域名的长度为L个单词,L为大于1的正整数;设定M=1;S1222.根据所述第一字符生成一个以所述第一字符作为起始字符的单词,所述单词为具有具体含义的字符串;将所述单词作为第一单词;S1223.根据所述第M单词及所述起始单词为所述第M单词的二元单词片段对应的第二映射关系中后一单词在前一单词出现情况下的出现概率大小随机生成第M+1单词,进而令M=M+1;S1224.循环S1223直至M>L,将获取的L个单词依次排列以得到所述预测子域名。通过在S1221~S1224中随机生成第M个单词,根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
由于第二映射关系实质反映后续单词在前一单词出现情况下的条件概率,因此,在给定第一字符的情况下,先根据统计概率生成起始单词,在根据该起始单词及第二映射关系生成后续单词序列,能够将条件概率更大的单词优先生成,其生成过程更加具有方向性,因此,采用根据二元单词片段中后一单词的条件概率生成子域名的命名规律生成预测子域名,能够提高预测子域名爆破的命中效率。
第二方面,本申请提供一种子域名命名规律的学习方法,包括:获取域名的某一同级子域名样本集;学习所述同级子域名样本集的不同命名规律。
通过学习同级子域名样本集的不同命名规律,能够更好的理解子域名的不同命名规则,为预测子域名提供方向性。
可选地,所述学习所述同级子域名样本集的命名规律,包括:针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段;针对每个二元字符片段,统计所述二元字符片段中在前一字符出现情况下后一字符的出现概率,构建所述二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为所述同级子域名样本集的一种命名规律。
由于字符的条件概率能够反映同级子域名样本集中字符的分布规律,因此,通过将子域名分割并统计二元字符片段概率的方法,能够比较方便准确的学习到一种子域名的命名规律。
可选地,所述学习所述同级子域名样本集的命名规律,包括:针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻单词进行分割,得到至少一个二元单词片段;所述单词为表征具体含义的字符串;针对每个二元单词片段,统计该二元单词片段中在前一单词出现情况下后一单词的出现概率,构建该二元单词片段与所述出现概率的第二映射关系,将所有第二映射关系的集合作为所述同级子域名样本集的一种命名规律。
由于单词的条件概率能够反映同级子域名样本集中单词的分布规律,通过将子域名进行单词分割并统计单词出现概率的方法,能够比较方便准确的学习到另一种子域名的命名规律。
可选地,所述学习所述同级子域名样本集的命名规律同级,包括:根据隐马尔科夫模型学习所述同级子域名样本集的初始状态矩阵、状态转移矩阵及发射矩阵,将状态转移矩阵及发射矩阵作为所述同级子域名样本集的一种命名规律。
由于隐马尔科夫模型的状态转移概率及发射概率能够反映隐状态间转移规律及隐状态下可观测状态的分布规律,因此,通过根据隐马尔科夫模型对子域名样本集进行学习,能够比较准确的学习到又一种子域名的命名规律。
第三方面,本申请提供一种子域名生成装置,包括:获取模块,用于根据同级子域名样本集获取多种命名规律,从预设范围内获取任一字符作为第一字符;子域名生成模块,用于根据所述第一字符及多种所述命名规律分别生成与每种命名规律对应的子域名预测子集,多个所述子域名预测子集中的预测子域名均包括所述第一字符;获取根据不同第一字符对应生成的多个子域名预测子集并组成最终子域名预测集。
第四方面,本申请提供一种子域名命名规律学习装置,包括:样本获取模块,用于获取域名的某一同级子域名样本集;规律学习模块,用于学习所述同级子域名样本集的命名规律。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例一提供的一种子域名生成方法的流程示意图;
图2为本申请实施例一提供的又一种子域名生成方法的流程示意图;
图3为本申请实施例一提供的再一种子域名生成方法的流程示意图;
图4为本申请实施例一提供的另一种子域名生成方法的流程示意图;
图5为本申请实施例二提供的一种子域名命名规律学习方法的流程示意图;
图6为本申请实施例二提供的又一种子域名命名规律学习方法的流程示意图;
图7为本申请实施例二提供的再一种子域名命名规律学习方法的流程示意图;
图8为本申请实施例三提供的一种子域名生成装置的结构示意图;
图9为本申请实施例四提供的一种子域名命名规律学习装置的结构示意图;
图10为本申请实施例五提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
为了更好的理解本申请提供的技术方案,下面先对相关技术做详细讲解。
相关技术中,获取网站子域名的方法,一般采用子域名爆破工具进行子域名挖掘,采用字典枚举的方式穷举子域名进行访问测试,若能够访问,则说明该子域名有效。但由于在实际应用中,采用工具爆破的方式获取子域名效率较为低下且无法全部枚举,因此,本申请提供一种子域名生成方法,通过学习现有网站及目标网站的子域名的多种命名规律,根据多种命名规律快速生成预测子域名集,能够有效提高子域名生成效率,并且能够尽可能地生成更多满足命名规律的子域名。
本申请提供的子域名生成方法应用于但并不仅限于渗透测试中。下面以具体实施例的方式对本申请提供的子域名生成方法及子域名命名规律的学习方法进行详细讲解。
实施例一
为了能够提高子域名收集效率以及更全面的收集子域名,本申请实施例提供一种子域名生成方法,如图1所示,该方法包括如下步骤:
S11:根据同级子域名样本集获取多种命名规律,从预设范围内获取任一字符作为第一字符。
其中,命名规律的获取方式不做限定。可以是自行训练学习得到的命名规律,也可以是从别处获取的命名规律。预设范围不做具体限制,只要满足域名命名要求的字符都属于预设范围内的字符。示例性地,预设范围可以是a-z、0-9。
其中,第一字符为预测子域名的起始字符。
具体地,在生成子域名集合时,可以多次从预设范围内获取不同字符作为第一字符,每次获取的第一字符不同。该第一字符可以指定,也可以随机选取,还可以根据预先收集的子域名样本集中统计的不同起始字符的子域名的出现概率作为参考来选取。其中,子域名样本集为目标域名的部分子域名集合。目标域名为需要收集其下子域名的域名。
在一种可行的实施方式中,对子域名样本集中的子域名按照起始字符的出现概率进行统计,将该出现概率映射到不同的取值范围内。生成一个随机数,将随机数落入的取值范围对应的子域名起始字符作为第一字符。
示例性地,子域名样本集中包括如下子域名:baidu、map、mirror。b作为子域名起始字符的出现概率为0.2,m作为子域名起始字符的出现概率为0.35。将0.2映射到1-20的取值范围内,将0.35映射到21-55的取值范围内。生成一个随机数,假设该随机数的值为26,则该随机数落入0.35映射的取值范围,则选择m作为第一字符。
S12:根据所述第一字符及多种所述命名规律分别生成与每种命名规律对应的子域名预测子集,多个所述子域名预测子集中的预测子域名均包括所述第一字符;获取根据不同第一字符对应生成的多个子域名预测子集并组成最终子域名预测集。
其中,命名规律不做具体限定。示例性地,可以为字符或单词的出现概率。每个第一字符按照不同的命名规律可以分别生成一个子域名预测子集,每个子域名预测子集中的所有预测子域名均以该第一字符为起始字符。不同的第一字符分别按照不同的命名规律可以生成多个不同的子域名预测子集。为了提高预测子域名的覆盖度,可以随机从多个根据不同命名规律生成的子域名预测子集中各抽取若干预测子域名,将抽取的所有子域名组成最终子域名预测集。
在一种可行的实施方式中,命名规律包括根据隐马尔科夫模型生成同级子域名样本集的状态转移矩阵及发射矩阵。如图2所示,步骤S12、根据第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:
S1201:设定预测子域名的长度为L个字符,L为大于1的正整数。
S1202:根据所述第M字符在所述发射矩阵中各隐状态下的概率值大小随机确定所述第M字符所属的第M隐状态,且M=1。
其中,隐马尔科夫模型包括可观测状态序列及隐状态序列,可观测状态序列是一系列可观测状态的时间序列。隐状态序列是一系列隐状态的时间序列。可观测状态为外在可观测的状态,隐状态为外在不可观测状态。每个可观测状态对应一个隐状态。可观测状态与隐状态相关,是隐状态的外在表现形式,隐状态是可观测状态的内在原因。
示例性地,字符a-z可以代表字母。字符a-z为具象的字符,而字母为不可见的抽象概念,那么字符a-z就是隐状态“字符为字母”的外在可观测状态。又如,0-9可以代表数字,字符0-9为具象的字符,而数字为抽象的概念,那么字符0-9就为隐状态“字符为数字”的外在可观测状态。
其中,隐马尔科夫模型需要满足三个假设。其一为任意时刻的隐状态仅依赖前一时刻的隐状态。其二为任意时刻的可观测状态仅依赖于该时刻的隐状态。其三为初始状态矩阵、状态转移矩阵及发射矩阵不随时间变化而改变。
具体地,可以获取到根据隐马尔科夫模型学习到的子域名样本集的命名规律,该命名规律包括子域名样本集的状态转移矩阵及发射矩阵。状态转移矩阵是指子域名样本集的所有隐状态序列中状态与状态间的转移概率分布。发射矩阵是指在每一个隐状态出现的情况下可观测状态的概率分布。
可选地,将发射矩阵中,各隐状态下第一字符的概率值映射到不同的取值范围,生成一个随机数,将随机数落入的取值范围对应的隐状态作为第一字符对应的隐状态。
示例性地,假设子域名样本集的隐状态有“字符为字母”和“字符为数字”两种。“字符为字母”这一隐状态下,第一字符的概率值为0.05,“字符为数字”这一隐状态下,第一字符的概率值为0.001。将0.05映射到1-50,将0.001映射到51-52,生成一个0-52范围内的随机数,假设随机数为32,则将隐状态“字符为字母”作为第一字符对应的隐状态。
S1203:根据所述第M隐状态及所述状态转移矩阵中状态转移概率大小随机确定第M+1隐状态。
可选地,将状态转移矩阵中步骤S1202确定出的隐状态到各隐状态的转移概率值映射到不同的取值范围,生成一个随机数,将随机数落入的取值范围对应的转移后的隐状态作为下一隐状态。
示例性地,隐状态“字符为字母”用N代替,隐状态“字符为数字”用C代替,假设第一字符对应隐状态为N,状态转移矩阵中,N->N的概率值为0.68,N->C的概率值为0.32,那么,将0.68及0.32分别映射到1-68及69-100的取值范围,生成一个范围为0-100的随机数,假设随机数为50,落入1-68的取值范围,则将下一隐状态确认为1-68取值范围对应的转移后的隐状态N,及“字符为字母”。
可选地,也可以将转移概率作为权重值加入到确定下一隐状态的计算过程中。权重值越大,就越可能被确定为下一隐状态。
S1204:根据所述发射矩阵中所述第M+1隐状态下字符出现概率大小随机确定所述第M+1隐状态对应的第M+1字符,进而令M=M+1。
可选地,可以将下一隐状态下,各字符出现概率值映射到不同的取值范围,然后生成随机数,将随机数的数值落入的取值范围对应的字符作为下一隐状态对应的字符。
可选地,也可以将下一隐状态下各字符的出现概率作为权重加入到确定对应字符的过程中,权重值越大,下一隐状态对应字符为权重值对应字符的可能性越大。
S1205:循环S1203~S1204直至M>L,将获取的L个字符依次排列以得到所述预测子域名。
具体地,将下一隐状态下可能的字符作为续接字符,依次类推,确定出该续接字符的下一可能的字符,依次生成下一续接字符,直到生成的预测子域名满足长度L,将获取到的L个字符依次排列以得到所述预测子域名。
S1206.通过在S1202~S1204中随机确定不同的第M隐状态、第M+1隐状态和第M+1字符,从而根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
由于每次都是根据随机数的取值范围随机确定当前字符的下一字符,因此,同一个第一字符,可以生成多个以该第一字符为起始字符的子域名,所有以该第一字符为起始字符并按照隐马尔科夫模型的命名规律生成的子域名组成一个子域名预测子集。
在一种可行的实施方式中,命名规律包括第一映射关系集合。第一映射关系为二元字符片段与二元字符片段中后一字符在前一字符出现情况下的出现概率的对应关系。二元字符片段是采用滑动窗口的方式对同级子域名样本集中的每个子域名样本中每两个相邻字符分割得到的。如图3所示,步骤S12、根据第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:
S1211:设定预测子域名的长度为L个字符,L为大于1的正整数;设定M=1。
其中,L为预测子域名的预设长度,M为生成的字符在预测子域名中的位置。
S1212.根据所述第M字符及起始字符为所述第M字符的二元字符片段对应的第一映射关系中第M+1字符在第M字符出现情况下的出现概率大小随机生成第M+1字符,进而令M=M+1。
具体地,将起始字符为第一字符的各二元字符片段对应的概率值映射到不同的取值区间,生成一个随机数,将随机数的数值落入的取值区间对应的二元字符片段的后一字符作为第一字符的下一字符。
示例性地,假设二元字符片段有ba、ai、id、id、du、si、in、na、ma、ap。将其拆成一个字符矩阵,纵列代表二元字符片段中的前一字符,横行代表二元字符片段中的后一字符,概率值代表在前一字符出现的条件下,后一字符的概率分布。下表也可以理解为二元字符片段的第一映射关系表。
假设第一字符为i,那么将矩阵中第四行以i为起始字符的各二元字符片段的概率值0.67,0.33映射到1-67,68-100两个不同的取值区间中,生成一个1-100范围内的随机数,假设随机数为32,对应取值区间为1-67,那么就将该取值区间对应的第二字符片段中的后一字符d作为第一字符的下一字符。
S1213.循环S1212,直至M>L,将获取的L个字符依次排列以得到所述预测子域名。
具体地,将第M+1个字符作为当前字符,采用S1212的方法得到当前字符的下一续接字符,重复上述步骤,直到生成的预测子域名满足长度L。
S1214.通过在S1211~S1213随机确定不同的第M字符及第M+1字符,根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
由于每次都是根据随机数的取值范围随机确定当前字符的下一字符,因此,同一个第一字符,可以生成多个以该第一字符为起始字符的预测子域名,所有以该第一字符为起始字符并按照第一映射关系集合的命名规律生成的子域名组成一个子域名预测子集。
在一种可行的实施方式中,命名规律包括第二映射关系集合。第二映射关系为二元单词片段与二元单词片段中后一单词在前一单词出现情况下的出现概率的对应关系。二元单词片段是采用滑动窗口的方式对同级子域名样本集中的每个子域名样本中每两个相邻单词分割得到的。如图4所示,步骤S12、根据第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:
S1221:设定预测子域名的长度为L个单词,L为大于1的正整数;设定M=1。
其中,L为预测子域名的预设单词长度,M为生成的单词在预测子域名中的位置。
S1222.根据所述第一字符生成一个以所述第一字符作为起始字符的单词,所述单词为具有具体含义的字符串;将所述单词作为第一单词。
其中,第一单词为预测子域名中的首个单词。
具体地,可以根据同级子域名样本集的子域名中的起始单词统计结果随机选取一个起始字符为第一字符且出现概率大的单词作为预测子域名的首个单词。可以采用类似前述的将概率值映射到一个取值区间,根据随机数落入的取值区间的方法来随机选取一个单词作为首个单词。
可选地,也可以随机选取一个同级子域名样本集的子域名中出现过的起始字符为第一字符的单词作为预测子域名的首个单词。
S1223.根据所述第M单词及所述起始单词为所述第M单词的二元单词片段对应的第二映射关系中后一单词在前一单词出现情况下的出现概率大小随机生成第M+1单词,进而令M=M+1。
具体地,根据第二映射关系生成第一单词的下一单词的方法与根据第一映射关系生成第一字符的下一字符的方法类似,在此不再一一赘述。
S1224.循环S1223直至M>L,将获取的L个单词依次排列以得到所述预测子域名。
具体地,具体地,将第M+1个单词作为当前单词,采用S1223的方法得到当前单词的下一续接单词,重复上述步骤,直到生成的预测子域名满足单词长度L。
S1225.通过在S1221~S1224中随机生成第M个单词,根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
由于每次都是根据随机数的取值范围随机确定当前单词的下一单词,因此,同一个第一字符,可以生成多个以该第一字符为起始字符的预测子域名,所有以该第一字符为起始字符并按照第二映射关系集合的命名规律生成的子域名组成一个子域名预测子集。
根据不同第一字符及不同的命名规律分别生成不同的子域名预测子集后,为了提高预测子域名的覆盖度,可以随机从各子域名预测子集中抽取若干数量的预测子域名,组成最终子域名预测集,其中,各子域名预测子集抽取数量可以不同。也可以分别从不同子域名预测子集中抽取预设数量的预测子域名,组成最终子域名预测集。或者从各子域名预测子集中抽取预设数量的第一字符及后续字符出现概率较高的预测子域名,组成最终子域名预测集。
实施例二
为了更高效更全面的生成子域名,需要了解子域名的命名规律,本申请实施例提供一种子域名命名规律的学习方法,如图5所示,该方法包括如下步骤:
S21:获取域名的某一同级子域名样本集。
其中,域名用于标识网络中的某台计算机或某个计算机组的地理位置。域名与网络IP地址一一对应,域名具有分层结构,一般包括如下几个层次:主机名、机构名、网络名及最高层域名。不同层级的域名以域名层级分隔符进行分隔,因此,可以根据域名层级分隔符来获取某个域名下的同级子域名。获取子域名的技术手段不做限定。示例性地,一般为利用子域名挖掘工具来收集子域名。收集到的目标域名下的同一层级的子域名的集合为同级子域名样本集。也可以采用其他方法,例如根据DNS记录或Google提出的证书透明度查询公开的子域。同级子域名样本集可以是符合域名命名规范的通用子域名样本集,例如:域名baidu、google之下的同级子域名集,也可以是自定义子域名样本集,例如某个人网站域名下的同级子域名集。
S22:学习同级子域名样本集的不同命名规律。
如图6所示,在一种可行的实施方式中,步骤S22、学习同级子域名样本集的命名规律,包括:
S2201:针对同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段。
示例性地,同级子域名样本集中包括map、photo、image、resource这几个子域名。将上述子域名分割为如下二元字符片段:ma、ap、ph、ho、ot、to、im、ma、ag、ge、re、es、so、ou、ur、rc、ce。
S2202:针对每个二元字符片段,统计二元字符片段中在前一字符出现情况下后一字符的出现概率,构建二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为同级子域名样本集的一种命名规律。
具体地,首先将二元字符片段按照首个字符进行分组,首个字符相同的分为一组,统计每个分组内的二元字符片段数目。然后再统计每个分组内,二元字符片段中后一字符出现的次数。用同一分组内二元字符片段中后一字符出现的次数除以每个分组内二元字符片段的数目,就是二元字符片段中后一字符在首个字符出现情况下的出现概率。将这一出现概率与其对应的二元字符片段组成一个映射关系,即为第一映射关系,所有第一映射关系的集合构成同级子域名样本集的一种命名规律。
接上述示例,上述二元字符片段可分为如下几组:ma、ma、ap、ag、re、rc、ot、ou、ph、ho、to、im、ge、es、so、ur、ce。
其中,以a作为起始字符的二元字符片段有2个,以p作为a的后一字符的二元字符片段的有1个,以g作为a的后一字符的二元字符片段的有1个,因此,p在a出现情况下的出现概率为P(p|a)=1/2*100%=50%,同理P(g|a)=50%。
将ap与50%组成一个第一映射关系(ap,50%),不同二元字符片段与其中后一字符在前一字符出现下的条件概率可以组成不同的第一映射关系,所有第一映射关系的集合构成同级子域名样本集的一种命名规律。
如图7所示,在一种可行的实施方式中,步骤S22、学习同级子域名样本集的命名规律,包括:
S2211:针对同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻单词进行分割,得到若干个二元单词片段;其中,单词为表征具体含义的字符串。
具体地,对单词进行分割的方法不做具体限定。示例性地,可以采用单词库对单词进行识别。将统计子域名样本集的子域名样本中识别出的每两个相邻单词进行分割,得到多个二元单词片段。
示例性地,子域名样本googleSuperMap,可以被分割为如下二元单词片段:googleSuper、SuperMap。
S2212:针对每个二元单词片段,统计二元单词片段中在前一单词出现情况下后一单词的出现概率,构建二元单词片段与对应的出现概率之间的第二映射关系,将若干个第二映射关系的集合作为同级子域名样本集的一种命名规律。
具体地,统计二元单词片段中后一单词在前一单词出现情况下的出现概率的方法与步骤S2202类似,在此不再一一赘述。
如图8所示,在一种可行的实施方式中,步骤S22、学习同级子域名样本集不同的命名规律,包括:
根据隐马尔科夫模型学习同级子域名样本集的初始状态矩阵、状态转移矩阵及发射矩阵,将状态转移矩阵及发射矩阵作为同级子域名样本集的一种命名规律。
其中,初始状态矩阵是指子域名样本集的所有隐状态序列中起始隐状态的概率分布。
具体地,现有技术中一般通过EM最大似然估计算法或鲍姆韦尔奇算法对隐马尔科夫模型进行求解。由于隐马尔科夫的公式推导及求解均为现有技术,在此不做具体论述。
为了更好的理解根据隐马尔科夫模型学习同级子域名样本集的初始状态矩阵、状态转移矩阵及发射矩阵,下面以具体的例子来描述这一过程。
假设同级子域名样本集中包括子域名photos12。该同级子域名样本集包括两种隐状态:字符为字母(用N表示)、字符为数字(用E表示)。令初始状态矩阵为:
N | 0.7 |
E | 0.3 |
令状态转移矩阵(列代表前一状态,行代表后一状态)为:
令发射矩阵(列为隐状态,行为隐状态下各可观测状态的概率分布)为:
p | h | o | t | s | 1 | 2 | |
N | 0.156 | 0.152 | 0.25 | 0.138 | 0.13 | 0.085 | 0.089 |
E | 0.157 | 0.111 | 0.263 | 0.141 | 0.119 | 0.103 | 0.106 |
下面以子域名“photos12”为例,来说明如何根据同级子域名样本集中的子域名学习上述三个矩阵。
首先将photos 12按照每两个相邻字符进行拆分,得到如下可观测状态序列:ph、ho、ot、to、os、s1、12。
分别计算可观测状态序列在每种隐状态下的条件概率及最大概率值:
/>
更新状态转移矩阵:
状态转移矩阵归一化:
更新发射矩阵:
假设某一字符(可观测状态)对应一个隐状态,统计包含该字符的可观测状态序列在对应不同隐状态下的条件概率:
隐状态N下出现p的概率更新为:0.0094/0.0094=1。隐状态E下出现p的概率更新为0.0042/0.0094=0.447。
隐状态N下出现h的概率更新为0.0294/0.05=0.588。隐状态E下出现h的概率更新为0.037/0.05=0.74。
隐状态N下出现o的概率更新为0.0733/0.0733=1。隐状态E下出现h的概率更新为0.0323/0.0733=0.441。
隐状态N下出现t的概率更新为0.0362/0.0362=1。隐状态E下出现t的概率更新为0.0178/0.0362=0.492。
隐状态N下出现s的概率更新为0.0229/0.0229=1。隐状态E下出现s的概率更新为0.0104/0.0229=0.498。
隐状态N下出现1的概率更新为0.0098/0.0098=1。隐状态E下出现1的概率更新为0.0055/0.0098=0.561。
隐状态N下出现2的概率更新为0.0040/0.0040=1。隐状态E下出现1的概率更新为0.0026/0.0040=0.65。
更新后的发射矩阵为:
p | h | o | t | s | 1 | 2 | |
N | 1 | 0.588 | 1 | 1 | 1 | 1 | 1 |
E | 0.447 | 0.74 | 0.441 | 0.492 | 0.498 | 0.561 | 0.65 |
更新后的发射矩阵归一化:
p | h | o | t | s | 1 | 2 | |
N | 0.152 | 0.088 | 0.152 | 0.152 | 0.152 | 0.152 | 0.152 |
E | 0.117 | 0.193 | 0.115 | 0.128 | 0.130 | 0.147 | 0.170 |
更新初始状态矩阵:
计算起始字符对应某一隐状态下的可观测状态序列概率值:
更新初始状态矩阵:
N | 0.0925/0.0925=1 |
E | 0.0331/0.0925=0.358 |
归一化更新后的初始状态矩阵:
N | 1/(1+0.358)=0.736 |
E | 0.358/(1+0.358)=0.264 |
上述方法中,只以一个子域名为例,实际应用中,同级子域名样本集中包含多个子域名,符合域名命名要求的每个字符都可以作为一个可观测状态,示例性地,可观测状态可以包括字母a-z及数字0-9。隐状态的范围不做具体限定,可以按照实际情况设定任意数量的隐状态。
按照上述方法将每个子域名拆分成一个可观测状态序列,然后统计全部可观测状态序列在每个隐状态下的出现概率及最大概率,并按照上述方法更新三个矩阵,直至三个矩阵收敛,得到该同级子域名样本集基于隐马尔科夫模型的命名规律。
上述学习到的不同子域名的命名规律,用于子域名预测。具体地,第一种命名规律可以在实施例一的步骤S1211-1212中预测子域名。第二种命名规律,可以在实施例一的步骤S1221-1223中预测子域名。第三种命名规律,可以在实施例一的步骤S1201-S1204中预测子域名。
实施例三
本申请实施例提供一种子域名生成装置300,如图8所示,子域名生成装置300包括:获取模块301、子域名生成模块302。
获取模块301,用于根据同级子域名样本集获取多种命名规律,从预设范围内获取任一字符作为第一字符。
子域名生成模块302,用于根据第一字符及多种所述命名规律分别生成与每种命名规律对应的子域名预测子集,多个子域名预测子集中的预测子域名均包括第一字符;获取根据不同第一字符对应生成的多个子域名预测子集并组成最终子域名预测集。
可选地,命名规律包括根据隐马尔科夫模型生成同级子域名样本集的状态转移矩阵及发射矩阵。子域名生成模块302,具体用于S1201.设定预测子域名的长度为L个字符,L为大于1的正整数;S1202.根据所述第M字符在所述发射矩阵中各隐状态下的概率值大小随机确定所述第M字符所属的第M隐状态,且M=1;S1203.根据所述第M隐状态及所述状态转移矩阵中状态转移概率大小随机确定第M+1隐状态;S1204.根据所述发射矩阵中所述第M+1隐状态下字符出现概率大小随机确定所述第M+1隐状态对应的第M+1字符;令M=M+1,循环S1203~S1204直至M>L,将获取的L个字符依次排列以得到所述预测子域名;S1205.按照S1201~S1204的方法根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
可选地,命名规律包括第一映射关系集合。第一映射关系为二元字符片段与二元字符片段中后一字符在前一字符出现情况下的出现概率的对应关系。二元字符片段是采用滑动窗口的方式对同级子域名样本集中的每个子域名样本中每两个相邻字符分割得到的。子域名生成模块302,具体用于S1211.设定预测子域名的长度为L个字符,L为大于1的正整数;设定M=1;S1212.根据所述第M字符及起始字符为所述第M字符的二元字符片段对应的第一映射关系中第M+1字符在第M字符出现情况下的出现概率大小随机生成第M+1字符;S1213.令M=M+1,循环S1212~1213,直至M>L,将获取的L个字符依次排列以得到所述预测子域名;S1214.按照S1211~S1213的方法根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
可选地,命名规律包括第二映射关系集合。第二映射关系为二元单词片段与二元单词片段中后一单词在前一单词出现情况下的出现概率的对应关系。子域名生成模块302,具体用于S1221.设定预测子域名的长度为L个字符,L为大于1的正整数;设定M=2;S1222.根据第一字符生成一个以第一字符作为起始字符的单词,单词为具有具体含义的字符串;将单词作为第一单词;S1223.根据第一单词及起始单词为第一单词的二元单词片段对应的第二映射关系中后一单词在前一单词出现情况下的出现概率大小随机生成第M单词;S1224.令M=M+1,循环S1203~S1204直至所有单词的总长度大于L,将获取的前L个字符依次排列以得到预测子域名。S1225.按照S1221~S1224的方法根据第一字符生成多个预测子域名,多个预测子域名构成一个子域名预测子集。
实施例四
本申请实施例提供一种子域名命名规律学习装置400,如图9所示,该装置包括:样本获取模块401、规律学习模块402。
样本获取模块401,用于获取域名的某一同级子域名样本集。
规律学习模块402,用于学习同级子域名样本集的命名规律。
可选地,规律学习模块402,具体用于针对同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段;针对每个二元字符片段,统计二元字符片段中在前一字符出现情况下后一字符的出现概率,构建二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为同级子域名样本集的一种命名规律。
可选地,规律学习模块402,具体用于针对同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻单词进行分割,得到若干个二元单词片段;单词为表征具体含义的字符串;针对每个二元单词片段,统计二元单词片段中在前一单词出现情况下后一单词的出现概率,构建二元单词片段与对应的出现概率之间的第二映射关系,将若干个第二映射关系的集合作为同级子域名样本集的一种命名规律。
可选地,规律学习模块402,具体用于根据隐马尔科夫模型学习同级子域名样本集的初始状态矩阵、状态转移矩阵及发射矩阵,将初始状态矩阵、状态转移矩阵及发射矩阵作为同级子域名样本集的一种命名规律。
实施例五
本申请实施例提供一种电子设备500,如图10所示,该设备包括:处理器501及存储器502。处理器501用于执行存储器502中存储的程序,以实现如实施例一或实施例二中所述的方法。
可以理解,图10所示的结构仅为示意,电子设备还可包括比图10中所示更多或者更少的组件,或者具有与图10所示不同的配置。
例如,处理器501和存储器502之间可以是通过通信总线的方式进行的连接。又例如,电子设备还可包括诸如显示器、鼠标、键盘等部件。
在本申请实施例中,处理器501可以为中央处理器、微处理器、单片机等,但不作为限制。存储器502可以为随机存取存储器,只读存储器,可编程只读存储器,可擦除只读存储器,电可擦除只读存储器等,但不作为限制。
在本申请实施例中,电子设备可以是,但不限于台式机、笔记本电脑、智能手机、智能穿戴设备、车载设备等实体设备,还可以是虚拟机等虚拟设备。另外,电子设备也不一定是单台设备,还可以是多台设备的组合,例如服务器集群,等等。
本实施例还提供了一种计算机可读存储介质,如软盘、光盘、硬盘、闪存、U盘、SD(Secure Digital Memory Card,安全数码卡)卡、MMC(Multimedia Card,多媒体卡)卡等,在该计算机可读存储介质中存储有实现上述各个步骤的一个或者多个程序,这一个或者多个程序可被一个或者多个处理器执行,以实现如实施例一或实施例二中所述的任一项的方法。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
在本文中,多个是指两个或两个以上。
以上仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种子域名生成方法,其特征在于,包括:
根据同级子域名样本集获取多种命名规律,从预设范围内获取任一字符作为第一字符;根据所述第一字符及多种所述命名规律分别生成与每种命名规律对应的子域名预测子集,多个所述子域名预测子集中的预测子域名均包括所述第一字符;获取根据不同第一字符对应生成的多个子域名预测子集并组成最终子域名预测集;
其中,所述方法还包括:
针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段;
针对每个二元字符片段,统计所述二元字符片段中在前一字符出现情况下后一字符的出现概率,构建所述二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为所述同级子域名样本集的一种命名规律。
2.如权利要求1所述的子域名生成方法,其特征在于,所述命名规律包括根据隐马尔科夫模型生成所述同级子域名样本集的状态转移矩阵及发射矩阵;所述根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:
S1201.设定预测子域名的长度为L个字符,L为大于1的正整数;
S1202.根据第M字符在所述发射矩阵中各隐状态下的概率值大小随机确定所述第M字符所属的第M隐状态,且M=1;
S1203.根据所述第M隐状态及所述状态转移矩阵中状态转移概率大小随机确定第M+1隐状态;
S1204.根据所述发射矩阵中所述第M+1隐状态下字符出现概率大小随机确定所述第M+1隐状态对应的第M+1字符,进而令M=M+1;
S1205.循环S1203~S1204直至M>L,将获取的L个字符依次排列以得到所述预测子域名;
通过在S1202~S1204中随机确定不同的第M隐状态、第M+1隐状态和第M+1字符,从而根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
3.如权利要求1所述的子域名生成方法,其特征在于,所述命名规律包括第一映射关系集合;所述第一映射关系为二元字符片段与所述二元字符片段中后一字符在前一字符出现情况下的出现概率的对应关系;所述二元字符片段是采用滑动窗口的方式对所述同级子域名样本集中的每个子域名样本中每两个相邻字符分割得到的;所述根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:
S1211.设定预测子域名的长度为L个字符,L为大于1的正整数;设定M=1;
S1212.根据第M字符及起始字符为所述第M字符的二元字符片段对应的第一映射关系中第M+1字符在所述第M字符出现情况下的出现概率大小随机生成第M+1字符,进而令M=M+1;
S1213.循环S1212,直至M>L,将获取的L个字符依次排列以得到所述预测子域名;
通过在S1211~S1213随机确定不同的第M字符及第M+1字符,根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
4.如权利要求1所述的子域名生成方法,其特征在于,所述命名规律包括第二映射关系集合;所述第二映射关系为二元单词片段与所述二元单词片段中后一单词在前一单词出现情况下的出现概率的对应关系;所述二元单词片段是采用滑动窗口的方式对所述同级子域名样本集中的每个子域名样本中每两个相邻单词分割得到的;所述根据所述第一字符及同级子域名样本集的多种命名规律分别生成与每种命名规律对应的子域名预测子集,包括:
S1221.设定预测子域名的长度为L个单词,L为大于1的正整数;设定M=1;
S1222.根据所述第一字符生成一个以所述第一字符作为起始字符的单词,所述单词为具有具体含义的字符串;将所述单词作为第一单词;
S1223.根据第M单词及所述起始单词为所述第M单词的二元单词片段对应的第二映射关系中后一单词在前一单词出现情况下的出现概率大小随机生成第M+1单词,进而令M=M+1;
S1224.循环S1223直至M>L,将获取的L个单词依次排列以得到所述预测子域名;
通过在S1221~S1224中随机生成第M个单词,根据所述第一字符生成多个预测子域名,所述多个预测子域名构成一个子域名预测子集。
5.一种子域名命名规律的学习方法,其特征在于,包括:
获取域名的某一同级子域名样本集;
学习所述同级子域名样本集的不同命名规律;
其中,所述学习所述同级子域名样本集的命名规律,包括:
针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段;
针对每个二元字符片段,统计所述二元字符片段中在前一字符出现情况下后一字符的出现概率,构建所述二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为所述同级子域名样本集的一种命名规律。
6.如权利要求5所述的子域名命名规律的学习方法,其特征在于,所述学习所述同级子域名样本集的命名规律,包括:
针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻单词进行分割,得到若干个二元单词片段;所述单词为表征具体含义的字符串;
针对每个二元单词片段,统计所述二元单词片段中在前一单词出现情况下后一单词的出现概率,构建所述二元单词片段与对应的出现概率之间的第二映射关系,将若干个第二映射关系的集合作为所述同级子域名样本集的一种命名规律。
7.如权利要求5所述的子域名命名规律的学习方法,其特征在于,所述学习所述同级子域名样本集的命名规律同级,包括:
根据隐马尔科夫模型学习所述同级子域名样本集的初始状态矩阵、状态转移矩阵及发射矩阵,将所述状态转移矩阵及发射矩阵作为所述同级子域名样本集的一种命名规律。
8.一种子域名生成装置,其特征在于,包括:
获取模块,用于根据同级子域名样本集获取多种命名规律,从预设范围内获取任一字符作为第一字符;
子域名生成模块,用于根据所述第一字符及多种所述命名规律分别生成与每种命名规律对应的子域名预测子集,多个所述子域名预测子集中的预测子域名均包括所述第一字符;获取根据不同第一字符对应生成的多个子域名预测子集并组成最终子域名预测集;
其中,所述装置还包括:
命名规律生成模块,用于针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段;针对每个二元字符片段,统计所述二元字符片段中在前一字符出现情况下后一字符的出现概率,构建所述二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为所述同级子域名样本集的一种命名规律。
9.一种子域名命名规律学习装置,其特征在于,包括:
样本获取模块,用于获取域名的某一同级子域名样本集;
规律学习模块,用于学习所述同级子域名样本集的命名规律;
其中,所述规律学习模块,具体用于针对所述同级子域名样本集中的每个子域名样本,采用滑动窗口的方式对该子域名样本中每两个相邻字符进行分割,得到若干个二元字符片段;针对每个二元字符片段,统计所述二元字符片段中在前一字符出现情况下后一字符的出现概率,构建所述二元字符片段与对应的出现概率之间的第一映射关系,将若干个第一映射关系的集合作为所述同级子域名样本集的一种命名规律。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310870883.0A CN116743483B (zh) | 2023-07-14 | 2023-07-14 | 子域名生成方法、子域名命名规律学习方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310870883.0A CN116743483B (zh) | 2023-07-14 | 2023-07-14 | 子域名生成方法、子域名命名规律学习方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116743483A CN116743483A (zh) | 2023-09-12 |
CN116743483B true CN116743483B (zh) | 2024-04-16 |
Family
ID=87913463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310870883.0A Active CN116743483B (zh) | 2023-07-14 | 2023-07-14 | 子域名生成方法、子域名命名规律学习方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116743483B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111665955A (zh) * | 2020-04-17 | 2020-09-15 | 北京百度网讯科技有限公司 | 候选字符串的处理方法、装置、电子设备及存储介质 |
CN111935097A (zh) * | 2020-07-16 | 2020-11-13 | 上海斗象信息科技有限公司 | 一种检测dga域名的方法 |
CN114710468A (zh) * | 2022-03-31 | 2022-07-05 | 绿盟科技集团股份有限公司 | 一种域名生成和识别方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11853851B2 (en) * | 2018-10-03 | 2023-12-26 | Camelot Uk Bidco Limited | Systems and methods for training and employing machine learning models for unique string generation and prediction |
-
2023
- 2023-07-14 CN CN202310870883.0A patent/CN116743483B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111665955A (zh) * | 2020-04-17 | 2020-09-15 | 北京百度网讯科技有限公司 | 候选字符串的处理方法、装置、电子设备及存储介质 |
CN111935097A (zh) * | 2020-07-16 | 2020-11-13 | 上海斗象信息科技有限公司 | 一种检测dga域名的方法 |
CN114710468A (zh) * | 2022-03-31 | 2022-07-05 | 绿盟科技集团股份有限公司 | 一种域名生成和识别方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116743483A (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220093210A1 (en) | System and method for characterizing biological sequence data through a probabilistic data structure | |
CN107786575B (zh) | 一种基于dns流量的自适应恶意域名检测方法 | |
CN112069485B (zh) | 基于用户行为的安全处理方法、装置及设备 | |
US20200351242A1 (en) | System and method for detecting generated domain | |
Sommer et al. | Towards probabilistic verification of machine unlearning | |
CN110099059B (zh) | 一种域名识别方法、装置及存储介质 | |
CN112866023B (zh) | 网络检测、模型训练方法、装置、设备及存储介质 | |
EP2443580A1 (en) | Systems and methods for efficeint detection of fingerprinted data and information | |
Tong et al. | A method for detecting DGA botnet based on semantic and cluster analysis | |
CN113806653B (zh) | 页面预加载方法、装置、计算机设备及存储介质 | |
CN112182567B (zh) | 一种多步攻击溯源方法、系统、终端及可读存储介质 | |
CN113315851A (zh) | 域名检测方法、装置及存储介质 | |
CN113746952B (zh) | Dga域名检测方法、装置、电子设备及计算机存储介质 | |
CN113360898B (zh) | 指标的权重确定方法、网络攻击评估方法及电子设备 | |
CN116743483B (zh) | 子域名生成方法、子域名命名规律学习方法、装置 | |
CN109992960B (zh) | 一种伪造参数检测方法、装置、电子设备及存储介质 | |
CN116975864A (zh) | 恶意代码检测方法、装置、电子设备及存储介质 | |
CN111353109A (zh) | 一种恶意域名的识别方法及系统 | |
CN116319065A (zh) | 一种应用于商业运维的威胁态势分析方法和系统 | |
CN114866246B (zh) | 基于大数据的计算机网络安全入侵检测方法 | |
CN115438340A (zh) | 一种基于词素特征的挖矿行为识别方法及系统 | |
CN111382417A (zh) | 使用一系列设备指纹识别来自用户设备的欺诈行为的系统和方法 | |
CN113610904B (zh) | 3d局部点云对抗样本生成方法、系统、计算机及介质 | |
Shrestha et al. | High-performance classification of phishing URLs using a multi-modal approach with MapReduce | |
CN114841256A (zh) | 一种基于多维特征融合的dga域名分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |