标题主要是针对安全人员,如果针对是开发人员的话,应该是 如何快速从众多jar中找到目标类?
在编写Java相关中间件或者CMS的POC/EXP时一般都会依赖它们的某个jar,但它们的jar往往非常多,并且会分散在各个目录下,那么如何快速找到它们呢?
0x01
以前的方法
以前我的方法是把所有的jar复制到一个目录下,然后把它们导入到IDEA中,最后使用IDEA搜索。例如最近在写的一个Weblogic漏洞的POC,编译时提示找不到weblogic.work.ExecuteThread,这时就可以使用该方法搜索到它在wlthin3client.jar中,然后将其引入问题解决。
不过细想,需要以下步骤:
-
新建目录
-
复制所有jar到目录下
-
打开IDEA
-
将所有jar导入IDEA
-
在IDEA中搜索目标类
这还是稍微有点繁琐了,那能不能更加轻便快速地找到我们需要的类呢?下面通过编程来优雅地给大家省几秒钟。
0x02
编写代码
我们要实现的是需提供类名,和jar所在目录就可搜索的小工具,它支持完整类名搜索,也支持通配符。具体如何实现,请参考我代码中的注释和提供的参考文章链接。
使用方法:
java -jar FindClassInJar.jar <ClassName> <JarDir>
PS:大家可自行编译,若需要我编译好的,请公众号后台回复“SearchClassInJar”获取下载地址!
0x03
演示效果
我们还是来找Weblogic下weblogic.work.ExecuteThread类所在的jar。命令行下运行我们写好的程序,指定要搜索的类名和weblogic安装目录即可。可以有以下三种方式搜索。
0x04
参考文章
-
https://jdkleo.iteye.com/blog/2392642
-
https://lihong11.iteye.com/blog/1936694
本文始发于微信公众号(回忆飘如雪):【第14周】如何快速找到POC/EXP依赖的jar?
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论