买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:浙江大学
摘要:本发明公开了一种针对Text‑to‑SQL模型的注入攻击方法和装置,通过构造注入点文本,插入攻击payload;并利用基于自回归的反向梯度技术,迭代调整输入中的攻击payload,使被攻击的文本到SQL代码模型生成带有攻击payload的SQL代码。
主权项:1.一种针对Text-to-SQL模型的注入攻击方法,其特征在于,包括以下步骤:1对于作用于数据库D的目标模型M,构造注入点文本T:“whichD’sCis”,其中C是数据库D中被攻击的列;2利用目标模型M的分词器Tokenizer对注入点文本T和攻击payload分别进行token化处理,得到注入点文本T的token化序列TT和攻击payload的token化序列PT,并记录token化序列PT的长度为LPT,则token化序列PT:其中,pti为token化序列PT中第i个token;3随机生成一个token:Tx,并将Tx与token化序列TT连接并输入到目标模型M中;随后目标模型M输出SQL代码,并从SQL代码中提取与注入点文本T有相同语义的注入点代码SQLIC;4利用分词器Tokenizer对注入点代码SQLIC进行token化处理,得到注入点代码SQLIC的token化序列SQLICT,并记录token化序列SQLICT的长度为LSQLICT;5利用目标模型M的嵌入层E分别对token化序列TT和token化序列PT进行嵌入操作,得到嵌入向量集合TE和嵌入向量集合PE:其中,pei为tokenpti对应的嵌入向量;6针对嵌入向量集合PE中第1个嵌入向量pe1进行对抗性调整处理,具体为:a1将嵌入向量集合TE和嵌入向量pe1进行连接并输入至目标模型M中,随后目标模型M不断输出token;通过目标模型M输入出的第1个至第LSQLICT个token计算损失函数lossC,计算公式如下: 其中,sqlictk为目标模型M输出的第k个token,1≤k≤LSQLICT;为tokensqlictk的logits;lossk为tokensqlictk的损失函数;a2通过目标模型M输入出的第LSQLICT+1个token计算损失函数lossT,计算公式如下: 其中,为目标模型M输出的第LSQLICT+1个token;为token的logits;a3计算总损失函数LossF:LossF=lossT+λ1*lossC,其中,λ1为可选的参数;a4根据总损失函数LossF利用反向梯度方法,不断调整嵌入向量pe1,随后重复步骤a1-步骤a3,直至目标模型M能够按顺序输出token化序列SQLICT和tokenpt1,输出本轮调整后的嵌入向量pe1作为最优嵌入向量Advpe1;7针对嵌入向量集合PE中第2个至第LPT个嵌入向量依次进行对抗性调整处理,得到最优嵌入向量其中,第i个嵌入向量pei进行YY处理过程具体为:b1针对嵌入向量集合PE中第i个嵌入向量pei,将token化序列TT和最优嵌入向量Advpe1至最优嵌入向量Advpei-1进行连接,得到序列PKTi,随后将序列PKTi输入至目标模型M中,得到token化序列PKTCi,token化序列PKTCi的长度为LSQLICT+i-1;随后利用目标模型M的嵌入层E对序列PKTi进行嵌入操作,得到嵌入向量集合PKEi;将嵌入向量集合PKEi和嵌入向量pei进行连接并输入至目标模型M中,随后目标模型M不断输出token;通过目标模型M输入出的第1个至第LSQLICT+i-1个token计算损失函数计算公式如下: 其中,为目标模型M输出的第j个token,1≤j≤LSQLICT+i-1;为token的logits;为token的损失函数;b2通过目标模型M输入出的第LSQLICT+i个token计算损失函数计算公式如下: 其中,为目标模型M输出的第LSQLICT+i个token;为token的logits;b3计算总损失函数其中,λ1′为可选的参数;b4根据总损失函数利用反向梯度方法,不断调整嵌入向量pei,随后重复步骤b1-步骤b3,直至目标模型M能够按顺序输出token化序列PKTCi和tokenpti,输出本轮调整后的嵌入向量pei作为最优嵌入向量Advpei;8将token化序列TT和最优嵌入向量Advpe1至最优嵌入向量Advpei按顺序连接,得到序列AdvInputT;9利用目标模型M的分词器Tokenizer对序列AdvInputT进行解密,得到对抗性输入AdvInput;随后将对抗性输入AdvInput输入至目标模型M中,随后目标模型M输出带有攻击payload的指定SQL代码。
全文数据:
权利要求:
百度查询: 浙江大学 一种针对Text-to-SQL模型的注入攻击方法和装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。