部分网站跳转搜索是使用form表单来进行跳转的,因此会被安全扫描公司,扫描出存在“没有CSRF保护的HTML表单”相关的漏洞。针对该类型漏洞可以统一回复:“此表单为跳转至向互联网开放的搜索平台,无需用户授权登录,不涉及数据提交。此表单为业务需求,建议不处理”。
如果确实需要处理的,则可以按照下面范例来调整网站对应的模板:(注意:以下代码为范例,在使用过程中需要根据对应网站情况进行调整修改)
以下是用form表单跳转搜索系统的代码
<form class="search" method="get" action="http://search.gd.gov.cn/search/local_msg/{站点ID}/" target="_blank">
<input type="text" class="txt" id="keyword" name="keywords"/>
<input type="submit" class="s1" id="search-btn" value=""/>
</form>
针对上面的代码,需要做如下调整:
第一步、 将form标签改为div标签,同时去掉method属性,action属性,target属性,如下:
<div class="search">
<input type="text" class="txt" id="keyword" name="keywords"/>
<input type="submit" class="s1" id="search-btn" value=""/>
</div>
第二步、增加如下javascript代码:
<script>
//为搜索按钮绑定点击事件
$('#search-btn').on('click', function () {
//获取关键词
var keyword = $('#keyword').val();
//如果有输入提示语需要这一步,如果没有输入提示语则可以忽略
keyword = keyword === '请输入您要搜索的关键词' ? '' : keyword;
//构造跳转链接,将{站点ID}替换成对应网站的站点id
var url = 'http://search.gd.gov.cn/search/local_msg/{站点ID}?keywords=' + window.encodeURIComponent(keyword);
//跳转
window.open(url);
});
</script>