渗透测试内网环境分析

什么是内网渗透

在拿到webshell/meterpreter/beacon的时候,想办法获得系统信息拿到系统权限,进入到网络系统内部之 后收集内部网络的各种信息,获取内部网络有价值的人员、资产信息。

内网渗透的第一步,内网信息收集

内网外网简介

内网外网概念

内网

  • 内网又称局域网(Local Area Network,LAN),是指在某一区域内由多台计算机以及网络设备构成的网络,比如校园网、政府网等,一般方圆几公里。

  • 我们常说的内网,从字面意思上来讲是区别于外网的,也就是说内网一般是用于局域网内部的计算机之间的互相通信,如果需要访问Internet,需要借助外网。

外网

  • 外网也被称为广域网(WAN),是连接不同地区局域网或城域网计算机通信的远程网。

  • 所覆盖的范围从几十公里到几千公里,它能连接多个地区、城市和国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。

  • 广域网并不等同于互联网。

内网与外网区别

  1. 内网和外网的覆盖范围不一样,内网通常是一个学校、一个医院的网络,外网通常指Internet网;
  2. 内网一般是用于局域网内部的计算机之间的互相通信,如果需要访问Internet,需要借助外网,一般可以使用NAT技术实现内网访问外网;
  3. 内网的IP地址一般使用私有地址,例如192.168.1.0/24;外网需要使用公网地址

image-20230819165404992

公网IP与私网IP地址

在 A、B、C 分类地址,实际上有分公有 IP 地址和 私有 IP 地址。

20200808193448365

平时我们办公室、家里、学校用的 IP 地址,一般都是私有 IP 地址。因为这些地址允许组织内部的 IT 人员自己管理、自己分配,而且可以重复。因此,你学校的某个私有 IP 地址和我学校的可以是一样的。

就像每个小区都有自己的楼编号和门牌号,你小区家可以叫 1 栋 101 号,我小区家也可以叫 1 栋 101,没有任何问题。但一旦出了小区,就需要带上中山路666 号(公网 IP 地址),是国家统一分配的,不能两个小区都叫中山路 666。

所以,公有 IP 地址是有个组织统一分配的,假设你要开一个博客网站,那么你就需要去申请购买一个公有 IP,这样全世界的人才能访问。并且公有 IP 地址基本上要在整个互联网范围内保持唯一。

NAT网络地址转换

IPv4 的地址是非常紧缺的,在前面我们也提到可以通过无分类地址来减缓 IPv4 地址耗尽的速度,但是互联网的用户增速是非常惊人的,所以 IPv4 地址依然有被耗尽的危险。

于是,提出了一个种网络地址转换 NAT 的方法,再次缓解了 IPv4 地址耗尽的问题。

简单的来说 NAT 就是在同个公司、家庭、教室内的主机对外部通信时,把私有 IP 地址转换成公有 IP 地址。

640-163825283931373

那不是 N 个 私有 IP 地址,你就要 N 个公有 IP 地址?
这怎么就缓解了 IPv4 地址耗尽的问题?
这不瞎扯吗?

确实是,普通的 NAT 转换没什么意义。

由于绝大多数的网络应用都是使用传输层协议 TCP 或 UDP 来传输数据的。

因此,可以把 IP 地址 + 端口号一起进行转换。

这样,就用一个全球 IP 地址就可以了,这种转换技术就叫网络地址与端口转换 NAPT

很抽象?来,看下面的图解就能瞬间明白了

  • NAPT

640-163825311281575

图中有两个客户端 192.168.1.10 和 192.168.1.11 同时与服务器 183.232.231.172 进行通信,并且这两个客户端的本地端口都是 1025。

此时,两个私有 IP 地址都转换 IP 地址为公有地址 120.229.175.121,但是以不同的端口号作为区分

于是,生成一个 NAPT 路由器的转换表,就可以正确地转换地址跟端口的组合,令客户端 A、B 能同时与服务器之间进行通信。

这种转换表在 NAT 路由器上自动生成。例如,在 TCP 的情况下,建立 TCP 连接首次握手时的 SYN 包一经发出,就会生成这个表。而后又随着收到关闭连接时发出 FIN 包的确认应答从表中被删除。

