新闻中心

了解更多网络安全运营信息

当前位置:首页 > 新闻中心 > 行业新闻

内网安全(1)---信息收集

分类:行业新闻    时间:2025-03-01 12:00:12    阅读:366

大家好,这里是中泊研团队的 内网渗透 系列文章,对于本文的这些技术分享,都是团队自行搭建的环境进行操作的。

特此声明:本文所涉及的任何技术、信息或工具,仅供学习和参考之用。请勿利用本文提供的信息从事任何违法活动或不当行为。任何因使用本文所提供的信息或工具而导致的损失、后果或不良影响,均由使用者个人承担责任,与本文作者无关。

当我们通过webshell或其它方式拿下一台机器,并且存在内网环境,这个时候就在准备进行内网渗透,而在内网渗透之前需要对本地机器进行信息收集,才能够更好的进行内网渗透。信息搜集越多,对内网越了解,才能在内网渗透中思路越宽广,因为渗透的本质其实就是信息收集,而攻防的体系是知识点的串联。

实验环境:攻击机 == kali-linux+cobaltstrike   

假设我们已经获取到 zby.com 域里的 win7 主机的控制权限当进入内网后,想要对当前服务器进行深层次的内网渗透,那么我们就需知道当前机器所在的环境是  还是 作组 ,因为两种环境的攻击手法不同,所以需要根据不同的环境来做不同的处理!

通常的判断分为三种。

——对当前主机角色的判断。

——对当前主机所处网络环境的拓扑结构进行分析和判断。

——对当前机器所处位置区域的判断。

判断是否在域内

<1># 查看系统信息
systeminfo


图片

通过查看系统详细信息我们发现域显示了⼀个域名 zby.com ,这就代表当前机器是一台域内机器。

在工作组环境的机器只会显示出 WORKGROUP

图片

<2># 查看网络配置信息:
ipconfig /all

图片

注:一般只有域机器才会有域名显示,而在工作组下显示的是空

图片

<3># 查看当前登录域及域⽤户
net config workstation

图片

通过执行命令后发现 作站域 会显示出当前的域叫 zby,而工作组则只会显示出:WORKGROUP

图片

<4># 查看域内时间
net time /domain

通过执行查看域内时间命令后有三种情况:

(1) 存在域,当前用户不是域用户

图片

(2) 存在域、当前用户是域用户:

图片

(3) 不存在域

图片

本机信息搜集

通过以上操作判断出是域或工作组后,我们下一步就可以对当前机器进行信息收集了

查看操作系统和版本信息

systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"   #  中文版系统
systeminfo | findstr /B /C:"OS Nmae" /C:"OS Version" #  英文版系统


图片

知道了当前系统是 Windows 7 旗舰版 后,根据用户权限判断,若是要提权SYSTEM 或者其它高权限,那么我们就可以针对性的去搜集 Windows 7 旗舰版 的提权EXP。

查看处理器架构

通过查看处理器架构,我们就可以知道当前主机可以运行什么软件,因为后续在内网渗透中会用到很多工具,而这些工具所需架构并不一样,所以就要考虑到兼容性的问题,这也是我们搜集信息的目的之一。

echo %PROCESSOR_ARCHITECTURE%


图片

查看安装的软件及版本、路径

通过搜集当前本机安装的软件及应用,我们就知道当前主机的使用情况,比如某个软件有一些溢出、提权漏洞、以及利用一些软件进行 DLL 劫持提权等


wmic product get name,version


图片


查询本机服务信息


# 列出所有服务的简要信息,包括服务名称、状态和显示名称:wmic service list brief


图片


询进程列表


查看当前进程列表和软件进程
 tasklist


图片


# 查看当前进程列表对应的用户身份
 tasklist /v


图片


      通过执行此命令我们可以知道每个进程对应的用户,是哪个用户启动的这个软件,但是这条命令只能看到同级别或者权限低的用户的进程。


# 查看当前进程是否有杀毒软件(AV)
 tasklist /svc


图片


然后通过进程分析查询是否有杀毒软件:


图片


查看启动程序信息


通过查看启动程序信息可以知道当前机器开机的时候会运行哪些软件,这也可以利用自启动劫持。


wmic startup get command,caption


图片


查看主机开机时间

通过查看本机的开机时间,我们就能判断这台机器的管理员是不是经常关机,是不是经常在登录这台机器。


# 查看工作站的统计信息,包括发送和接收的数据包数量、错误数量等信息‌net statistics workstation


图片


查看计划任务

通过查看本机计划任务我们就能知道当前机器上在哪段时间会运行哪些软件,我们就可以利用这一点来做定时任务劫持。


# 显示本机所有任务计划信息‌。schtasks /query /fo LIST /v


图片

  

查看用户


# 列举用户信息
net user


图片


# 查看当前在线的用户query user || qwinsta


图片


查看本机端口开放情况


netstat -ano


图片


查询补丁信息


