一、 前言

决定搭建XSS平台是因为自己想深入学习一下XSS相关的知识,多多进行实践,上网搜索了一下XSS平台有很多,但是总觉得不是很安全,这个毕竟敏感信息要传输到陌生人的服务器上,而且服务器端测试代码存在不可控性,所以决定自行搭建XSS平台做学习之用。在搭建完成后和我的导师徐松进行了交流,发现这款XSS平台除了在GitHub上有作者专业化的说明外,在网上没有任何关于这款XSS平台搭建方面的教程,最后在导师的鼓励和帮助下促成了这篇分享,也顺便记录一下自己所出现的问题方便以后回顾。

1.  什么是XSS平台

XSS平台可以辅助安全测试人员对XSS相关的漏洞危害进行深入学习,了解XSS的危害重视XSS的危害,如果要说XSS可以做哪些事情,XSS可以做js能够做的所有事情。包括但不限于:窃取Cookie、后台增删改文章、钓鱼、利用XSS漏洞进行传播、修改网页代码、网站重定向、获取用户信息(如浏览器信息,IP地址等)等。

2.  实验环境

涉及到的知识:Git、Linux基础、Apache简单配置、PHP简单配置、iptables防火墙设置

XSS平台项目名称:BlueLotus_XSSReceiver

作者:firesun(来自清华大学蓝莲花战队)

项目地址:https://github.com/firesunCN/BlueLotus_XSSReceiver

服务器操作系统:Centos 6.6

web容器:Apache

脚本语言:PHP

服务器IP地址:服务器IP地址

虚拟主机:192.168.245.133

web应用:DVWA

3.  推荐理由

推荐理由:界面布局清新、数据可阅读性好、IP获取准确、IP地址定位精准、轻量级(无需数据库)、对数据存储进行加密、GitHub开源方便与开发者交流(生命周期长)。

二、 XSS平台的搭建过程

1、安装Apache

#安装Apache

yuminstall httpd –y

#启动apache服务

servicehttpd start

#当我们在浏览器访问我们服务器时出现此页面时,代表着Apace已经安装成功

2、安装PHP

#安装PHP环境

yuminstall php –y

3、安装Git工具

#安装Git工具

yuminstall git –y

4、从GitHub克隆XSS平台源码

#删除Apache默认页面

rm -Rf/var/www/*

#在www目录下创建网站文件夹

mkdir/var/www/xss

#从GitHub上获取XSS平台源码

gitclone https://github.com/firesunCN/BlueLotus_XSSReceiver.git /var/www/xss/

#赋予权限

chmod –R777 /var/www/xss/

5、配置Apache

#新建虚拟主机配置文件夹

mkdir/etc/httpd/conf/vhost

#新建虚拟主机配置文件

touch/etc/httpd/conf/vhost/httpd-vhosts.conf

#编辑虚拟机配置文件

vi /etc/httpd/conf/vhost/httpd-vhosts.conf

#按A键进入编辑状态

<VirtualHost *:80>

DocumentRoot "/var/www/xss"

DirectoryIndex admin.php

</VirtualHost>

#对文件进进行保存

按esc键退出编辑状态,进入到命令模式

输入:wq命令然后回车保存编辑的文本

#编辑httpd.conf文件、将刚刚添加虚拟主机文件包含到配置文件中

cp/etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

vi/etc/httpd/conf/httpd.conf

修改httpd.conf 292行

修改303行为 Options ExecCGIFollowSymLinks(允许服务器使用CGI)

修改338行为AllowOverrideAll

在配置文件末尾插入以下内容

Include/etc/httpd/conf/vhost/httpd-vhosts.conf

#设置Apache开机启动

chkconfighttpd on

#重新载入Apache配置文件

servicehttpd reload

6、安装XSS平台

#访问http://服务器IP地址

点击安装

# 设置后台登录密码、数据加密密码(一定记得要修改)

#其余选项可保持默认,然后提交

#安装成功

#登录后台,访问http://服务器IP地址/login.php

三、 XSS平台的功能测试

1、获取Cookie

#配置公共模板default.js,修改js代码中的网站地址为http://服务器IP地址/index.php

#最后,点击下方的修改,保存修改

# 进入“我的js”模块

#设置js文件名称

#选择default.js模板

#插入模板

#新增

#选择“新增”保存js测试代码

#选择“生成payload”

实例:测试站点Dvwa XSS(stored)测试部分

#刷新Dvwa XSS(stored)页面

#XSS平台接收到获取的Cookie

2、与同类XSS平台比较

#下面是一套比较主流的XSS平台源码程序(http://xssa.me)所展示获取的Cookie

#同刚刚我们所使用的平台做一对比,发现我们的这个平台还是有一些自己的特点的:

  • 界面简洁,更加的人性化

  • 数据的可阅读性

  • 数据获取准确

  • 定位精准(使用纯真ip数据库)

  • 网站收信提示

  • 轻量级、安全(不使用数据库)

  • 密码输错五次封IP(解封需要删除/var/www/xss/data/forbiddenIPList.dat中的封禁IP)

  • 对XSS记录、IP封禁列表、js的说明(仅说明)加密,可设置是否加密、加密密码以及加密方式(AES、RC4)

  • 内置编辑器支持js语法高亮、语法错误检查

  • 网站安全配置

1、配置Apache

#编辑httpd.conf文件

vi/etc/httpd/conf/httpd.conf

# 44行修改为ServerTokensProd

# 536行改为修改为ServerSignatureOff

servicehttpd reload

#以上两条命令执行后前后结果对比

2、配置PHP

#编辑php.ini

cp/etc/php.ini /etc/php.ini.bak

vi /etc/php.ini

#修改432行为expose_php= Off

servicehttpd reload

#修改前后对比

3、配置iptables状态检测防火墙

只对外开放:HTTP、SSH服务

#修改ssh监听端口

vi/etc/ssh/sshd_config

#启动防火墙

serviceiptables start

#清除防火墙规则

iptables–F

#查看当前防火墙规则

iptables-L

#INPUT链:允许已经建立连接和在已建立的连接的基础上对服务器连接发起的连接

iptables-A INPUT -d 服务器IP地址 -mstate --state ESTABLISHED,RELATED -j ACCEPT

#INPUT链:允许对服务器http80端口新发起的连接

iptables-A INPUT -d服务器IP地址-p tcp --dport 80 -m state --state NEW –j ACCEPT

#INPUT链:允许对服务器ssh23233端口新发起的连接

iptables-A INPUT -d服务器IP地址-p tcp --dport 23233 -m state --state NEW -j ACCEPT

#OUTPUT链:允许已经建立连接和在已建立的连接的基础上服务器对其它地址连接发起的连接

iptables-A OUTPUT -s服务器IP地址-m state --state ESTABLISHED,RELATED -j ACCEPT

#OUTPUT链:允许服务器向外部服务器DNS53(udp)端口新发起DNS解析请求(yum等服务需要用到)

iptables-A OUTPUT -s服务器IP地址-p udp --dport 53 -m state --state NEW -j ACCEPT

#OUTPUT链:允许服务器向外部服务器http80端口新发起请求(yum等需要用到)

iptables-A OUTPUT -s服务器IP地址-p tcp --dport 80 -m state --state NEW -j ACCEPT

#OUTPUT链:允许服务器向外部服务器https443端口新发起请求(git等需要用到)

iptables-A OUTPUT -s服务器IP地址-p tcp --dport 443 -m state --state NEW -j ACCEPT

#配置防火墙默认进出规则:拒绝所有数据包

iptables-P INPUT DROP

iptables-P OUTPUT DROP

#保存防火墙规则

serviceiptables save

#设置防火墙开机自启动

chkconfigiptables on

4、SSH防暴力破解

#编辑脚本

vi/root/script/ssh-ban.sh

#添加可执行权限

chmod a+xssh-ban.sh

#设置执行计划(每5分钟执行一次检测)

echo"*/5 * * * * sh /root/script/ssh-ban.sh" >>/var/spool/cron/root

#开启服务

service crondstart

#设置开机启动

chkconfigcrond on

#输错5次密码被Ban后的效果

五、 遇到的问题

1、无法获取Cookie

解决方法:js代码“网站地址”处填http://服务器IP地址/index.php

