保姆级 | 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.mzph.cn/news/212958.shtml

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

相关文章

最新接口自动化测试面试题

前言 前面总结了一篇关于接口测试的常规面试题&#xff0c;现在接口自动化测试用的比较多&#xff0c;也是被很多公司看好。那么想做接口自动化测试需要具备哪些能力呢&#xff1f; 也就是面试的过程中&#xff0c;面试官会考哪些问题&#xff0c;知道你是不是真的做过接口自…

大数据面试总结 二

1、事实表主要分成几种&#xff1a; 1、事务事实表&#xff1a;又称作原子事实表&#xff0c;主要是用来描述业务过程&#xff0c;跟踪控件或者时间上某点的度量事件&#xff0c;保存的是最原子的数据 2、周期事实表&#xff1a;以一个周期作为一个时间间隔&#xff0c;用来记…

2021版吴恩达深度学习课程Deeplearning.ai 05序列模型 12.5

学习内容 05.序列模型 1.1 为什么用序列模型 1.序列模型常见的应用 1.2 注释 notation 1.*T_x(i)表示训练样本x(i)的序列长度&#xff0c;T_y(i)表示target(i)的序列长度2.训练集表示单词的方式*构建字典的方式*在训练集中查找出现频率最高的单词*网络搜集常用字典3.如果遇…

【C语言快速学习基础篇】之一基础类型、进制转换、数据位宽

文章目录 一、基础类型(根据系统不同占用字节数会有变化)1.1、有符号整形1.2、无符号整形1.3、字符型1.4、浮点型1.5、布尔型 二、进制转换2.1、二进制2.2、八进制2.3、十进制2.4、十六进制2.5、N进制2.6、进制转换关系对应表 三、数据位宽3.1、位3.2、字节3.3、字3.4、双字3.5…

程序员常用英文单词

英语对于程序员来说多么重要应该无需过多解释了&#xff0c;把近期在网上收集到的分享到这里供大家学习交流。 PS&#xff1a;感谢原作者的收集&#xff0c;谢谢。 A abstract 抽象的 abstract base class (ABC) 抽象基类abstract class 抽象类 abstraction 抽象、抽象物、抽象…

【数据结构高阶】红黑树

目录 一、红黑树的概念 二、红黑树的性质 2.1 红黑树与AVL树的比较 三、红黑树的实现 3.1 红黑树节点的定义 3.2 数据的插入 3.2.1 红黑树的调整思路 3.2.1.1 cur为红&#xff0c;f为红&#xff0c;g为黑&#xff0c;u存在且为红 3.2.1.2 cur为红&#xff0c;f为红&am…

【重点】【LCA】236. 二叉树的最近公共祖先

题目 class Solution {public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {if (root null || root p || root q) {return root;}TreeNode left lowestCommonAncestor(root.left, p, q);TreeNode right lowestCommonAncestor(root.right, p, …

【重点】【DFS】124.二叉树中的最大路径和

题目 和求二叉树直径相同套路 class Solution {private int max Integer.MIN_VALUE;public int maxPathSum(TreeNode root) {if (root null) {return 0;}dfs(root);return max;}// 返回经过root的单边分支最大和public int dfs(TreeNode root) {if (root null) {return 0;}…

IT新闻资讯系统,使用mysql作为后台数据库,此系统具有显示数据库中的所有信息和删除两大功能。

表的准备&#xff1a; -- MySQL Administrator dump 1.4 -- -- ------------------------------------------------------ -- Server version 5.1.40-community /*!40101 SET OLD_CHARACTER_SET_CLIENTCHARACTER_SET_CLIENT */; /*!40101 SET OLD_CHARACTER_SET_RESULTSCHAR…

LTP测试

LTP 测试 LTP套件是由 Linux Test Project 所开发的一套系统测试套件。它基于系统资源的利用率统计开发了一个测试的组合,为系统提供足够的压力。通过压力测试来判断系统的稳定性和可靠性。压力测试是一种破坏性的测试,即系统在非正常的、超负荷的条件下的运行情况 。用来评估…

mysql库名规范

mysql库名的一些规范和建议&#xff1a; 库名以小写字母、数字、下划线组成&#xff0c;不要以数字开头。建议不要超过32个字符&#xff0c;但尽量用简短的名称。因为很多地方用到库名&#xff0c;如果库名太长&#xff0c;容易出错。库名选择有意义的名称&#xff0c;尽量与应…

55.手写实现grpc连接池以及gin和grpc交互

文章目录 一、简介前置说明 二、敏感词过滤服务1、定义sensitive.proto文件2、protoc生成pb.go文件3、sensitive服务端实现 三、关键词匹配服务1、编写keywords.proto文件2、生成pb.go文件3、keywords服务端实现 四、gin web 路由服务1、新建grpcpool服务作为gin web服务2、根据…

GEE影像升尺度(10m->250m)

GEE影像升尺度&#xff08;10m->250m&#xff09; 代码 var ext /* color: #d63000 *//* shown: false *//* displayProperties: [{"type": "rectangle"}] */ee.Geometry.Polygon([[[108.74625980473367, 28.562445155322063],[108.74625980473367, …

【MySQL】之死锁问题及其解决方案

前言 数据库死锁问题是我们老生常谈的问题了&#xff0c;在我们实际开发过程中经常会遇到&#xff0c;为了尽量避免出现死锁&#xff0c;我们需要了解出现死锁的场景。同时&#xff0c;如果线上出现了死锁之后怎么去分析、排查和解决&#xff0c;下面我就这两点介绍一下。 一、…

ubuntu22.04 怎么开启SSH服务

在 Ubuntu 22.04 LTS 中&#xff0c;默认情况下不会自动启动 SSH 服务。如果你想通过 SSH 访问你的 Ubuntu 系统&#xff0c;你需要手动安装 SSH 服务器&#xff0c;并确保 22 端口&#xff08;SSH 的默认端口&#xff09;是开放的。以下是必要的步骤&#xff1a; 安装 SSH 服…

Java 多线程之同步(锁)相关类总结

文章目录 一、概述二、volatile 可见性/有序性三、synchronized 互拆锁/排他锁/非观锁四、DCL&#xff08;Double-Checked Locking&#xff09;五、CAS&#xff08;Compare and Set&#xff09;六、ReentrantLock 可重入锁/公平/非公平锁七、ReentrantReadWriteLock 读写锁/共享…

Day56力扣打卡

打卡记录 数对统计&#xff08;DP状态压缩&#xff09; 参考文献 #include <bits/stdc.h>using namespace std;void solve(){int n;cin >> n;map<int, int> mapp;vector<int> a(n);for (auto& x : a){cin >> x;mapp[x] ;}vector<array&…

使用WebyogSQLyog使用数据库

数据库 实现数据持久化到本地&#xff1a; 使用完整的管理系统统一管理&#xff0c; 数据库&#xff08;DateBase&#xff09;&#xff1a; 为了方便数据存储和管理&#xff08;增删改查&#xff09;&#xff0c;将数据按照特定的规则存储起来 安装WebyogSQLyog -- 创建数…

101基于matlab的极限学习机ELM算法进行遥感图像分类

基于matlab的极限学习机ELM算法进行遥感图像分类&#xff0c;对所获取的遥感图片进行初步分类和最终分类。数据可更换自己的&#xff0c;程序已调通&#xff0c;可直接运行。