06-xss攻防于绕过

xss的攻击于防御

攻击的利用方式

1)获取cookie,实现越权,如果是获取到网站管理员的cookie,也可以叫提权。注意尽量尽快退出账号,删除session,让session失效

2)钓鱼网站,模拟真实的网站,获取用户信息(用户名密码等),先告诉账号密码不正确,再跳转到真实网站

3)执行js代码,用于DDOS攻击别的目标站点,在站点A植入xss代码,向站点b发起请求,当用户量大的时候,实现DDOS攻击

4)恶意链接让用户点击,或者直接将网页植入到站点的标签中

将上述代码以短链接(短网址)的方式发送(这也是隐藏链接的方式)

5)当用户点击并访问到恶意站点:,

<a href=“http://xxx/xss.html”>,在xss.html的网页中,可以执行js代码

一方面提供正常的网站功能,另一方面隐藏着DOS或挖矿代码让用户浏览器执行

2、测试方法(攻击方式)

1)反射型xss测试的时候,可以使用扫描器,或者burp进行fuzz

2)存储型xss测试的时候,可以直接把字典中的payload都塞进去,根据弹窗的编号,就知道时哪个。

但是这个容易发现,所有可以试探一下特殊字符是否被过滤。(会被存到数据库)

3)DOM型xss测试,主要以阅读js代码为主。在页面中找输入点的相关dom节点,

在开发者选项中搜索一下根据搜索结果去看是否被相关的js操作,

如果有js操作,就去看我们的输入操作后输出在哪个地方,就按照常规的xss思路进行构建。

<input type="submit" value="<img src=1 οnerrοr=alert(1)"/>

或<input type="botton" value="" οnclick=alert()"/>

扫描器,要么直接对一个URL地址进行xss的payload攻击上存在xss,

另一个思路是对整个网站使用爬虫手段爬取url地址,让后再批量扫描(扫描的核心就是字典)

3、防御手段

1)做实体字符编码,htmlspecialchars(),函数功能就是把特殊符号,比如尖括号,引号转换成实体编码,

这样就不会在输入的地方去干扰页面源码。经过实体字符编码后,用户输入的特殊符号在源代码中就变成编码,

但是在页面输出的时候,还是会显示成原来的样子。当输出的位置在元素内容里面,并且被实体编码后,基本上就没有XSS的可能了。

$content = htmlspecialchars($_GET['content']);

2)正则表达式或字符串判断

实体字符编码如果输出在事件属性中,还是有可能存在绕过的可能性,比如在a标签中,

没有尖括号也没有引号,就有可能被绕过,

如果存在类似这种的情况,需要在链接属性中加上http://或https://的正则表达式来限制。

XSS的绕过方式

1.绕过过滤

1)前端限制,直接用F12开发者选项修改js或html代码即可,或者用burpsuite绕过。

2)字符过滤,双写,大小写绕过,通过注释符绕过,也可以通过换行符绕过。

3)HTML实体转换;

字符实体是用一个编号写入HTML代码中来代替一个字符,在使用浏览器网页时会将这个编号解析还原为字符以供阅读。

javascript:alert("hello")编码为:(使用burp中的docode继续转换)

2、绕过编码

明确浏览器解析的机制,明白机制后,选择对应的编码。

3、其他技巧

1)输入标签间的情况:测试<>是否被过滤或转义,若无则直接

2)输出在script标签内,我们需要在保证内部js语法正确的前提下,去插入我们的payload。

如果我们在输出在字符串内部,测试字符串能否被闭合。如果我们无法闭合包裹字符串的引号,

这个就很难利用了,可能的解决方案:可以控制两处输入且\可用、存在宽字节。

3)输入在HTML属性内:查看属性是否有双引号包裹、没有则直接添加新的事件属性;

有双引号包裹则测试双引号是否可用,可用则闭合属性之后添加新的属性里以HTML实体编码的方式引入任意字符,

从而方便我们在事件属性里以JS的方式构造payload。

相关推荐

  1. XSS方法总结

    2024-05-10 07:06:10       36 阅读
  2. xss相关知识点与思路总结

    2024-05-10 07:06:10       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-10 07:06:10       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-10 07:06:10       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-10 07:06:10       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-10 07:06:10       18 阅读

热门阅读

  1. 【Web漏洞指南】DOM XSS

    2024-05-10 07:06:10       7 阅读
  2. 基于STM32的宠物箱温度湿度监控系统毕业设计

    2024-05-10 07:06:10       11 阅读
  3. WEB基础--数据库事务与连接池

    2024-05-10 07:06:10       7 阅读
  4. day07-缓存套餐

    2024-05-10 07:06:10       10 阅读
  5. C++ QT设计模式:状态模式

    2024-05-10 07:06:10       9 阅读
  6. 设计模式——解释器模式(Interpreter)

    2024-05-10 07:06:10       9 阅读
  7. 养成类游戏原理分析。

    2024-05-10 07:06:10       11 阅读
  8. UINXU

    2024-05-10 07:06:10       6 阅读
  9. 24届电信红队实习生面经

    2024-05-10 07:06:10       7 阅读
  10. 阿里云宣布:全面赶超GPT-4

    2024-05-10 07:06:10       9 阅读