保姆级 | 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 一键包。

bash 复制代码
https://oneinstack.com/

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

bash 复制代码
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 安装完成。在服务器中会打印出相关的安装路径以及用户密码。

ruby 复制代码
Nginx安装目录:/usr/local/nginx(Web服务器)

数据库安装目录:/usr/local/mysql
数据库数据目录:/data/mysql
数据库用户:root
数据库密码:9d7owghn

PHP安装目录:/usr/local/php
Opcache控制面板URL:http://192.168.0.53/ocp.php(PHP缓存控制面板)

Pure-FTPd安装目录:/usr/local/pureftpd(FTP服务器)
创建FTP虚拟主机脚本:./pureftpd_vhost.sh

phpMyAdmin目录:/data/wwwroot/default/phpMyAdmin(MySQL管理工具)
phpMyAdmin控制面板URL:http://192.168.0.53/phpMyAdmin

首页URL:http://192.168.0.53/(网站首页)

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

bash 复制代码
http://xxx.xxx.xxx.xxx/xprober.php

0x04 下载XSS Platform

下载 xss platform 项目。

bash 复制代码
https://github.com/78778443/xssplatform

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

bash 复制代码
/data/wwwroot/default

0x05 安装XSS Platform

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

bash 复制代码
http://xxx.xxx.xxx.xxx/

将 xssplatform 网站提权。

bash 复制代码
chmod -R 777 /data/wwwroot/default

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

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

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

注意将 xssplatform 网站降权。

bash 复制代码
chmod -R 755 /data/wwwroot/default

0x06 配置伪静态页面

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

bash 复制代码
cd /usr/local/nginx/conf

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

Dart 复制代码
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配置方法:

    javascript 复制代码
    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配置方法:

    javascript 复制代码
    <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 使配置生效。

Dart 复制代码
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 管理页面,需要先进行降权。

bash 复制代码
chmod -R 755 /data/wwwroot/default

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

bash 复制代码
http://xxx.xxx.xxx.xxx/phpMyAdmin/

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

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

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

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

bash 复制代码
chmod -R 777 /data/wwwroot/default

0x09 总结

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

相关推荐
知孤云出岫6 分钟前
web 渗透学习指南——初学者防入狱篇
前端·网络安全·渗透·web
mushangqiujin9 分钟前
ctfshow web文件上传 web166-170
网络安全
Suckerbin3 小时前
Hms?: 1渗透测试
学习·安全·网络安全
独行soc4 小时前
#渗透测试#SRC漏洞挖掘#深入挖掘XSS漏洞02之测试流程
web安全·面试·渗透测试·xss·漏洞挖掘·1024程序员节
newxtc4 小时前
【国内中间件厂商排名及四大中间件对比分析】
安全·web安全·网络安全·中间件·行为验证·国产中间件
follycat9 小时前
[极客大挑战 2019]HTTP 1
网络·网络协议·http·网络安全
morris13113 小时前
【SpringBoot】Xss的常见攻击方式与防御手段
java·spring boot·xss·csp
Lionhacker1 天前
网络工程师这个行业可以一直干到退休吗?
网络·数据库·网络安全·黑客·黑客技术
centos081 天前
PWN(栈溢出漏洞)-原创小白超详细[Jarvis-level0]
网络安全·二进制·pwn·ctf
程序员小予1 天前
如何成为一名黑客?小白必学的12个基本步骤
计算机网络·安全·网络安全