保姆级 | XSS Platform环境搭建

0x00 前言

        XSS Platform 平台主要是用作验证跨站脚本攻击。该平台可以部署在本地或服务器环境中。我们可以使用 XSS Platfrom 平台搭建、学习或验证各种类型的 XSS 漏洞。

        

        

0x01 环境说明

HECS(云耀云服务器)
xss platform
Ubuntu 22.04
Nginx 1.24.0
MySQL 5.6.51
Pure-Ftpd 1.0.49
phpMyAdmin 5.2.1
PHP 7.2.34

        

        

0x02 准备工作

使用 OneinStack 为服务器安装 LNMP 一键包。

https://oneinstack.com/

         

在自动安装页面下,选择 Nginx 、 PHP 、 MySQL 、 Pure-FTPd 以及 phpMyAdmin 。选择好以后,复制安装命令到服务器中执行即可。

wget -c http://mirrors.oneinstack.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --nginx_option 1 --php_option 7 --phpcache_option 1 --php_extensions zendguardloader,ioncube,sourceguardian,gmagick,fileinfo,imap,ldap,phalcon,yaf,redis,memcached,mongodb,swoole,xdebug --phpmyadmin  --db_option 3 --dbinstallmethod 1 --dbrootpwd 9d7owghn --pureftpd  --reboot

        

        

0x03 验证LNMP

经过漫长的等待, LNMP 安装完成。在服务器中会打印出相关的安装路径以及用户密码。

Nginx安装目录:/usr/local/nginx(Web服务器)数据库安装目录:/usr/local/mysql
数据库数据目录:/data/mysql
数据库用户:root
数据库密码:9d7owghnPHP安装目录:/usr/local/php
Opcache控制面板URL:http://192.168.0.53/ocp.php(PHP缓存控制面板)Pure-FTPd安装目录:/usr/local/pureftpd(FTP服务器)
创建FTP虚拟主机脚本:./pureftpd_vhost.shphpMyAdmin目录:/data/wwwroot/default/phpMyAdmin(MySQL管理工具)
phpMyAdmin控制面板URL:http://192.168.0.53/phpMyAdmin首页URL:http://192.168.0.53/(网站首页)

        

访问 xprober 监控,检查相应组件是否正常工作。

http://xxx.xxx.xxx.xxx/xprober.php

        

        

0x04 下载XSS Platform

下载 xss platform 项目。 

https://github.com/78778443/xssplatform

        

这里使用 Xftp 工具,将 xssplatform 项目上传到网站根目录下。

/data/wwwroot/default

        

0x05 安装XSS Platform

打开网站首页安装 XSS Platform ,发现左下角显示 project/conf 文件夹不可写。这种情况是因为权限不够导致的。

http://xxx.xxx.xxx.xxx/

        

将 xssplatform 网站提权。

chmod -R 777 /data/wwwroot/default

        

再次访问网站首页,这时 “其他人” 也拥有了最高权限,便可以正常执行 XSS Platform 的安装了。

        

这里填写空白信息即可,也就是红框中的数据库密码、管理员以及管理员密码。数据库密码在之前安装 LNMP 时,服务器为我们打印出来了。关于管理员和管理员密码自定义设置即可。

        

成功导入数据信息后,点击进入首页。这时 XSS Platform 平台已搭建完成。

        

注意将 xssplatform 网站降权。

chmod -R 755 /data/wwwroot/default

        

        

0x06 配置伪静态页面 

打开 nginx/conf 配置目录。如果找不到目录使用 find 查找 nginx.conf 文件即可。

cd /usr/local/nginx/conf

        

编辑 nginx.conf 文件,将以下代码插入到 default 中,对 URL 规则进行重写。保存并退出。

rewrite "^/([0-9a-zA-Z]{6})$" /index.php?do=code&urlKey=$1 last;
rewrite "^/do/auth/(\w+?)(/domain/([\w\.]+?))?$" /index.php?do=do&auth=$1&domain=$3 last;
rewrite "^/register/(.*?)$" /index.php?do=register&key=$1 last;
rewrite "^/register-validate/(.*?)$" /index.php?do=register&act=validate&key=$1 last;

关于伪静态页面配置的说明:

  1. Nginx配置方法:
    rewrite "^/([0-9a-zA-Z]{6})$" /index.php?do=code&urlKey=$1 last;
    rewrite "^/do/auth/(\w+?)(/domain/([\w\.]+?))?$" /index.php?do=do&auth=$1&domain=$3 last;
    rewrite "^/register/(.*?)$" /index.php?do=register&key=$1 last;
    rewrite "^/register-validate/(.*?)$" /index.php?do=register&act=validate&key=$1 last;
  2.  Apache配置方法:
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^([0-9a-zA-Z]{6})$ /index.php?do=code&urlKey=$1 [L]
    RewriteRule ^do/auth/(\w+?)(/domain/([\w\.]+?))?$  /index.php?do=do&auth=$1&domain=$3 [L]
    RewriteRule ^register/(.*?)$ /index.php?do=register&key=$1 [L]
    RewriteRule ^register-validate/(.*?)$ /index.php?do=register&act=validate&key=$1 [L]
    </IfModule>

        

重启 nginx 使配置生效。

nginx -s reload

        

        

0x07 XSS Platform访问

访问 XSS Platform 平台,输入刚刚创建的管理员和管理员密码执行登录。

​        

登录成功如下显示。

        

        

0x08 配置公共模块

打开第一个 XSS-1.sql 数据库文件,通过替换的方式将所有显示 xxx.xxx.xxx.xxx 的替换为自己的域名或 IP 。保存并退出。

        

打开第二个 XSS-2.sql 数据库文件,通过替换的方式将所有显示 xxx.xxx.xxx.xxx 的替换为自己的域名或 IP 。保存并退出。

        