Windows工作组

工作组简介

工作组(Work Group):是最常见最简单最普通的资源管理模式,就是将不同的电脑按功能分别列入不同的组中,以方便管理。

  1. 默认情况下所有计算机都处在名为 WORKGROUP 的工作组中
  2. 工作组资源管理模式适合于网络中计算机不多,对管理要求不严格的情况。
  3. 它的建立步骤简单,使用起来也很好上手。大部分中小公司都采取工作组的方式对资源进行权限分配和目录共享。
  4. 相同组中的不同用户通过对方主机的用户名和密码可以查看对方共享的文件夹,默认共享的是 Users 目录。
  5. 不同组的不同用户通过对方主机的用户名和密码也可以查看对方共享的文件夹。
  6. 所以工作组并不存在真正的集中管理作用,工作组里的所有计算机都是对等的,也就是没有服务器和客户机之分的。

image-20230821182917543

工作组的加入和退出

  • 工作组的加入
  1. 右击桌面上的“计算机”,在弹出的菜单出选择“属性”,点击“更改设置”,“更改”,

  2. 在“计算机名”一栏中键入你想好的名称,在“工作组”一栏中键入你想加入的工作组名称。

  3. 如果你输入的工作组名称网络中没有,那么相当于新建了一个工作组,当然暂时只有你的电脑在组内。

  4. 单击“确定”按钮后,Windows提示需要重新启动,重新启动之后,再进入“网络”就可以看到你所加入的工作组成员了

  • 工作组的退出
  1. 只要将工作组名称改动即可。不过在网上别人照样可以访问你的共享资源。你也可以随便加入同一网络上的任何其它工作组。

  2. “工作组”就像一个可以自由进入和退出的“社团”,方便同一组的计算机互相访问。

  • 工作组的访问

文件夹–>网络,就可以查看到我们工作组中的其他计算机了,当你要访问某台计算机时,点击它,然后输入该主机的用户名和密码即可看到该主机共享的文件
夹。

  • 工作组的优点

在一个网络内,可能有上百台电脑,如果这些电脑不进行分组,都列在“网上邻居”中,电脑无规则的排列为我们访问资源带来不方便。为了解决这一问题,Windows98操作系统之后就引用了“工作组”这个概念,将不同的电脑按功能分别列入不同的组中,如软件部的电脑都列入“软件部”工作组中,网络部的电脑都列入“网络部”工作组中。你要访问某个部门的资源,就在“网上邻居”里找到那个部门的工作组名,双击就可以看到那个部门的电脑了。计算机通过工作组进行分类,使得我们访问资源更加具有层次化。工作组情况下资源可以相当随机和灵活的分布,更方便资源共享,管理员只需要实施相当低级的维护。

  • 工作组的缺点
  1. 缺乏集中管理与控制的机制

  2. 没有集中的统一帐户管理

  3. 没有对资源实施更加高效率的集中管理

  4. 没有实施工作站的有效配置和安全性严密控制

  5. 只适合小规模用户的使用

基于以上缺点,当计算机数量比较多,大型企业中网络规模大,需要统一的管理和集中的身份验证,并且能够给用户提供方便的搜索和使用网络资源的方式,工作组的组织形式就不合适了,于是域就出现了

Windows域环境

域简介

域(domain):域是一个有安全边界的计算机集合( 安全边界,意思是在两个域中,一个域中的用户无法访问另一个域中的资源);域内资源由一台域控制器(Domain Controller,DC)集中管理,用户名和密码是放在域控制器去验证的。

将网络中多台计算机逻辑上组织到一起,进行集中管理,这种区别于工作组的逻辑环境叫做域,域是组织与存储资源的核心管理单元,在域中,至少有一台域控制器,域控制器中保存着整个域的用户帐号和安全数据库。

可以简单的把域理解成升级版的“工作组”,相比工作组而言,它有一个更加严格的安全管理控制机制,如果你想访问域内的资源,就必须拥有一个合法的身份登陆到该域中,而你对该域内的资源拥有什么样的权限,还需要取决于你在该域中的用户身份。

域在不同系统与软件中含义有所不同:域既是Windows网络操作系统的逻辑组织单元,也是Internet的逻辑组织单元,在Windows网络操作系统中,域是安全边界。

域网络的功能和特点

  1. 权限集中管理

域环境中,所有的网络资源,包括用户均是在域控制器上维护的,便于集中管理,所有用户只要登入到域,均能在域内进行身份验证,管理人员可以较好的管理计算机资源,管理网络的成本大大降低;同时在域环境中也可以防止企业员工在域成员主机上违规安装软件,增强客户端安全性,减少客户端故障,降低维护成本。

  1. 便捷的资源访问

能够很容易地定位到域中的资源。用户依次登录就可以访问整个网络资源,集中地身份验证。也可由管理员指派登陆脚本映射,用户登录后就可以像使用本地盘符一样,使用网络上的资源,且不需要再次输入密码。

  1. 可扩展性

既可以适用于几十台计算机的小规模网络,也可以用于跨国公司

  1. 保密性加强

有利于企业的一些保密资料的管理,可以单独对资源进行权限控制,允许或拒绝特定的域账户对资源的请求。

域成员计算机在登录的时候可以选择登录到域中或此计算机,登陆到域中的时候,身份验证是采用Kerberos协议在域控制器上进行的,登陆到此计算机则是通过SAM来进行NTLM验证的。

默认情况下,域用户可以登录到域中所有的工作站,不包括域控制器,管理员也可以指定具体的计算机,域用户信息保存在活动目录中

基于以上原因,很多企业的内网均会采用域环境,所以作为一名合格的渗透测试人员,域渗透的常规思路和技巧要熟练掌握。

工作组和域的区别

工作组是对等网络,域是B/S架构,集中式管理

image-20230821193406383

域控DC

域控DC (Domain Control),在域架构中域控是用来管理所有客户端的服务器,它负责每一台联入的电脑和用户的验证工作,域内电脑如果想互相访问首先都得经过它的审核。

域控是域架构的核心,每个域控制器上都包含了AD活动目录数据库。

一个域中可能应该要有至少两个域控。一个作为DC,一个是备份DC。如果没有第二个备份DC,那么一旦DC瘫痪了,则域内的其他用户就不能登陆该域了,因为活动目录的数据库(包括用户的帐号信息)存储在DC中的。而有一台备份域控制器(BDC),则至少该域还能正常使用,期间把瘫痪的DC恢复了就行了。

当域中的一台计算机安装了AD后,它就成了域控DC了。

活动目录

域和活动目录的区别:要实现域环境,其实就是要安装AD。一台计算机安装了AD之后就变成了DC。

简介

活动目录:(Active Directory,AD)是域环境中提供目录服务的组件。在活动目录中,所有的网络对象信息以一种结构化的数据存储方式来保存,使得管理员和用户能够轻松地查找和使用这些信息。活动目录以这种结构化的数据存储方式作为基础,对目录信息进行合乎逻辑的分层组织。活动目录存储着有关网络对象(如用户、组、计算机、共享资源、打印机和联系人等)的信息。目录服务是帮助用户快速准确从目录中查找到他所需要的信息的服务。安装有AD活动目录的服务器就是域控DC。

如果将企业的内网看成是一本字典,那么内网里的资源就是字典的内容, 活动目录就相当于字典的索引。即活动目录存储的是网络中所有资源的快捷方式,用户通过寻找快捷方式而定位资源。

在活动目录中记录的信息,被分为两大部分,一部分保存在活动目录数据库文件 NTDS.dit 中,另一部分保存在被复制的文件系统上。

主要功能

  • 帐号集中管理:所有帐号均存在服务器上,方便对帐号的重命名/重置密码。
  • 软件集中管理:统一推送软件,统一安装网络打印机等。利用软件发布策略分发软件,可以让用户自由选择安装软件。
  • 环境集中管理:利用AD可以统一客户端桌面,IE,TCP/IP等设置。
  • 增强安全性:统一部署杀毒软件和扫毒任务,集中化管理用户的计算机权限、统一制订用户密码策略等,可监控网络,资料统一管理。
  • 更可靠:更少的宕机时间。如:利用AD控制用户访问权限,利用群集、负载均衡等技术对文件服务器进行容灾设定,更可靠,宕机时间更少。
  • 活动目录为Microsoft统一管理的基础平台,其它 ISA、Exchange、SMS 等服务都依赖于这个基础平台。

