随着互联网应用的普及,钓鱼网站成为网络安全的主要威胁之一。攻击者通过伪造仿真页面骗取用户敏感信息(如账号密码、银行信息等),其危害性呈逐年上升趋势。据统计,2023年全球约有370万起钓鱼攻击事件,造成超过200亿美元损失。
传统检测方式依赖黑名单与规则匹配,存在更新滞后与泛化能力弱等问题。因此,亟需一种高效、自动化、智能化的钓鱼网站识别技术,提升安全防护能力。
本课题旨在构建一个基于深度学习的钓鱼网站检测系统,能够自动提取URL及网页行为特征,通过模型识别潜在钓鱼风险,从而实现快速、高准确率的检测。
采用Python编写的 DataProcessor
类对原始数据集进行预处理,关键操作包括:
URLLength
, SubdomainLevel
, DomainEntropy
等共33项)。TLD
特征进行 LabelEncoder 编码,并计算其风险分布权重。HasHTTPToken
, IframeUsage
, ExternalLinksRatio
等)。特征处理流程如下:
flowchart LR A[原始URL数据集] --> B{特征清洗} B --> C[特征编码] C --> D{特征选择} D --> E[标准化/归一化]
使用Keras构建1D卷积神经网络,整体架构如下:
Sequential([ Reshape((n_features, 1)), Conv1D(256, kernel_size=5, activation='relu'), BatchNormalization(), MaxPooling1D(pool_size=2), Conv1D(128, kernel_size=5, activation='relu'), GlobalMaxPooling1D(), Dense(128, activation='relu', kernel_regularizer=l2(0.01)), Dropout(0.5), Dense(1, activation='sigmoid') ])
模型参数优化:
训练过程中自动保存 .keras
格式模型文件,实现断点续训与部署复用。
构建了可视化分析模块 ResultVisualizer
,支持输出: