内网渗透之Responder演练(下)

前情提要

承接上文,本文主要介绍了以下几点:

获取ntlmv1 hash并还原出ntlm hash

NTLM hash中继攻击入门

对抗responder:工具对抗、关闭协议、蜜罐检测的优势

获取NTLMv1 hash并还原nt hash

本次实验环境情况:

kali: 172.21.128.72
win7-A: 172.21.128.100
win7-B: 172.21.128.101

使用win7降级,获取V1进行测试

上文主要是讲了NTLM V2的窃取与破解,在实际情况中,NTLMv1 hash也是存在于winserver 2003、windows
xp上,而在win7上是默认关闭的,我们可以通过修改注册表的方式,使win7支持NTLM V1认证,由于NTLM
V1认证过程的特殊性,非常容易被破解并还原出NTLM HASH,需要说明的是,NTLM降级的情况一般不常见,除非在局域网内存在低于windows
Vista版本的windows机器,这里是为了方便做实验所以手动降级。

为破解NTLMv1 hash,我们还需要做一些准备,在“欺骗阶段”,所以我们需要将challenge固定下来,得出特定challenge的NTLMv1
hash,方便后续破解,这里我们需要修改responder.conf里边的challenge值为“1122334455667788”,然后再次开启responder(注意加上
–lm参数),此时收到的NTLMv1 hash就可以直接破解并还原出NTLM HASH。

实验步骤:

首先在将win7-A降级,管理员权限执行下列命令:

reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa\ /v lmcompatibilitylevel /t
REG_DWORD /d 2 /f
reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\ /v NtlmMinClientSec
/t REG_DWORD /d 536870912 /f
reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\ /v
RestrictSendingNTLMTraffic /t REG_DWORD /d 0 /f

修改responder配置文件:

开启responder,启动参数加上–
lm(如果报错可以尝试python2执行对应py脚本):

win7执行net use \\win-
test1\qq命令:

kali获取到NTLMv1
hash(如欺骗成功但是获取不到HASH,可尝试删除Responder.db再次尝试):

