渗透实战-完整收集信息以扩展实战攻击面

admin 2022年12月1日11:27:08安全文章评论10 views4879字阅读16分15秒阅读模式

目录

0x00 前言0x01 外部_收集信息0x02 内部_收集信息0x03 总结

通过两个实战例子,分别以外部和内部为例,展示收集信息的重要性,通过收集完备信息,最大化扩展渗透攻击面

0x00 前言

距离上次分享文章已经过去了5个月,写这篇文章之前。我已经做了较多的渗透项目,也打了一些地级和省级市的红队项目。在此期间,让我感觉非常受用的技巧无非是对于信息的收集,不管是在前期打点,亦或是拿到shell后的横向,对于目标信息的掌握程度,很大层面决定了能打到多深,能打到多宽。由于自己技术受限,仍然停留在安服水平,因此文章主要以简单技巧分享为主。主要是分享自己在早期以及近期遇到的两个例子,也是较为简单的实战技术理论,并不是较为复杂的研究性分享,分别以外部和内部为例。
并且本文主要是说收集信息,而不是信息收集,希望加以区分。

0x01 外部_收集信息

这个例子是我以前众测的时候找到的一系列漏洞,主要成果就是通过日志泄露到Getshell。
该站点是Thinkphp的,但是做了Nginx反代,通过wappalyzer可以收集到站点指纹,通过路径报错,也可以判断出是TP站点,一般此时要么是3.x要么是5.x

渗透实战-完整收集信息以扩展实战攻击面

最后通过漏洞扫描工具ThinkphpGUI-1.2-SNAPSHOT发现存在Tp3.x日志泄露的问题
通过TPlogScan获取日志
python3 TPLogScan.py -u http://xx.xx.xx.xx -v 3 -p /Application/Runtime/Logs/Home/ -y 2021 -m 11 -d 1

渗透实战-完整收集信息以扩展实战攻击面
获取了若干日志后,就到了收集信息的重点,这里主要分享的实战理论就是

在收集信息中,一定要将所获得的信息和关键字关联,进行灵活筛选

所获得的信息,在这里就是指,我们获取的TP日志,回想一般日志会记录的东西,比如Sql语句,比如攻击流量,比如程序运行日志。
关键字,在这里就是指,我们经常关心的字段:password,username,passwd,user,Key,Token,Session,Cookie等
关联:将这些得到的信息和关键字关联,比如Sql语句中会出现对用户名称和密码的对比是否正确,会出现数据的添加删除等。
灵活筛选:根据现有信息,去优先选择我们需要获得的信息

  1. 如只有一个后台登录页面,当前最好的筛选是通过用户名密码的字段在大量的日志中去筛选password,username,passwd,user等关键字,尝试获取某个用户的账号密码,进入后台,去扩展自己的攻击面;

  2. 又或是此时已获得后台用户权限,想找到一个Sql注入打到shell或内网,此时应该以Insert,Delete,Update,Select,Where,Order By等关键字为主,去筛选查找;

  3. 或通过漏洞拿到了shell分但是数据库用户密码是加密的,此时还想继续获取数据分,呢么还是类似1的方式,筛选password,username,Admin,Administrator,root,system等高权限用户关键字,尝试获取在写入数据库前的加密明文,比如select username,password from users where password=md5('[email protected]')

  4. 等等系其他情况,灵活关联

我当时正处于第一种情况只有一个登录页面,此时立马去筛选关键字,在庞大的日志中,筛选出来了一条关于管理员用户admin的查询语句

渗透实战-完整收集信息以扩展实战攻击面
获取到了hash值,然后很幸运的是,cmd5有相关缓存,直接解了出来

渗透实战-完整收集信息以扩展实战攻击面
进入后台后,在上传处有对后缀的限制,有对内容的限制
此处我通过换行绕过后缀限制,脏数据绕过了对内容的限制,成功上传了php的shell

渗透实战-完整收集信息以扩展实战攻击面

渗透实战-完整收集信息以扩展实战攻击面

其实这些后续的bypass上传花费了我更长的事件,上述上传还需要一次特别的更名操作,才能被解析,但这里不是写Getshell的,而不是分享收集信息的实战理论,因此不多讲。这里主要就是跟大家啰嗦了下,在拿到仅限的大量无用信息中,一定要把此时自己获得的信息和关键字做匹配,做关联,减少在废物信息中的搜寻时间,最效率化利用当前的信息,去扩展自己的渗透攻击面

0x02 内部_收集信息

前期Shiro打点(我也很好奇,2022年了,还有shiro),特别小的内网,没任何东西打,只能拿数据分了。
尝试翻找各种数据库配置文件,可以根据数据库后缀文件名进行检索,比如yml,ini,conf,config等

