xycms审计
0x00 环境源码:XYCMS-PHP-V1.0
PHP:5.6.40
MYSQL:5.7.26
0x01 前言XYCMS使用原生PHP语句,未使用框架,项目架构如下
目录说明
system 后台目录inc 存放过滤和配置文件install 安装目录其他为前台功能页面
0x02 后台添加信息处通用注入漏洞
<form name="add" method="post" action="?act=ok" onsubmit="return chkform();"> <table width="100%" border="0" align="center" cellpadding="3" cellspacing="0" > <tr onmouseout="style.backgroundColor='#F1F5F8'" bgcolor="#F1F5F8" > <td height="28" width="10%" class="td">网页标题</td> <td width="90%" ...
业务安全测试方法总结
0x01 登录认证用户枚举在验证用户身份的时候,或判断用户是否已注册时,若验证码处理不当、或错误提醒明确,都可能存在用户枚举。
案例:
任意密码重置短信验证码回传通过手机找回密码,发送验证码的响应包中包含了短信验证码。
案例:
当点击发送按钮后,拦截返回包,短信验证码包含在返回包中,导致可重置账户密码。
用户凭证修改任意账户密码通过手机找回密码是一般需要短信验证码验证(这里可以尝试爆破或绕过),当我们输入正确的手机号和正确的短信验证码,然后进入重置密码的最后一步,也就是输入新的密码,输入密码后提交到服务端的post数据包需要包含当前用户的身份信息,而一般网站是通过用户名或用户ID来标识用户身份的,如果这个用户名或用户ID没有和当前手机号、短信验证码进行绑定,也就是说服务端只验证用户名、ID是否存在,而不去验证用户和当前手机号是否匹配,那么我们就可以通过修改用户名、ID去修改其他用户的密码了。当然可以修改的地方不限于找回密码的数据包,比如修改资料的地方也可能存在这样的漏洞。
案例:
以某网站修改任意用户资料导致修改任意账号密码为例,截取的数据包 ...
jwt学习
0x00 背景起因:刷题的过程中看见一道题写着kunkun应援团,有应援口号,并集资11540必须买lv6?
滋滋滋,干就完事。
注册了账号,去购物车翻找lv6的商品,由于页数过多,用了个小脚本找到了lv6的商品在181页
脚本
from urllib import requesturl="http://220.249.52.133:47108/shop?page="for i in range(1,501): r = request.urlopen(url+str(i)) if "lv6.png" in r.read().decode('utf-8'): print(i) break else: print("lv6 is not in page "+str(i))
抓包修改一波价格
修改失败,提示操作失败,但发现有一次返回为302,并附带一个目录,访问后发现只允许admin访问
并且包中发现网站是通过JWT进行身份验证。无奈想请教一波大佬,结果大佬忙,只得自己研究一波JWT。。。
0x00 JWT基础百度介 ...
NoSql数据库getshell利用方法
0x00 背景 网络已经成为了现代社会中的第五世界,而说起网络就不得不提起数据库,数据库作为存储信息的应用软件,已经深入到了各行各业,购物、外卖、银行、游戏、出行等,可以说只要是提供服务给用户使用的软件或者网站都离不开数据库的应用。而用的最多的是关系型数据库,例如:MYSQL、MSSQL、Oracle。而本文讲解的是非关系型数据库(NoSQL),NoSQL数据库知道的最多的可能就是MongoDB、Redis、Memcached、Cassandra,但是你们知道NoSQL数据库还有那些吗?NoSQL的注入你们了解的多吗?NoSQL数据库中有哪些数据库是可getshell的?本文就带你了解一下什么是NoSQL数据库,NoSQL数据库的注入方法及getshell的方法。
0x01 NoSQL数据库特性 NoSQL全称是Not Only SQL,意为不仅仅的SQL。是一种非关系型数据存储模式,它存储的不再是结构化数据,而是类型和固定的格式,以key-value键值对、列式、文档来存储。而相较于关系型数据库,非关系数据库的优点有如下几点:
1、快速读写 主要例子有Redis,由于 ...
xyhcms审计学习
0x00 CMS核心目录网站使用框架:ThinkphpApp 应用目录data 网站上传配置、编辑器目录include 网站配置调式目录install 安装目录public 公共目录uploads 上传目录
环境:
CMS:XYHCMS V3.5
PHP:5.6
MYSQL:5.7.26
0x01 后台任意文件上传漏洞利用登录后台,有一个可修改网站配置的选项
当在允许附件类型或是允许图片类型处添加php后,可直接上传webshell获取权限。
漏洞分析网站设置——>App/controller/SystemController.class.php/194行 site函数
public function site() { if (IS_POST) { $data = I('config', array(), 'trim');//获取网站配置信息 //遍历网站配置项是否存在<?php字符串,如果存在字符串使用空字符串替换掉 foreach ($data as $key => $val) { if (stripos($ ...
xray基本方法
0x00 常规扫描爬虫扫描webscan --basic-crawler http://testphp.vulnweb.com/
代理模式扫描浏览器安装代理插件
genca 生成证书 //工具目录会生成两个文件
扫描命令
webscan --listen 127.0.0.1:8888 --html-output 1.html
最后配置浏览器监听端口
会根据在浏览器点击来进行扫描
联动Burp在burp配置一下选项即可
burp 被动流量转发插件
https://github.com/c0ny1/passive-scan-client/releases
听说可以使用awcs+bp+python脚本(自己写)组合成一个自动化漏洞挖掘工具,暂时不懂方法,留个坑
微信小程序反编译获取源码
0x00 环境搭建1、Nodejs
下载连接: https://nodejs.org/zh-cn/download/
安装成功后,在系统中配置环境变量即可,运行node -v,如下图说明安装成功
2、反编译脚本,github搜索wxappUnpacker或其他版本(由于敏感此处不放连接,自行下载)
3、模拟器(手机),夜神、雷神、逍遥等都可以。
0x01 前期准备1、下载RE文件管理器,允许使用超级管理员权限
2、手机已ROOT或使用模拟器ROOT模式
3、下载微信
0x02 获取小程序包当点开一个微信小程序,如果本地这个文件夹下找到即将运行的小程序,会从微信服务器下载到本地,在以后的某个时刻又运行这个小程序,运行时,微信服务器会通知有没有小程序新版本,如有新版本,会在后台静默下载,小程序继续运行,新版本要到下一次运行才会启用,这就是微信小程序的更新机制。
小程序包地址:/data/data/com.tencent.mm/MicroMsg/随机长字符串/appbrand/pkg/
将pkg文件夹中的包清空,返回微信打开需要抓取的小 ...
数据库注入语句收集及学习
0x00 任务介绍1、收集网络上各种 sql 注入时使用的 payload 并理解其适用的环境(检测注入、利用注入)
2、记录 sqlmap 的检测和利用过程中使用的 payload(也算一种 payload 收集方式)
3、理解以上涉及的 sql 语句的意思,其中会涉及不同的数据库、不同注入场景,可以将学习的过程和收集的方式进行整理形成报告,关于 payload 的理解,其中会涉及之前学习的基础。
扩展学习:理解 sqlmap 自带 tamper 的原理,这里通常包含很多数据库的特性,从而实现 payload 变形啥的,用来绕过一些简单的安全检测
0x01 收集注入语句盲注1、布尔注入
利用场景 通过页面是否返回正常判定是否存在注入原理 以真假判断是否存在,真为正常,假为不正常(页面区别不大,需仔细辨别不同点来判断是否存在注入)测试流程 存在注入点,判断第一个数据库第一个字符是否等于c and substr(database(),3,1)='c' 判断数据库的第一张表的第一个字符是否等于a and (ascii(substr((select table_name f ...
powershell收集域信息
0x00 PowerShellPowerShell版本信息:
2.0 windows2008,windows7
3.0 windows2012,windows8
4.0 windows2012R2,windows8.1
5.0 windows2016,windows10
PowerShell权限
Restricted
默认的设置, 不允许任何script运行
Allsigned
只能运行经过数字证书签名的script
Unrestricted
运行本地的script不需要数字签名,但是运行从网络上下载的script就必须要有数字签名
RemoteSigned
允许所有的script运行
PowerShell基本命令
Get-ExecutionPolicy
查看当前策略
Set-ExecutionPolicy 参数(例:Unrestricted)
修改执行策略权限
-exec bypass
绕过禁止执行脚本策略
Import-Module .\PowerV ...
Empire工具基础用法
0x00 介绍 Empire 是一款类似Metasploit 的渗透测试框架,基于python 编写,Empire是一个纯粹的PowerShell 后开发代理,建立在密码安全通信和灵活的架构上。Empire 实现了无需powershell.exe 即可运行PowerShell 代理的功能,从键盘记录器到Mimikatz 等快速部署的后期开发模块,以及适应性通信以避开网络检测,所有这些都包含在以可用性为重点的框架中。
0x01 安装下载地址: https://github.com/EmpireProject/Empire
下载地址:https://github.com/interference-security/empire-web.git (web版)
下载git clone https://github.com/EmpireProject/Empire.git切换至工具目录setup下 ./install.sh出现setip comlete则安装成功 ./reset.sh
切换至主目录运行./empire,如果出现错误则使用pip安装模块即可若出现无pyd ...