File tree Expand file tree Collapse file tree 3 files changed +27
-3
lines changed
Expand file tree Collapse file tree 3 files changed +27
-3
lines changed Original file line number Diff line number Diff line change 3030
3131利用` TemplatesImpl ` 类比较鸡肋,需要服务端开启特殊参数
3232
33- 不出网的利用方式有一种` BasicDataSource ` 配合` BCEL ` 可实现不出网 ` RCE `
33+ 不出网的利用方式有一种` BasicDataSource ` 配合` BCEL ` 可实现 ` RCE `
3434
3535另外某个版本之后支持` $ref ` 的功能,也可以构造一些Payload
3636
3737
3838
39+ - 是否存在不出网的Fastjson利用方式(★★★)
40+
41+ 第一种是` TemplatesImpl ` 类加载字节码做到不出网利用,但需要开启特殊参数实战鸡肋
42+
43+ 第二种方式是服务端存在在` tomcat-dbcp.jar ` 情况下,使用` BasicDataSource ` 配合` BCEL ` 可实现不出网` RCE `
44+
45+
46+
3947- 谈谈1.2.47版本之前的绕过(★★★)
4048
41- 首先是利用解析问题可以加括号或大写L绕过低版本,高版本利用了哈希黑名单,之所以要哈希是因为防止黑客进行分析。但黑名单还是被破解了,有师傅找到可以绕过了类。在1.2.47版本中利用缓存绕过
49+ 首先是利用解析问题可以加括号或大写L绕过低版本,高版本利用了哈希黑名单,之所以要哈希是因为防止黑客进行分析。但黑名单还是被破解了,有师傅找到可以绕过了类。在1.2.47版本中利用缓存绕过
50+
51+
52+
53+ - Fastjson应该如何探测(★★)
54+
55+ 使用` dnslog ` 做检测是最常见的方式,利用` java.net.Inet[4][6]Address ` 或` java.net.InetSocketAddress ` 或` java.net.URL ` 类,之所以使用这三个因为不在黑名单中,可以直接检测
56+
57+ 除了这种方式,还可以自行实现虚假的` JNDI Server ` 作为反连平台,用` JdbcRowSetImpl ` 这样的` Payload ` 来触发
58+
59+ 如果不能出网,可以结合不出网的利用方式和中间件的回显手段,执行无害命令检测,或利用报错回显
Original file line number Diff line number Diff line change 22
33- Java反射做了什么事情(★)
44
5- 反射是根据字节码获得类信息或调用方法。从开发者角度来讲,反射最大的意义是提高程序的灵活性。Java本身是静态语言,但反射特性允许运行时动态修改类定义和属性等,达到了静态的效果
5+ 反射是根据字节码获得类信息或调用方法。从开发者角度来讲,反射最大的意义是提高程序的灵活性。Java本身是静态语言,但反射特性允许运行时动态修改类定义和属性等,达到了动态的效果
66
77
88
Original file line number Diff line number Diff line change 11## Shiro
22
3+ - 怎样检测目标框架使用了Shiro(★)
4+
5+ 直接看请求响应中是否有` rememberMe=deleteMe ` 这样的` Cookie `
6+
7+
8+
39- Shiro反序列化怎么检测key(★★★)
410
511实例化一个` SimplePrincipalCollection ` 遍历key列表进行AES加密,然后加入到` Cookie ` 的` rememberMe ` 字段中发送,如果响应头的` Set-Cookie ` 字段包含` rememberMe=deleteMe ` 说明不是该密钥,如果什么都不返回,说明当前key是正确的key。实际中可能需要多次这样的请求来确认key
You can’t perform that action at this time.
0 commit comments