渗透实战-完整收集信息以扩展实战攻击面

这个数据库里面数据很少,基本凑不够。
于是找到一个源码备份文件,虽然不懂Java,但是只要能收集信息的地方,我们一个都不能漏。在源码文件中,我们可以收集到的信息,往往有很多硬编码的信息,注释中的测试账号密码,泄露的token,api,accesskey等
即使你不会java,你也可以解压缩jar包,然后丢到IDEA中可查看源代码。或者使用Jd-Gui直接打开jar包也可以查看源代码

渗透实战---完整收集信息以扩展实战攻击面

发现jar包中打包进来了数据库配置文件,里面有一个内网的aliyun mysql数据库。没有太多的用户数据,但是发现了一些app_id,app_secret字段

渗透实战-完整收集信息以扩展实战攻击面
拿着通过这些关键字,我在源代码中检索,发现跟微信相关

渗透实战-完整收集信息以扩展实战攻击面

通过查询资料发现,app_id和app_secret是关于企业微信的,两个参数认证后可以获取Token,通过Token可以调用企业微信的各种API,比如将自己添加到企业微信用户中,获取企业微信部门人员列表等,具体利用可参考下面的文章
https://mp.weixin.qq.com/s/MyIUhkxmyw-msCPnhUi92A

这里我通过id和sercert认证获取Token中,由于不在白名单中,被拒绝了。

渗透实战---完整收集信息以扩展实战攻击面

此时我仍没有放弃,在数据库中继续检索关键词Token(sql语句检索列名或内容可参考百度学习),发现了token_cache的字段,翻译过来就是token缓存

渗透实战-完整收集信息以扩展实战攻击面

此时通过/cgi-bin/groups/get api验证Token是可用状态,后续的信息利用就不放出了,无非是获取了部门所有人员详细信息,以及提个严重漏洞罢了

渗透实战-完整收集信息以扩展实战攻击面

搞完数据库,我接着看源码,此时我没有立刻搜索文件内容,而是搜索整个jar包中的文件名,关键字如:Upload,OSS,Redis,Mysql,Access,Config等文件名,然后又通过关键字Accesskey,AccessID,Access_Key,Bucket搜索云的secret key。
通过文件名我找到了一个带有OSS名字的class

渗透实战-完整收集信息以扩展实战攻击面
通过该Class我又找到了一些存储配置的Class

渗透实战-完整收集信息以扩展实战攻击面
找到了两个阿里云 accesskey,一个七牛云的acesskey

渗透实战-完整收集信息以扩展实战攻击面
通过阿里云accesskey拿到一个OSS BUCKET 以及150多台的云主机

渗透实战---完整收集信息以扩展实战攻击面

0x03 总结

通过上述内网的两个例子,主要就是想将现有信息和关键字关联,灵活筛选。
简单的说,就是要根据当前获得信息的固有属性来与关键字做适配,什么环境该拥有什么属性,什么属性该适配哪种检索关键字以及检索方式。尽可能的做一个关联性假想。
本篇文章实质是实战技术案例分享,但是想透过两个特别简单的例子,来描述下自己心中对于收集信息,扩展攻击面的认知。基本是自我粗糙的拙见,如果能给各位师傅带来一点技巧的扩充帮助,也足够我欢喜了。

加微信进群领资料

渗透实战-完整收集信息以扩展实战攻击面

渗透实战-完整收集信息以扩展实战攻击面

关注公众号



回复“电子书”获取web渗透、CTF电子书:

回复“视频教程”获取渗透测试视频教程;  

回复“内网书籍”获取内网学习书籍;        

回复“CTF工具”获取渗透、CTF全套工具;

回复“内网渗透;获取内网渗透资料;

回复护网;获取护网学习资料 ;

回复python,获取python视频教程;

回复java,获取Java视频教程;

回复go,获取go视频教程


知识星球

渗透实战-完整收集信息以扩展实战攻击面


【Hacking藏经阁】知识星球致力于分享技术认知

1、技术方面。主攻渗透测试(web和内网)、CTF比赛、逆向、护网行动等;

400G渗透教学视频、80多本安全类电子书、50个渗透靶场(资料主要来自本人总结、以及学习过程中购买的课程)

2、认知方面。副业经营、人设IP打造,具体点公众号运营、抖*yin等自媒体运营(目前主要在运营两个平台4个号)。


如果你也想像我一样,不想35岁以后被动的去面试,那么加入星球我们一起成长。





渗透实战---完整收集信息以扩展实战攻击面




渗透实战系列


