zoukankan      html  css  js  c++  java
  • xss跨站攻击原理

    https://www.cnblogs.com/frankltf/p/8975010.html

    跨站脚本攻击:通过对网页注入可执行代码且成功地被浏览器执行,达到攻击的目的,一旦攻击成功,它可以获取用户的联系人列表,然后向联系人发送虚假诈骗信息,可以删除用户的日志等等。有时候还和其他攻击方式同时实施比如SQL注入攻击服务器和数据库、Click劫持、相对链接劫持等实施钓鱼。

    执行条件:

    1. 需要向web页面注入恶意代码;
    2. 这些恶意代码能够被浏览器成功的执行。

    XSS攻击方式

    • XSS存储型攻击:恶意代码被保存到目标网站的服务器中,这种攻击具有较强的稳定性和持久性,比较常见场景是在博客,论坛等社交网站上,
    • XSS反射型攻击:意代码并没有保存在目标网站,通过引诱用户点击一个链接到目标网站的恶意链接来实施攻击的。
    • xss存储型攻击示例:用户可以一html的方式上传一次文章,如果黑客用户在上传文章时,在html里加入了一些违规的js代码,那么其他用户在访问这篇文章时,浏览器会默认执行黑客上传的js代码,从而完成了对其他用户攻击
    • xss反射型攻击方式:有时前端html页面需要把get方式传回来的字段显示到页面上,这时如果黑客在传的字段后加上一段js代码,则也是有可能被执行的。

    防御方式:

    • 将前端提交的数据编码转义:一般表单提交的时候完全可以用strip_tags函数去除html标签,如果涉及到富文本编辑器需要保留html标签,可以用htmlspecialchars对提交数据进行过滤,从而转换(& < > ’ ” )这几个字符;还有可以利用htmlentities函数转换所有的html标记
  • 相关阅读:
    spark 系列之六 SparkStreaming数据源之socket流
    spark 系列之五 SparkStreaming数据源之文件流
    spark 系列之四 Spark数据源之关系型数据库
    spark 系列之三 RDD,DataFrame与DataSet之间的转化
    spark 系列之二 Dataframe的使用
    spark 系列之一 RDD的使用
    Java Int类型与字符,汉字之间的转换
    Java实现栈
    名字的漂亮度
    在字符串中找出连续最长的数字串
  • 原文地址:https://www.cnblogs.com/bneglect/p/10917395.html
Copyright © 2011-2022 走看看