解决思路:打开调试模式-刷新-发现确实有我们的xss-js代码执行-找到返回的数据包-发现返回数据包302跳转到XSS平台主页;

此时查看网站根目录发现index.php这个文件,因为我们的主页是admin.php,而index.php这个页面似乎并没有使用,打开后猜测其内容应该是接收处理发送来的参数

再次查看GitHub README文件,发现

于是更加确定了自己猜想应该是对的,此处网站地址应该填http://服务器IP地址/index.php用来接收参数,而不是填网站ip地址http://服务器IP地址。

六、 总结

在这次搭建XSS平台学习XSS利用技术的过程中,还是遇到了一些问题,比如:服务器端js代码的配置、一些新功能的尝试等。过程中锻炼了自己的动手能力,了解了XSS平台基本网站结构,帮助自己巩固了以前学习的知识。这个平台上还有一些js利用代码的功能还不是很了解,以后在工作之余可以学习学习。希望以后可以向大家多学习相关知识,不断提升自己,努力能够为团队出一份自己的绵薄之力。


http://www.taodudu.cc/news/show-3868650.html

相关文章:

  • tp5.1开发手册链接
  • tp5 读取扩展配置文件
  • tp5 composer 安装扩展库
  • TP5 中引入第三方类库
  • tp5引入文件
  • Tp5.0完全开发手册学习(第四章 路由)
  • python Gooey库打包问题
  • 【Python】程序可视化图形界面UI交互,Gooey
  • python gui Gooey 报错 error: argument command: invalid choice:
  • python Gooey doesn‘t currently support top level required arguments when subparsers are present.
  • 14.3K Star!听说你不喜欢命令行?那快来试试这个转换成 GUI 的工具
  • 牛逼了!仅需一行代码将Python程序转换为图形界面应用
  • Python提取PDF发票信息保存Excel文件并制作EXE程序
  • 【你不知道的骚操作】一行代码将Python程序转换为图形界面应用
  • Rendering Gooey Materials With Multiple Layers
  • Python GUI 框架个人体验及评价 (2022)
  • 多功能用途 Gooey Effects 7种炫酷HTML5 SVG液态水滴融合动画特效
  • 导航菜单 gooey-menu jQuery液态融合(gooey)样式导航菜单插件(精)
  • jQuery弹性展开收缩菜单插件gooey.js
  • Gooey使用python打包后,print不能输出到GUI的命令行窗口内的问题解决
  • 绝了,Gooey:一行代码将 Python 程序转换为图形界面应用
  • python打包中文报错,解决python3+Gooey使用pyinstaller打包时无法输出中文的问题
  • 210811_152958-Gooey实战 | 几行代码转换Python程序为图形界面应用!
  • 丢弃Tkinter,这款GUI神器值得拥有 - Gooey
  • python之Gooey图形界面使用
  • python gooey_使用Three.js制作Gooey图像悬停效果
  • python 界面GUI - Gooey库快速搭建界面
  • python3 + Gooey快速开发GUI应用程序
  • 基于jQuery弹性展开收缩菜单插件gooey.js
  • python搭建GUI第三方库gooey入门