NTDS.dit

域用户帐户以域数据库的形式保存在活动目录中,NTDS.dit是活动目录的数据库文件,该文件记录的信息有以下三张表:

Schema 表 :这个表中包含了所有可在活动目录创建的对象信息以及他们之间的相互关系。包括各种类型对象的可选及不可选的各种属性。这个表是活动目录数据库中最小的一个表,但是也是最基础的一个表。

Link 表 :Link表包含所有属性的关联,包括活动目录中所有对象的属性的值。一个用户对象的所有属性的类型,包括每个属性的值及用户所属于的组等信息都属于这个表。这个表要大于Schema 表,但与Data 表相比要小。

Data 表:活动目录中用户,组,应用程序特殊数据和其他的数据全部保存在Data表中。这是活动目录中存储信息最多的一个表,大量的活动目录的资料实际上还是存储在这个表中。

逻辑结构

在活动目录中,管理员可以完全忽略被管理对象的具体地理位置,而将这些对象按照一定的方式放置在不同的容器中。由于这种组织对象的做法不考虑被管理对象的具体地理位置,这种组织框架称为 “ 逻辑结构 ”。

活动目录的逻辑结构包含组织单元(OU)、域(domain)、域树(tree)、域森林(forest)。域树内的所有域共享一个活动目录,这个活动目录内的数据分散地存储在各个域内,且每一个域只存储该域内的数据,因此非常适合进行统一管理。

AD域服务

image-20230825202221399

  • Builtin容器:Builtin容器是Active Driectory默认创建的第一个容器,主要用于保存域中本地安全组。
  • Computers容器:Computers容器是Active Driectory默认创建的第2个容器,用于存放Windows Server域内所有成员计算机的计算机账号。
  • Domain Controllers容器:Domain Controllers是一个特殊的容器,主要用于保存当前域控制器下创建的所有子域和辅助域。
  • Users容器:Users容器主要用于保存安装Active Driectory时系统自动创建的用户和登录到当前域控制器的所有用户账户。

DNS域名服务器

实现域名到IP地址的转换。由于域中计算机使用DNS来定位DC、服务器和其他计算机的,所以域的名字就是DNS域的名字。

  • 域控服务器要求DNS服务器按名称查找计算机、成员服务器和网络服务。
  • 域名解析:DNS服务器通过其A记录将域名解析成IP地址
  • 定位活动目录服务:客户机通过DNS服务器上的 SRV 服务记录定位提供某一个服务的计算机

一般情况下,我们在内网渗透时就通过寻找DNS服务器来定位域控制器,因为通常DNS服务器和域控制器会处在同一台机器上。

SRV服务记录是DNS服务器的数据库中支持的一种资源记录的类型,它记录了哪台计算机提供了哪个服务这么一个简单的信息。

SRV服务记录:一般是为活动目录AD设置的应用。DNS可以独立于活动目录,但是活动目录必须有DNS的帮助才能工作。为了活动目录能够正常的工作,DNS服务器必须支持服务定位(SRV)资源记录,资源记录把服务名字映射为提供服务的服务器名字。域主机和域控制器使用SRV资源记录决定域控制器的IP地址和提供服务的服务器IP地址。

域信任关系

域之间的信任关系,相当于是不同域之间沟通的桥梁。域信任分为 单向信任 和 双向信任。

单向信任只能是受信任域访问信任域,而信任域不能访问受信任域。双向信任是两个域可以互相访问。

父子信任:父域与子域之间自动建立起了双向信任关系,并且信任关系可以传递。

树信任:同一个林中,林根域与其他树根域自动建立双向信任关系。信任关系可传递。

快捷方式信任:为了加速认证流程而产生的信任关系。需要管理员手工建立,信任关系可向下传递。

