The invention discloses a method for CSRF token elements identification in web pages, which comprises the following steps: creating the HTTP first session, by acquiring the target page source code, check the page source code if there is < form> tag; retrieval of the first session of \source code < form> in the presence of input tag type form hidden; create HTTP second session, by acquiring the target page source code, check the page source code if there is < form> tag; retrieve second session page source code < form> tag is the existence of input type hidden type input form elements; followed by the first session and the second session the form is hidden form element value; calculation suspected CSRF token form element value of Levin's distance ratio, the identification of the parameters is CSRF token. The present invention through the dynamic recognition algorithm of CSRF token based on elements, improve the recognition rate of token CSRF elements, greatly reduce the false negatives.
【技术实现步骤摘要】
一种识别网页中CSRFtoken元素的方法
本专利技术涉及CSRF识别领域,具体涉及一种识别网页中CSRFtoken元素的方法。
技术介绍
CSRF攻击之所以能够成功,是因为攻击者可以伪造用户的请求,该请求中所有的用户验证信息都存在于Cookie中,因此攻击者可以在不知道这些验证信息的情况下直接利用用户自己的Cookie来通过安全验证。由此可知,抵御CSRF攻击的关键在于:在请求中放入攻击者所不能伪造的信息,并且该信息不存在于Cookie之中。系统开发者可以在HTTP请求中以参数的形式加入一个随机产生的token,并在服务器端建立一个拦截器来验证这个token,如果请求中没有token或者token内容不正确,则认为可能是CSRF攻击而拒绝该请求。这种网页表单中嵌入CSRFtoken的方法有效阻止了点击链接触发CSRF漏洞,但同时对于自动化漏洞检测工具也造成了拦截,导致自动化漏洞检测工具不能够正常提交网页表单请求,造成对网页表单中的输入参数的漏洞不能进行检测。现有技术通过收集常见Web框架的CSRFtoken值名称作为黑名单,例如表单input名称为token,csrf_token,csrfmiddlewaretoken等,这些参数名称在黑名单中,那么在HTTP请求过程中就认为是CSRFtoken参数。在后续的HTTP请求中会获取CSRFtoken参数值,构造正确的不被服务端拦截的HTTP请求。因为是基于黑名单方式来判别是否是CSRFtoken参数,这种方式依赖收集的黑名单库的数量及准确性,存在大量的漏报情况,覆盖不全,不能收集覆盖所有的网页表单中CSRF ...
【技术保护点】
一种识别网页中CSRF token元素的方法,其特征在于,包括以下步骤:步骤1:创建HTTP第一个会话,通过获取目标页面源代码,检查页面源代码是否存在<form>标签,存在则进行后续步骤;步骤2:检索第一个会话的网页源码<form>标签内是否存在input类型为hidden的表单元素,存在则进行后续步骤;步骤3:创建HTTP第二个会话,通过获取目标页面源代码,检查页面源代码是否存在<form>标签,存在则进行后续步骤;步骤4:检索第二个会话的网页源码<form>标签内是否存在input类型为hidden的表单元素,存在则进行后续步骤;步骤5:依次比较第一个会话和第二个会话的表单中input类型为hidden的表单元素值,若相同input参数名称的值发生变化,则标记为疑似CSRF token值,进入后续步骤;步骤6:计算疑似CSRF token表单元素值的莱文斯坦距离比例,若所得到的比例大于一个确定的阈值,则该参数的CSRF token随机性不够,做误报处理,否则,判别该参数为CSRF token。
【技术特征摘要】
1.一种识别网页中CSRFtoken元素的方法,其特征在于,包括以下步骤:步骤1:创建HTTP第一个会话,通过获取目标页面源代码,检查页面源代码是否存在<form>标签,存在则进行后续步骤;步骤2:检索第一个会话的网页源码<form>标签内是否存在input类型为hidden的表单元素,存在则进行后续步骤;步骤3:创建HTTP第二个会话,通过获取目标页面源代码,检查页面源代码是否存在<form>标签,存在则进行后续步骤;步骤4:检索第二...
【专利技术属性】
技术研发人员:周海啸,
申请(专利权)人:成都知道创宇信息技术有限公司,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。