从零开始搭建轻量级个人XSS平台(BlueLotus_XSSReceiver-master蓝莲花)相关推荐

  1. 怎么搭建xss平台云服务器,零成本搭建个人专属XSS平台

    0x00 背景介绍 虽然现在网络上有许多免费的XSS平台,但使用体验往往不是很好,经常在配置时需要等待很长的加载时间,其中的脚本也难以自行修改,同时也存在可能的后台数据泄露等问题.本文意在通过其他技术 ...

  2. centos7搭建公共/私有xss平台

    为什么要选择自己搭建平台?毕竟接触的是敏感的东西,网上也有很多公共的平台,感觉不怎么安全.经过两天的折腾,查看各种文章,总结出这个搭建方法.这个也可以在虚拟机上搭建,唯一不好的地方就是要开着虚拟机,关 ...

  3. 从零开始搭建公司大型SaaS 平台架构技术栈,这套架构绝了!

      大家好,我是宝哥! 当我们去搜索"架构",可以得到很多的架构图片,比如组织架构.业务架构.数据架构.技术架构.安全架构.产品架构.部署架构等. 什么是架构,通常大家说架构一般指 ...

  4. 从零开始Ubuntu下xss平台搭建的完整教程

    0x01 环境搭建 apache安装 在ubuntu下安装apache2很简单,只要用apt-get install apache2就可以了,安装完成后,在 /etc/apache2/路径下,有个ap ...

  5. (26)【xss环境搭建一条龙】【pm、bf使用】轻量xss平台、Postman、beef-xss功能模块利用

    目录 ​XSS平台搭建: ​第一步:先下载源文件 ​第一个(来源:清华大学蓝莲花战队): ​第二个(网上发布的,在真实机上搭建失败,打算虚拟机终端搭建): ​XSS工具使用: ​postman: ​下 ...

  6. xss漏洞之——XSS平台搭建

    前言 经过测试,如果发现了XSS漏洞,那么我们可以结合一些XSS工具来进行利用.常见的XSS利用工具有下面几个: 1.kali下的beef (1)kali命令行里输入beef-xss,得到一个脚本 & ...

  7. 搭建属于自己的xss平台

    一.什么是打 cookie 简单来说就是:在你访问的页面上执行了一次JS代码,这次代码的执行后可以获取你当前已经登录某个网站的cookie ,并将该cookie 发送到攻击者指定的网站,攻击者利用你的 ...

  8. Ubuntu搭建XSS平台 nginx+php5.6+mysql

    重要! 因为网上搭建XSS平台的大多数都是用Apache来做Web服务器的,所以我就找了些资料用nginx进行搭建,其实很简单. 本人还是个小白,对php等技术了解并不深,基本上都是参照别的大佬的文章 ...

  9. jeecgboot 前端环境搭建_如何从零开始搭建前端监控平台?

    前端监控与优化,一直是前端领域的重要研究方向.尤其在当下页面功能繁杂.页面延迟容忍度降低的时代,一套符合自身业务需要的监控平台,往往能让页面性能优化事半功倍. 现在市面上的大多数监控平台都是对性能.网 ...

最新文章

  1. 管理员修改文件的权限
  2. 随笔(很晚很晚,瞎写一通)
  3. 日历控件的android代码,Android日历控件PickTime代码实例
  4. linux给oracle导入sql语句,Linux数据库创建与数据导入
  5. 细说php这么难懂,挺难懂的解决方法
  6. python大牛自学心得_自学Python编程的第十天(希望有IT大牛看见的指点小弟我,万分感谢)---------来自苦逼的转行人...
  7. mysql schedule every_Mysql 架构及优化之-定时计划任务
  8. 160 - 49 DueList.4
  9. 【离散数学】二元关系的性质
  10. 网络蚂蚁(netants) v1.25 中文版 绿色
  11. 2015年度精品 最新力作32位和64位xp,win7,win8,win10系统下载(电脑城专用版)
  12. Python2.6+PyQt4.8+eric4+汉化+开发教程
  13. pulseaudio如何开通系统日志来debug
  14. 美团2015年校园招聘部分笔试题
  15. Python 爬虫模拟器
  16. JS实现倒计时精确到天数,时,分,秒或者精确到时、分、秒(小时数累加)
  17. 第27次CCF-CSP计算机软件能力认证(2022-09-18)
  18. 经典书籍亲子共读云端相约共沐书香
  19. opencv学习-均值滤波blur
  20. Allegro ---检查Dummy Net 、Not a net和有命名但是其中一端未连接的网络

热门文章

  1. 百度ERNIE,中文任务全面超越BERT
  2. 【云原生Docker系列第五篇】Docker数据管理(与其互为人间,不如自成宇宙)
  3. 判断一个链表是否为回文结构
  4. 王者服务器12月维护,12月28日周版本更新维护内容公告
  5. caffe cmake
  6. ssm汽车销售系统毕业设计(附源码、运行环境)
  7. 基于springboot 快速搭建简单前后端分离项目-后台框架
  8. 牛津大学之吃不完的formal dinner
  9. 用熵值法求对战游戏结束后玩家之间的评分
  10. CS231n-assignment3-Generative Adversarial Networks (GANs)