精准分析Web应用中的SQL注入漏洞
1. 数据收集与准备
SQL注入是Web应用中常见的漏洞,为了有效识别和预防此类漏洞,研究采用了开源内容管理系统(CMS)来创建训练和测试数据集。具体操作步骤如下:
1. 数据提取 :从Wordpress 3.9.1、Drupal 7、Joomla 3.6.0和Simple Machine Forum(SMF)2.0.5等CMS中提取SQL语句。
2. 标记与分类 :由经验丰富的高级软件开发人员手动标记易受攻击的SQL语句,并将其分为非法/逻辑错误查询、联合查询和附带查询三种类型。
3. 变量识别 :识别SQL语句中的独立变量和依赖变量。独立变量在服务器端脚本内部获取值,与SQL注入无直接关联;依赖变量从用户输入获取值,存在SQL注入风险。例如:
SELECT * FROM db_user WHERE username = '$input_username' AND password = '$input_password';
若用户输入恶意内容,如 $input_username = “krit”,$input_password = ” ‘; drop table users – “,则执行的SQL语句可能导致数据库受损。
4. 属性收集 :根据服务器端脚本中SQL语句的特定模式和特征,收集用于分类分析的属性。这些属性包括单行注释、分号、三个单引号等,具体信息如下表所示:
超级会员免费看
订阅专栏 解锁全文
6028

被折叠的 条评论
为什么被折叠?



