目录
基本信息收集
网络信息收集
用户信息收集
相关用户收集操作命令
凭证信息收集操作
探针主机域控架构服务操作
附上一张课上的照片,其中的DMZ区域,官方解释为又称之为非军事化区,他是为了解决安装防火墙之后外部网络的访问用户不可以访问内部网络服务器的问题,热设立的一个非安全系统与安全系统之间的缓冲区。
对于这张图来说,就是把不得不放在外网上的业务、服务器放在DMZ区域,而DMZ区域还和内网之间存在着一个防火墙,所以这就加大了当我们打下DMZ区域(例如图中的web服务器),想要再去攻下内网中的服务器难度会变大(文件、数据库、企业以及某些财务办公电脑等)。
了解下面的几个名词:局域网、工作组、域环境、活动目录AD、域控制器DC
局域网:是指在某一区域内由多台计算机互联成的计算机组,一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。
工作组:简单来说就像是我们的家庭中的网络、学校中的网络等,存在着很多的用户、使用者,没有上下等级之分。
域环境:不同于工作组,相比于工作组而言,域环境更大,其中存在着一个管理者,它可以进行发相关的命令等。(之后会介绍如何区分工作组和域环境)
活动目录AD:是微软所提供的目录服务(查询,身份验证),活动目录的核心包含了活动目录数据库,在活动目录数据库中包含了域中所有的对象(用户,计算机,组…),活动目录(Active Directory)是面向Windows Standard Server、Windows Enterprise Server 以及Windows Datacenter Server的目录服务。其作用:
域控制器DC:“域控制器是指在“域”模式下,至少有一台服务器负责每一台联入网络的电脑和用户的验证工作,相当于一个单位的门卫一样,称为“域控制器(Domain Controller,简写为DC)”
AD域控制器只在win server系统做吗?LINUX可以吗?
回答:linux上也有相应的活动目录,不过要安装LDAP环境,一般企业很少会用LDAP来管理,因为它功能上不及域强大,而且用linux来管理的话,要求技术人员门槛也比较高,个人认为linux还是比较适合做服务器一点。
下面用一个图来解释整个过程。
这里是一个单域,域控制器(DC)它的ip地址是192.168.3.21,可以清楚的看到图中的所有的服务器都在一个网段中,也就是192.168.3.0/24这个网段,那么我们可以看到在这个域中存在着文件服务器、数据库服务器、web服务器以及两个PC(分别是marry和jack)。我们可以看到web服务器存在两个地址(192.168.3.32和192.168.230.131)一个是对外的,另一个是面向内网的。看到下面存在着一个攻击机(192.168.230.133)可见他和web服务器在一个网段中,也就是攻击拿下了web服务器,之后便是借助web服务器(因为他是可以访问内网的)攻下域控制器DC.
主要包括版本、补丁、服务、任务、防护等等。
旨在了解当前服务器的计算机基本信息,为后续判断服务器的扮演角色、网络环境做准备
systeminfo 详细信息(操作系统版本、补丁编号)
net start 启动的服务
tasklist 进程列表
schtasks 计划任务
自在了解当前服务器的网络接口信息,为判断当前角色,功能、网络架构做准备
ipconfig /all 判断存在域-dns
net view /domain 判断是否存在域
net time /domain 判断主域
netstat -ano 当前网络端口开放
nslookup 域名 追踪来源地址
其实在这里就可以判断是工作组还是域环境;
当存在域环境的时候,我们使用的这个ipconfig -all 命令,就可以看到有主DNS后缀。
这个回显的是DOG就说明存在着域。
上面我们执行net time /domain之后回显的信息后面存在着god.org。这个就是之前我们看到的主DNS后缀 ,每一台计算机的全名=计算机名+主DNS后缀名。所以我们就拿到了一台计算机的名字,之后便可以通过nslookp来追踪下该计算机的ip地址。
也可以使用ping命令来查看该计算机的ip地址。
旨在了解当前计算机或域环境下的用户及用户组的信息,便于后期利用平局进行测试
系统默认常见用户身份:
Domain Admins:域管理员(默认对域控制器有完全控制权)
Domain Computers:域内机器
Domain Controllers:域控制器
Domain Guest:域访客,权限低
Domain User:域用户
Enterprise Admins:企业系统管理员用户(默认对域控制器有完全控制权)
whoami /all 用户权限
net config workstation 登录信息
net user 本地用户
net localgroup 本地用户组
net user /domain 获取域用户信息
net group /domain 获取域用户组信息
wmic useraccount get /all 涉及域用户详细信息
net group "Domain Admins" /domain 查询管理员账户
net group "Enterprise Admins" /domain 查询管理员用户组
net group "Domain Controllers" /domain 查询域控制器
然而在域中可以看到有webadmin。
查看域用户的详细信息。
旨在收集各种密文、明文、口令等,为后续横向渗透做好测试准备。
计算机用户HASH,明文获取(mimikatz-win、mimipenguin-linux)两个工具的下载地址已经放在下面:
GitHub - gentilkiwi/mimikatz: A little tool to play with Windows security
GitHub - huntergregal/mimipenguin: A tool to dump the login password from the current linux user
要想使用mimikatz这个工具,就要先获取到权限,先拿到web服务器的权限,之后在通过提权拿到管理员的权限,之后才能去使用该工具。在使用这个工具的时候,要使用下面的两条命令:
privilege::debug
sekurlsa::logonpasswords
计算机各种协议服务口令获取-LaZagne(all)、XenArmor(win)
其中的工具LaZagne是全系统通杀的。下载地址https://github.com/AlessandroZ/LaZagne
用法也是很简单,直接拖进cmd窗口运行就好了。上面的图就可以看到工具寻找到的密码。该工具是免费的,功能比较少,但是支持所有系统。
然而下面的这个工具是收费的,功能也比较好。
主要收集以下信息:
为后续横向思路做准备,针对应用、协议等各类攻击手段
探针域控制器名以及地址信息
net time /domain nslookup ping
探针域内存活主机以及地址信息
nbtscan 192.168.1.0/24 第三方工具(老牌工具)
for /L %I in(1,1,254) DO @ping -w 1 -n 1 192.168.3.%I |findst "TTL=" 自带内部命令
(自带内部命令,不用免杀,缺点,显示内容没有那么多,只有目标的地址)
nmap masscan 第三方Powershell脚本nishang empire等
#导入模块nishang
Import-Moddule .\nishang.psml
初始第一次使用,要设置一下执行策略
#设置执行策略
Set-ExecutionPolicy RemoteSinged
#获取模块nishang的命令函数
Get-command -Module nishang
#获取常规计算机信息
Get-Infirmation
#其他功能:删除补丁、反弹shell、凭据获取等
可见第一次使用在导入模块的时候,显示无法加载,那么就要使用 #设置执行策略,Y之后再去导入模块。
这个nishang里面就集成了mimikatz。
#获取常规计算机信息
Get-Information
#端口扫描
Invoke-PortScan -StartAddress 192.168.3.1 -EndAddress 192.168.3.100 -ResolveHost -ScanPort
利用开放端口服务以及计算机名判断
核心业务机器: