PHP代码审计基础:XSS漏洞

文章目录

      • xss攻击
      • xss的危害
      • 挖掘思路
      • 反射型xss
        • 常见场景
      • 存储型xss
        • 存储型与反射型的区别
      • DOM型xss
        • 什么是DOM型xss
        • DOM型常见属性
        • 环境搭建
      • 修复方案

xss攻击

XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。

xss的危害

  • 窃取管理员帐号或Cookie,入侵者可以冒充管理员的身份登录后台。使得入侵者具有恶意操纵后台数据的能力,包括读取、更改、添加、删除一些信息
  • 窃取用户的个人信息或者登录帐号,对网站的用户安全产生巨大的威胁。例如冒充用户身份进行各种操作
  • 网站挂马。先将恶意攻击代码嵌入到Web应用程序之中。当用户浏览该挂马页面时,用户的计算机会被植入木马
  • 发送广告或者垃圾信息。攻击者可以利用XSS漏洞植入广告,或者发送垃圾信息,严重影响到用户的正常使用

挖掘思路

黑盒测试

  • 一般对一些留言板、搜索框、文章发表、用户资料修等等改这些地方进行测试
  • 总之就是有数据交互的地方,试一试就行了

白盒审计

  • 用户输入参数:GET POST …
  • 函数
  • 输入到输出是否有过滤?

反射型xss

说实话我个人认为这个反射型的xss利用价值不是很高,这个也叫非持久性xss。顾名思义,我们把payload夹在存在漏洞的url里,发送给管理员,诱导他点击这个链接,而且还必须是在登录管理员账号的情况下,打到的cookie才好使。

有一些特殊情况下,反射型xss的危害也是不容小觑,比如在name的输入框中插入

<meta http-equiv="refresh" content="3"/>

这段数据传输到浏览器中,网站每3秒会刷新一次,严重会引起服务器崩溃

常见场景

  • 将前端获取的内容,直接输出到浏览器中
  • 将前端获取的内容,直接输出到HTML标签
  • 将前端获取的内容,直接输出到

你可能感兴趣的:(代码审计:基础)