xss-labs靶场第一关测试报告

目录

一、测试环境

1、系统环境

2、使用工具/软件

二、测试目的

三、操作过程

1、注入点寻找

2、使用hackbar进行payload测试

3、绕过结果

四、源代码分析

五、结论


一、测试环境

1、系统环境

渗透机:本机(127.0.0.1)

靶 机:本机(127.0.0.1)

2、使用工具/软件

火狐浏览器的hackbar插件,版本:2.3.1

测试网址: http://127.0.0.1/xss-labs-master/level1.php?name=test

二、测试目的

实现基于get型的xss攻击

三、操作过程

1、注入点寻找

在url中即可看到变量name可控制输入,这就是注入点,下面提示payload长度为4也符合输入的name值的长度

2、使用hackbar进行payload测试

<script>alert('xss')</script>

3、绕过结果

成功弹窗

四、源代码分析

1.源代码重写了js的alert函数,一旦触发,弹窗"完成的不错"字样并跳转下一关

直接使用get的方法获取name的值,并且直接echo输出在了页面上,没有添加任何过滤

因此,在name中输入script标签,里面的js代码即可正常执行

  1. ini_set("display_errors", 0);

ini_set()是一个php函数,用来设置php的配置

displays_errors是配置选项,控制是否将错误信息显示 display:显示

0表示禁用,可用false代替

五、结论

信任用户的输入是不安全的。如果不对客户端输入进行检查,那么用户输入的代码也会执行。这样不仅会影响用户体验,而且危害服务器安全。

第一关没有进行任何的过滤,旨在让用户体验xss注入的过程和结果。

相关推荐
高山我梦口香糖10 分钟前
[react] <NavLink>自带激活属性
前端·javascript·react.js
撸码到无法自拔14 分钟前
React:组件、状态与事件处理的完整指南
前端·javascript·react.js·前端框架·ecmascript
高山我梦口香糖15 分钟前
[react]不能将类型“string | undefined”分配给类型“To”。 不能将类型“undefined”分配给类型“To”
前端·javascript·react.js
代码cv移动工程师18 分钟前
HTML语法规范
前端·html
Elena_Lucky_baby40 分钟前
实现路由懒加载的方式有哪些?
前端·javascript·vue.js
Domain-zhuo41 分钟前
如何利用webpack来优化前端性能?
前端·webpack·前端框架·node.js·ecmascript
理想不理想v1 小时前
webpack如何自定义插件?示例
前端·webpack·node.js
小华同学ai1 小时前
ShowDoc:Star12.3k,福利项目,个人小团队的在线文档“简单、易用、轻量化”还专门针对API文档、技术文档做了优化
前端·程序员·github
一雨方知深秋1 小时前
智慧商城:封装getters实现动态统计 + 全选反选功能
开发语言·javascript·vue2·foreach·find·every
海威的技术博客1 小时前
关于JS中的this指向问题
开发语言·javascript·ecmascript