为了可以通过公网访问 phpMyAdmin 管理页面,需要先进行降权。

chmod -R 755 /data/wwwroot/default

        

访问 phpMyAdmin 管理页面,输入刚刚在服务器中打印的账号密码。

http://xxx.xxx.xxx.xxx/phpMyAdmin/

        

选择 xssplatform 数据库。点击上方导入按钮,选择第一个 XSS-1 数据库。最后执行导入。

        

继续点击上方导入按钮,选择第二个 XSS-2 数据库。最后执行导入。

        

检查公共模块,所有模块均已成功导入。

        

配置完成后,需要执行提权。

chmod -R 777 /data/wwwroot/default

        

        

0x09 总结

至此XSS Platform环境搭建完成。由于作者水平有限,文中若有错误与不足欢迎留言,便于及时更正。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/265120.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode力扣每日一题(Java):35、搜索插入位置

一、题目 二、解题思路 1、我的思路&#xff08;又称&#xff1a;论API的重要性&#xff09; 读完题目之后&#xff0c;我心想这题目怎么看着这么眼熟&#xff1f;好像我之前学过的一个API呀&#xff01; 于是我回去翻了翻我之前写的博客&#xff1a;小白备战蓝桥杯&#xf…

Draw.io or diagrams.net 使用方法

0 Preface/Foreword 在工作中&#xff0c;经常需要用到框图&#xff0c;流程图&#xff0c;时序图&#xff0c;等等&#xff0c;draw.io可以完成以上工作。 official website:draw.io 1 Usage 1.1 VS code插件 draw.io可以扩展到VS code工具中。

Python自动化:selenium常用方法总结

使用的Python版本为3.8&#xff0c;selenium版本为4.15.2 Python自动化:selenium常用方法总结 1. 三种等待方式2. 浏览器操作3. 8种查找元素的方法4. 高级事件 1. 三种等待方式 强制等待 使用模块time下的sleep()实现等待效果隐式等待 使用driver.implicitly_wait()方法&#…

ChibiOS简介2/5

ChibiOS简介2/5 1. 源由2. ChibiOS基础知识2/52.4 Chapter 4 - ChibiOS General Architecture2.4.1 The Big Picture&#xff08;总体框图&#xff09;2.4.2 Embedded Components&#xff08;嵌入式组件&#xff09;2.4.3 Application Model&#xff08;应用模型&#xff09;2.…

Vue之数据绑定

在我们Vue当中有两种数据绑定的方法 1.单向绑定 2.双向绑定 让我为大家介绍一下吧&#xff01; 1、单向绑定(v-bind) 数据只能从data流向页面 举个例子&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"…

【Kubernetes】持久化存储emptyDir/hostPath/nfs/PVC

k8s持久化存储 一、为什么做持久化存储&#xff1f;二、k8s持久化存储&#xff1a;emptyDir三、k8s持久化存储&#xff1a;hostPath四、k8s持久化存储&#xff1a;nfs4.1、搭建nfs服务4.2、挂载nfs共享目录 五、k8s持久化存储&#xff1a; PVC5.1、什么是PV5.2、什么是PVC5.3、…

使用shell脚本将一台虚拟机上面数据分发到其他虚拟机上面

目录 1&#xff0c;功能2&#xff0c;注意点3&#xff0c;shell脚本介绍4&#xff0c;bash内容 1&#xff0c;功能 使用shell脚本将一台虚拟机上面数据分发到其他虚拟机上面。 2&#xff0c;注意点 需要修改的地方&#xff1a;hadoop250 hadoop251 hadoop252 hadoop253 hado…

普冉(PUYA)单片机开发笔记(4): 配置通用定时器

概述 在前几篇开发笔记中&#xff0c;从 PY32F003 的一个厂家标准例程开始&#xff0c;实现了中断式无阻塞串口收发、对开发板 LED3 的亮/灭控制&#xff0c;时钟系统的初始化和时钟选择。在此基础上&#xff0c;今天做一下定时器的应用实验。事先考虑以下几个问题&#xff1a…

使用Git进行版本控制

参考&#xff1a;《Python编程从入门到实践》 前言1、安装、配置 Git1.1 在Linux系统中安装Git1.2 在OS X系统中安装Git1.3 在Windows系统中安装Git1.4 配置Git 2、创建项目3、忽略文件4、初始化仓库5、检查状态6、将文件加入到仓库中7、执行提交8、查看提交历史 前言 版本控制…

回顾【数学基础】找出断层,继续前进, 使用chatGPT学习并解决实际问题:微积分

已经学过的算术、代数、几何。跳过。 从微积分开始 想象一下&#xff0c;你在画一条曲线&#xff0c;或者在一个大草地上奔跑。微积分就是一种数学工具&#xff0c;帮助我们了解这条曲线的形状&#xff0c;或者你奔跑的方式。 微分&#xff08;就像研究曲线上的每一小点&…

基于SSM超市订单管理系统(Java毕业设计)

大家好&#xff0c;我是DeBug&#xff0c;很高兴你能来阅读&#xff01;作为一名热爱编程的程序员&#xff0c;我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里&#xff0c;我将会结合实际项目经验&#xff0c;分享编程技巧、最佳实践以及解决问题的方法。无论你是…

16ASM 数据传送指令 算数运算指令

目录 指令种类 数据传送指令 通用传送指令 堆栈操作指令 标志寄存器进出堆栈指令 地址传送指令 算术运算指令 加法减法指令 乘法除法指令 指令种类 数据传送类指令 通用数据传送指令&#xff1a;MOV &#xff0c;XCHG&#xff0c;XLAT堆栈传送指令&#xff1a;PUSH&a…