经查找相关资料发现,破解此格式的NTLMv1
HASH,本质上还是属于暴力破解,所以我们需要借助彩虹表来进行破解,当然自己生成彩虹表显得太过复杂,这里就不尝试重复造轮子了,我们可以通过一个在线网站(https://crack.sh/)来帮助破解,这个网站有很多收费的破解密码项目,但是破解NTLMv1
hash是免费的。

这里填入固定格式的值,然后填上你需要接收的邮箱:

一般几十秒就会收到破解成功的短信,短信内容包含破解之后的NTLM HASH值, 还原出的 NTLM hash 可用于PTH
攻击
:

为什么能破解NTLMv1 hash?

要了解破解原理,先来看加密过程(加密方式一):

  1. windows将NTLM Hash后面补5个字节0,共21字节。
  2. 将步骤1处理后的NTLM Hash分成3组7字节,每7个比特后面添加1比特0,组成3个8字节的DES密钥。
  3. 使用得到的3个密钥,分别对8字节的challenge进行3DES加密获得三组8字节密文,然后拼接共组成24字节的密文,这样就得到了NTLMv1 hash。

知道了其加密方式之后,由于challenge是固定的,所以可以建立从key到response的彩虹表,并在知道response的情况下获取key,破解跟机器的密码强度没有关系,且成功率几乎为100%。

需要说明的是,NTLMv1 hash有两种,对应两种加密方式,在上文中responder加入–
lm参数也是为了固定为加密方式一,这里简单说下加密方式二,加密方式二跟一最大的不同就是并不是完全用的server
challenge(也就是上文的1122334455667788)参与上边的运算,这就导致了生成的彩虹表不能使用,破解难度增加,responder不加–
lm参数的时候就是加密方式二,得出hash的叫 NTLMv1-SSP Hash (如下图)

responder加上–
lm参数:

responder不加–
lm参数:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rieC3CpE-1692615956951)(https://image.3001.net/images/20210305/1614932590_6041ea6e5c0333832589e.png!small)]

NTLM HASH中继攻击入门

https://blog.csdn.net/whatday/article/details/107698383

NTLM中继攻击已经被发现十多年了,要实现NTLM中继攻击,也需要先进行LLMNR/NBNS欺骗,这样,攻击机器就可以充当了中间人,本质上还是由于NTLM认证机制所导致的,且对于最新的NTLMv2认证任然有效,但这个过程并不是没有限制,对于工作组的机器来说,两台机器的密码需要一致才能成功,对于域用户来说,被欺骗用户(发起请求的用户)需要域管理员组里边的用户才可以,NTLM中继成功后的权限为被欺骗用户的权限。

流程图如下图:

准备阶段,我们需要改变responder.conf的设置,在这个环节,responder起到的作用仅仅是欺骗,所以我们需要将配置文件的SMB
server和HTTP
server选项从On改为Off(smbrelayx会启动相应端口),随后我们使用smbrelayx.py来进行中继攻击测试,在kali中,这个脚本在/usr/share/doc/python3-impacket/examples/文件夹下,可以通过
–help查看具体用法。

在实验阶段,首先开启responder:

由于仅仅是入门,这里使用smbrelayx进行实验,其中参数-h 指定目标主机,-c
给出要执行的命令:

在win7-B的机器上执行net use \\win-test\w进行测试,此时win7-B的NTLM
hash将会被kali中继到win7-A这台机器上,中继成功后执行whoami的命令。下列三个场景分别是win7-B上的机器登录不同账户后产生的NTLM
hash被中继的结果。

场景一:win7-B为域内普通用户,可以看到被拒绝了:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6agC6lPz-1692615956956)(https://image.3001.net/images/20210305/1614932676_6041eac4aca91fc0eaa03.png!small)]

场景二:WIN7-B为域控管理员,可以看到中继成功且为高权限:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6urWEKb7-1692615956958)(https://image.3001.net/images/20210305/1614932689_6041ead15306340ffea1e.png!small)]

场景三:将情况一的普通账户加入域管理员组中,然后再次尝试(可以看到中继成功):

如何应对?

既然responder如此危险,那么如何才能够确保内网安全呢?

抛开边界安全来说,可以从两个方面入手,一是将不必要的服务禁用,这是最保险的方式。二是内网中要有检测工具的手段,最好能够覆盖各个网段,这样才是一个比较安全的策略。

禁用不必要的服务

禁用NetBIOS服务

在《网络连接》中右击对应网卡选择属性,然后依次点击如下图所示:

禁用LLMNR

域内机器可以在域控机器上通过"设置组策略管理"关闭多播名称解析,非域内机器也可以通过本机的"设置组策略管理"关闭LLMNR。

开源工具

开源的工具不多,功能方面也比较简单,主要还是通过使用NBNS或者LLMNR协议,向多个随机主机名发起一个广播行为,如果多个回应均为同一IP地址就会产生警告。

一:Conveigh

运行效果:

二:VindicateTool

运行效果:

安全产品

对于安全产品来说,蜜罐是比较适合检测responder的产品。主要原因是要确保网络覆盖程度,而蜜罐本身的机制正好是要求覆盖于各个网段之中,发现告警后可以上报可疑机器的IP地址,以及对该IP地址的探测情况。后续可以人工研判并处理。

2615956964)]

安全产品

对于安全产品来说,蜜罐是比较适合检测responder的产品。主要原因是要确保网络覆盖程度,而蜜罐本身的机制正好是要求覆盖于各个网段之中,发现告警后可以上报可疑机器的IP地址,以及对该IP地址的探测情况。后续可以人工研判并处理。

学习网络安全技术的方法无非三种:

第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。

第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

第三种就是去找培训。

image.png

接下来,我会教你零基础入门快速入门上手网络安全。

网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。

第一阶段:基础准备 4周~6周

这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
image.png

第二阶段:web渗透

学习基础 时间:1周 ~ 2周:

① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
image.png

配置渗透环境 时间:3周 ~ 4周:

① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。

渗透实战操作 时间:约6周:

① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
image.png
以上就是入门阶段

第三阶段:进阶

已经入门并且找到工作之后又该怎么进阶?详情看下图
image.png

给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值