林信任:在不更改AD结构的情况下,让不同林之间可以相互访问资源。信任关系可向下传递。

外部信任/ 跨林快捷方式信任:类似于同林内的快捷方式信任. 单向, 信任关系不可传递:

领域信任:为了让AD跟非Windows系统的Kerberos建立关系而存在的信任。

域结构分类

单域

即只有一个域的网络环境,一般需要两台DC,一台DC,另一台备用DC(容灾)
在一般的具有固定地理位置的小公司里,建立一个域就可以满足所需。

image-20230822114405696

父子域

类比公司总部和公司分部的关系,总部的域称为父域,各分部的域称为该域的子域。父域与子域之间默认建立起了双向信任关系。

  • 使用父子域的好处
  1. 减小了域之间信息交互的压力(域内信息交互不会压缩,域间信息交互可压缩)
  2. 不同的子域可以指定特定的安全策略

父子域中域名使用一个.表示一个层次,类似于DNS域名表示方式,子域只能使用父域的名字作为域名后缀

image-20230822114539216

域树

域树指若干个域通过建立信任关系组成的集合。一个域管理员只能管理本域的内部,不能访问或者管理其他的域,二个域之间相互访问则需要建立信任关系(Trust Relation),通过信任关系可以将父子域连接成树状结构

信任关系是连接在域与域之间的桥梁。父域与子域之间自动建立起了双向信任关系,域树内的父域与子域之间不但可以按需要相互进行管理,还可以跨网分配文件和打印机等设备资源,使不同的域之间实现网络资源的共享与管理,以及相互通信和数据传输。

同一个域树中,父域和子域会自动创建双向信任关系,并且信任关系可传递。

所以也就是如下:

  • kc.lab 与 cn.kc.lab 和 us.kc.lab 自动建立了双向信任关系。
  • cn.kc.lab 与 a.cn.kc.lab 和 b.cn.kc.lab 自动建立了双向信任关系。
  • us.kc.lab 与 a.us.yi.lab 和 b.us.kc.lab 自动建立了双向信任关系。
  • 由于信任关系可以传递,所以和a.cn.kc.lab 和 b.cn.kc.lab 与 kc.lab 自动建立了双向信任关系。以及 a.us.kc.lab 和 b.us.kc.lab 与 kc.lab 都自动建立了双向信任关系。
  • 但是 cn.kc.lab 和 us.kc.lab 之间并没有建立起信任关系。所以也就是 cn.kc.lab 和 us.kc.lab 之间不能进行数据共享等操作。他们之间要想进行数据共享等操作,需要手动为他们之间建立信任关系

image-20230822115230702

  • 建立域树的好处

如果把不同地理位置的分公司放在同一个域内,那么他们之间信息交互(包括同步,复制等)所花费的时间会比较长,而且占用的带宽也比较大。(因为在同一个域内,信息交互的条目是很多的,而且不压缩;而在域和域之间,信息交互的条目相对较少,而且压缩。)

还有一个好处,就是子公司可以通过自己的域来管理自己的资源。

还有一种情况,就是出于安全策略的考虑,因为每个域都有自己独有的安全策略。比如一个公司的财务部门希望能使用特定的安全策略(包括帐号密码策略等),那么可以将财务部门做成一个子域来单独管理

在一个域树中,父域可以包含很多子域,子域是相对父域来说的,指域名中的每一个段。子域只能使用父域作为域名的后缀,也就是说在一个域树中,域的名字是连续的。

域林

由一个或多个没有形成连续名称空间的域树组成,若干个域树通过建立信任关系组成的集合。林中每个域树都有唯一的名称空间,之间不连续。

可以通过域树之间建立的信任关系来管理和使用整个域林中的资源,从而又保持了原有域自身原有的特性。

同一个林中,林根域与其他树根域自动建立双向信任关系,信任关系可传递。

image-20230822115439194

域的原理

其实可以把域和工作组联系起来理解,在工作组上你一切的设置比如在本机上进行各种策略,用户登录都是登录在本机的,密码是放在本机的数据库来验证的。而如果你的计算机加入域的话,各种策略是域控制器统一设定,用户名和密码也是放到域控制器去验证,也就是说你的账号密码(域用户)可以在同一个域的任何一台计算机登录。

如果说工作组是“免费的旅店”,那么域(Domain)就是“星级的宾馆”;工作组可以随便出出进进,而域则需要严格控制。“域”的真正含义指的是服务器控制网络上的计算机能否加入计算机组合。一提到组合,势必需要严格的控制。所以实行严格的管理对网络安全是非常必要的。在对等网模式下,任何一台电脑只要接入网络,其他机器就都可以访问共享资源,如共享文件夹等。尽管对等网络上的共享文件可以加访问密码,但是非常容易被破解。

不过在“域”模式下,至少有一台服务器负责每一台联入网络的电脑和用户的验证工作,相当于一个单位的门卫一样,称为域控制器(Domain Controller,简写为DC)。

域控制器中包含了这个域内的账户、密码、域内的计算机等信息构成的数据库(AD)。当电脑联入网络时,域控制器首先要鉴别这台电脑是否属于这个域,使用的登录账号是否存在、密码是否正确。如果以上信息有一样不正确,那么域控制器就会拒绝这个用户从这台电脑登录。不能登录,用户就不能访问服务器上有权限保护的资源,他只能以对等网用户的方式访问Windows共享出来的资源,这样就在一定程度上保护了网络上的资源。

要把一台电脑加入域,仅仅使它和服务器在网上邻居中能够相互“看”到是远远不够的,必须要由网络管理员进行相应的设置,把这台电脑加入到域中。这样才能实现文件的共享,集中统一,便于管理

在域控上,即使以域管理员的身份登录,也不能查看域成员的密码,可以给域成员重置密码,但是不能查看到域成员的密码。

安全域的划分

  • 内网(安全级别最高):分为核心区(存储企业最重要的数据,只有很少的主机能够访问)和办公区(员工日常工作区,一般能够访问DMZ,部分主机可以访问核心区)
  • DMZ(Demilitarized Zone,边界网络,隔离区,安全级别中等):作为内网中安全系统和非安全系统之间的缓冲区,用于对外提供服务,一般可以放置一些必须公开的服务器设施
  • 外网(Internet,安全级别最低)

拥有DMZ的网络需要制定一些访问控制策略:

  1. 内网可以访问外网
  2. 内网可以访问DMZ
  3. 外网不能访问内网
  4. 外网可以访问DMZ
  5. DMZ不能访问内网
  6. DMZ不能访问外网

域中计算机的分类

域控制器、成员服务器、客户机、独立服务器

域控制器:用于管理所有的网络访问,存储有域内所有的账户和策略信息。允许网络中拥有多台域控制器(容灾)

成员服务器:安装了服务器操作系统并加入了域,但没有安装活动目录的计算机,主要任务是提供网络资源

客户机:安装了其他操作系统的计算机,利用这些计算机和域中的账户就可以登录到域。

独立服务器:和域无关,既不加入域,也没有活动目录

域内权限

域本地组:

多域用户访问单域资源

(访问同一个域),主要用于授予本域内资源的访问权限,可以从任何域中添加用户账号、通用组和全局组。域本地组无法嵌套在其他组中

全局组:

单域用户访问多域资源

(必须是同一个域中的用户),只能在创建该全局组的域中添加用户和全局组,但可以在域森林中的任何域内指派权限,也可以嵌套在其他组中

通用组:多域用户访问多域资源,成员信息不保存在域控制器中,而是保存在全局编录(GC)中,任何变化都会导致全林复制

A-G-DL-P策略

A:用户账户
G:全局组
DL:域本地组
P:许可,资源权限

先将用户账号添加至全局组中,再将全局组添加至域本地组中,然后为域本地组分配资源权限。

域内权限解读

域本地组:来自全林作用于本域
全局组:来自本域作用于全林
通用组:来自全林作用于全林

  • 本地域组的权限

Administrators(管理员组) ————最重要的权限
Remote Desktop Users(远程登录组)
Print Operators(打印机操作员组)
Account Operators(帐号操作员组)
Server Operaters(服务器操作员组)
Backup Operators(备份操作员组)

  • 全局组、通用组的权限

Domain Admins(域管理员组)— 最最最重要的权限,一般来说域渗透是看重这个
Enterprise Admins(企业系统管理员组)— 最重要的权限,其次是去看重这个权限
Schema Admins(架构管理员组)— 最重要的权限
Domain Users(域用户组)

内网域渗透

获得域控制器的权限为目标,一旦域控制器沦陷,整个内网就尽在掌握中。

域渗透思路

  • 通过域成员主机,定位出域控制器IP及域管理员账号
  • 利用域成员主机作为跳板,扩大渗透范围
  • 利用域管理员可以登陆域中任何成员主机的特性,定位出域管理员登陆过的主机IP
  • 设法从域成员主机内存中dump出域管理员密码
  • 进而拿下域控制器、渗透整个内网。

机器位置判断

分析机器处于网络拓扑中的某个区域,是在DMZ区,办公网,还是核心区,核心DB等多个位置,当然这里的区域并不是绝对的,只是大概的一个环境,不同的地方网络环境不一样,区域的界限也不一定明显。

DMZ区:多数情况下在外围Web中我们拿到权限多数是在DMZ区,不属于正式的内网,如果是布置好的话,DMZ区会处于一种内网能访问DMZ,而DMZ访问不了内网的一种状态。例如DMZ区的服务器访问不了管理员机器所处的内网机器。

办公区:顾名思义是办公人员所处的网络,例如一般办公人员,服务器管理员等等,能够渗透进办公网将对后续的渗透起到很大的帮助。一般情况刚开始是很少会直接到达办公网段的,除非是进行钓鱼种马啥的。

核心区:例如域控,核心生产机器等等,这些都在后续的渗透才会慢慢接触到。

a4db6e1bff965bd9ed156b7dbc84c5a

机器角色判断

假如是服务器,看看自己是否是普通Web服务器,是开发测试服务器,公共服务器,文件服务器,还是代理服务器,DNS服务器、存储服务器等等。

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

例如通过主机名是最好判断的,开发服务器就是dev , Web服务器可能是web或者app,存储服务器可能是NAS,文件服务器可能是fileserver等等。

例如通过网络连接进行判断,代理服务器可能就会有很多机器来连代理端口,更新服务器(例如WSUS)可能开放了更新端口8530,DNS服务器开放了53端口等等,当然不能一概而论,必须进行综合判断。

连通性判断

指机器能否外面进的来,能否出的去。

主要有两种,一种是端口,一种是协议。我们着重于是否出的去。

协议的判断

主要是看能够通过什么协议出去,主要有tcp/http/dns/icmp等协议。常见判断手法如下:

TCP协议:

1
2
vps:nc -lvvp 8888
target:nc vps-ip 8888

DNS协议:

1
2
3
4
vps:nc -u -lvp 53
target:
nslookup www.baidu.com vps-ip
dig @vsp-ip www.baidu.com

HTTP协议:

1
2
vps:nc -lvvp 80
target:curl vps-ip 80

ICMP协议:

1
2
vps:tcpdump icmp
target:ping vps-ip

端口判断

外网vps做监听,内网机器测试常见端口,或直接使用端口扫描器进行扫描。

常见能出去的端口有 80,8080,443,53,110,123 等。

代理服务器

还有一种是机器不能直接出来的,需要进行代理设置,这种多数是为了办公网段得办公人员进行上网用的。

常用的判断手法与情况如下:

  • 查看网络连接看是否有连接其他机器的8080(不绝对)等端口,尝试ping –n 1 –a ip
  • 是否有hostname类似于proxy的机器
  • IE直接代理情况

通过查询注册表得到:

1
2
3
4
REG QUERY "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer

#通过pac文件自动代理情况
REG QUERY "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v AutoConfigURL

从pac文件中查看其代理服务器IP及端口,然后通过curl来确定:

1
2
curl www.baidu.com #不通,不走代理无法访问到外网
curl -x proxy-ip:8080 www.baidu.com #通,通过代理能够访问到外网