通过查看目标补丁情况我们就可以知道当前机器上打了哪些补丁,那么我们就可以对没打补丁的某个漏洞进行利用。


# 查看补丁的名称、描述、ID、安装时间
  wmic qfe get Caption,Description,HotFixID,InstalledOn


图片


查询路由表及所有可用接口的ARP缓冲表


通过查询路由表及所有可用接口的ARP缓冲表,我们就可以知道当前网络的分布情况,内网中是否有其它机器


# 显示当前路由表
  route print


图片


# 显示当前主机ARP缓存表arp -a


图片


查看防火墙配置


netsh firewall show config


图片


防火墙配置信息:


# win 2003及之前的版本,运⾏指定程序全部连接:
netsh firewall add allowedprogram c:\nc.exe "allow nc" enable

# win 2003之后的版本⽤这条:
netsh advfirewall firewall add rule name="pass nc" dir=in action=allow
program="C:\nc.exe"

# ⾃定义防⽕墙⽇志储存位置
netsh advfirewall set currentprofile logging filename "C:\windows\temp\fw.log"


# 允许 3389 端⼝放⾏,命令如下
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=inlocalport=3389 action=allow

# 允许指定程序连出,命令如下

netsh advfirewall firewall add rule name="Allow nc" dir=out action=allow program="C:
\nc.exe"


关闭防火墙:


# win2003及之前的版本:
netsh firewall set opmode disable

# win2003之后的版本:
netsh advfirewall set allprofiles state off


查询远程桌面连接服务


查看远程桌面服务是否开启, 以下是不同Windows版本中, cmd 中使用命令查询注册表的语句:


# Windows 7 / Windows 8 / Windows 10 / Windows 11:
# Windows Server 2008 / 2012 / 2016 / 2019:
# Windows XP 上,远程桌面设置可能有所不同
reg query "HKLM\System\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
如果返回值为 0x0,表示远程桌面连接被允许。
如果返回值为 0x1,表示远程桌面连接被禁用。


# 如果需要检查端口是否打开并改变,可以使用 netstat 命令来确认
netstat -an | find "3389"


域内信息搜集


搜集完本机的配置信息、IP信息、网卡信息和补丁信息后,我们接下来就要搜集域内的信息了,如:域用户、域管理员、域控制器等信息。


获取域SID

简单提一下关于获取域sid的作用:它不仅可以用于标识用户或系统的身份,还可以用于实现安全策略和控制访问权限。通过为不同的用户或系统分配不同的SID,系统可以更加精细地控制对敏感资源的访问...


whoami /all


图片


查看域用户的详细信息


可以利用/domain命令判断是否存在域。可以联合net user 用户 /domain查询用户的详细信息,且判断是否存在域,不存在域会报错。假如我们要查询 pdf 这个域用户的信息,我们就可以使用


net user pdf /domain


图片


查看域内所有用户组列表


net group /domain


图片


查询域管理员列表


net group "domain admins" /domain


图片


可以看到当前域只有一个域管理员:administrator


查看登录本机的域管理员


net localgroup administrators /domain


图片


查看主域控


# 列出指定域(zby.com)的所有域控制器(DC)的名称。nltest /dclist:yourdomain.com


图片

    

查看域控列表

    

一个域可以有多个域控制器,通过查看域控制器列表我们就可以得到域控制器对应的机器名是多少,如果想要知道它的 IP 是多少,我们只需要 Ping 它的机器名即可得到域控制器的 IP 地址。


net group "Domain Controllers" /domain


图片


查询域信任信息


通过查询域信任信息我们就可以知道当前有多少个域,域名是多少


nltest /domain_trusts


图片


查询域密码信息


通过查询域密码信息我们就可以知道当前域用户多久修改一次密码,密码策略是多少,我们就可以根据密码策略来制定一份密码字典(毕竟随意使用字典会很浪费时间)。


net accounts /domain


图片


扫描网段


演示工具nmap


关于利用nmap扫描首先可以通过webshell上传nmap到目标主机


#扫描内网有多少主机在线
nmap -sP

#端口扫描
nmap ip


注:在上传不了nmap的情况下也可以通过代理不上传远程使用nmap


比如利用CS代理+proxychains4+nmap进行内网扫描:CS开启socks4代理(只能使用tcp协议),所以使用nmap时要使用-sT命令选择tcp协议,要使用-Pn不使用ICMP的ping确认主机存活。(我使用的是攻击机是kali)


<1>CS开启socks协议


图片


<2>在kali(linux)中打开Proxychains配置文件,在最后一行填上ip:port (注:在cs中是socks4,在攻击机kali上就选proxychains4相对应)


vim /etc/proxychains4.conf


图片


<3>在攻击机kali(linux上进行nmap代理扫描


proxychains4 nmap -sT-Pn 10.0.0.200



图片

 分块(f)、时间延迟(delay)、指定已知端口扫描


当然了还有很多优秀的网段扫描工具,我就不一一列举了,大家可以自己抽空研究,那么今天的内网信息收集就先讲到这,我们下一期,再见!