网站建设、公众号开发、微网站、微商城、小程序就找牛创网络 !

7*24小时服务专线: 152-150-65-006 023-68263070 扫描二维码加我微信 在线QQ

web安全团结互助,让我们共同进步!

当前位置:主页 > 技术资讯 > 网络安全 > web安全 >

我们的优势: 10年相关行业经验,专业设计师量身定制 设计师一对一服务模式,上百家客户案例! 企业保证,正规流程,正规合作 7*24小时在线服务,售后无忧

web安全之-跨站脚本攻击及防御

文章来源:重庆网络安全 发布时间:2019-05-01 14:03:56 围观次数:
分享到:

摘要:过去几个月我们一直致力于安全代码实践,我们一直在努力与社区讨论易于采用的方法。我们每天看到的不安全代码的数量确实令人震惊,我们都同意“预防胜于治疗”。

我们来挖掘吧!

因此,这篇特别的文章“如何编写安全代码?”专注于跨站点脚本问题。

 

如何编写安全代码?保护自己免受跨站点脚本攻击!

 

过去几个月我一直致力于安全代码实践,我一直在努力与社区讨论易于采用的方法。我们每天看到的不安全代码的数量确实令人震惊,我们都同意“预防胜于治疗”。

 

 

只要应用程序获取不受信任的数据并将其发送到Web浏览器而没有正确的验证和转义,就会发生跨站点脚本漏洞。XSS允许攻击者在受害者的浏览器中执行脚本,这些脚本可能会劫持用户会话,破坏网站或将用户重定向到恶意网站。

 

保持我们的代码和应用程序安全的最佳方法是从一开始就正确编程。编写安全代码并不困难或复杂,只需要程序员知道在哪里包含安全检查。这是几行额外代码的问题,但仅此一项就可以抵御针对您的应用程序的大量攻击。

 

下面的代码是发生XSS攻击的示例之一,所采用的输入未经过清理,并且直接传递给参数。


用户输入的值立即存储在局部变量firstNameParameter中,然后在HTTP响应中将值发送到浏览器,而不进行任何输出编码。

 

在本文中,我将介绍几种不同类型的攻击和方法,即您每天面临的攻击和方法以及可用于防止它们的方法: 

String firstNameParameter =(String)

 request.getParameter(“firstName”);

 

1.反射XSS

它一次针对一名受害者进行追踪,当恶意负载传递给受害者并且他们最终点击恶意URL并让黑客访问他们的cookie和其他数据时,可以看到它在行动中。

 

这里是有效载荷的示例,如果受害者执行该攻击,则攻击者可以访问其详细信息。


http://023niu.com/submitForm.do?customer= //整个脚本将作为url传递。//它已被提出以增强可读性。另一个例子是我们访问一个密码生成器的网页。乍一看,页面看起来不容易受到任何攻击,因为我们所要做的就是按“生成密码”按钮。我们打开我们的burp-suite并在我们的代理选项卡中拦截请求。我们将其发送到转发器选项卡以检查请求查询和相应的响应查询。下面的图像是我们传递的第一个请求,我们可以观察到我们在请求查询中传递的用户名会反映在响应查询中。现在我们知道,用户名反映给我们,我们可以使用我们的有效负载注入值字段。现在唯一需要的是我们如何设计有效负载,以便我们可以按预期执行命令。“; catch(e){} alert('inject'); try(a =”//我们的有效载荷 上图显示了请求和附加有效负载的响应查询,似乎已经成功。我们对整个有效负载进行url编码,然后通过代理选项卡再次发送,并检查我们在浏览器中收到的结果。正如预期的那样,我们会收到一个警告框,该框显示在浏览器中,表明攻击有效负载已经起作用。" _ue_custom_node_="true">
本文由 重庆网络安全 整理发布,转载请保留出处,内容部分来自于互联网,如有侵权请联系我们删除。

相关热词搜索:web安全 网络安全 跨站脚本攻击 web防御

上一篇:手机验证码常见攻击手法和漏洞总结
下一篇:Fckeditor最新安全漏洞及防护整理

热门资讯

鼠标向下滚动