【渗透实战系列】50|- Log4j打点后与管理员斗智斗勇

【渗透实战系列】49|-实战某高校的一次挖矿病毒的应急处置

【渗透实战系列】|48-一次内网渗透

渗透实战系列】|47-记一次对某鱼骗子卖家的溯源

【渗透实战系列】|46-渗透测试:从Web到内网

【渗透实战系列】|45-记一次渗透实战-代码审计到getshell

【渗透实战系列】|44-记一次授权渗透实战(过程曲折,Java getshell)

【渗透实战系列】|43-某次通用型漏洞挖掘思路分享

【渗透实战系列】|42-防范诈骗,记一次帮助粉丝渗透黑入某盘诈骗的实战

【渗透实战系列】|41-记一次色*情app渗透测试

【渗透实战系列】|40-APP渗透测试步骤(环境、代理、抓包挖洞)

▶【渗透实战系列】|39-BC渗透的常见切入点(总结)

【渗透实战系列】|38-对某色情直播渗透

【渗透实战系列】|37-6年级小学生把学校的网站给搞了!

【渗透实战系列】|36-一次bc推广渗透实战

【渗透实战系列】|35-旁站信息泄露的dedecms站点渗透

【渗透实战系列】|34-如何用渗透思路分析网贷诈骗链

【渗透实战系列】|33-App渗透 ,由sql注入、绕过人脸识别、成功登录APP

【渗透实战系列】|32-FOFA寻找漏洞,绕过杀软拿下目标站

【渗透实战系列】|31-记一次对学校的渗透测试

【渗透实战系列】|30-从SQL注入渗透内网(渗透的本质就是信息搜集)

【渗透实战系列】|29-实战|对某勒索APP的Getshell

【渗透实战系列】|28-我是如何拿下BC站的服务器

【渗透实战系列】|27-对钓鱼诈骗网站的渗透测试(成功获取管理员真实IP)

【渗透实战系列】|26一记某cms审计过程(步骤详细)

【渗透实战系列】|25一次从 APP 逆向到 Getshell 的过程

【渗透实战系列】|24-针对CMS的SQL注入漏洞的代码审计思路和方法

【渗透实战系列】|23-某菠菜网站渗透实战

【渗透实战系列】|22-渗透系列之打击彩票站

【渗透实战系列】|21一次理财杀猪盘渗透测试案例

【渗透实战系列】|20-渗透直播网站

【渗透实战系列】|19-杀猪盘渗透测试

【渗透实战系列】|18-手动拿学校站点 得到上万人的信息(漏洞已提交)

【渗透实战系列】|17-巧用fofa对目标网站进行getshell

【渗透实战系列】|16-裸聊APP渗透测试

【渗透实战系列】|15-博彩网站(APP)渗透的常见切入点

【渗透实战系列】|14-对诈骗(杀猪盘)网站的渗透测试

【渗透实战系列】|13-waf绕过拿下赌博网站

【渗透实战系列】|12 -渗透实战, 被骗4000花呗背后的骗局

【渗透实战系列】|11 - 赌博站人人得而诛之

【渗透实战系列】|10 - 记某色X商城支付逻辑漏洞的白嫖(修改价格提交订单)

【渗透实战系列】|9-对境外网站开展的一次web渗透测试(非常详细,适合打战练手)

【渗透实战系列】|8-记一次渗透测试从XSS到Getshell过程(详细到无语)

【渗透实战系列】|7-记一次理财杀猪盘渗透测试案例

【渗透实战系列】|6- BC杀猪盘渗透一条龙

【渗透实战系列】|5-记一次内衣网站渗透测试

【渗透实战系列】|4-看我如何拿下BC站的服务器

【渗透实战系列】|3-一次简单的渗透

【渗透实战系列】|2-记一次后门爆破到提权实战案例

【渗透实战系列】|1一次对跨境赌博类APP的渗透实战(getshell并获得全部数据)

渗透实战-完整收集信息以扩展实战攻击面

    

长按-识别-关注

渗透实战-完整收集信息以扩展实战攻击面

Hacking黑白红

一个专注信息安全技术的学习平台

渗透实战-完整收集信息以扩展实战攻击面

点分享

渗透实战-完整收集信息以扩展实战攻击面

点收藏

渗透实战-完整收集信息以扩展实战攻击面

点点赞

渗透实战-完整收集信息以扩展实战攻击面

点在看

原文始发于微信公众号(Hacking黑白红):渗透实战---完整收集信息以扩展实战攻击面

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月1日11:27:08
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  渗透实战-完整收集信息以扩展实战攻击面 http://cn-sec.com/archives/1436665.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: