内网渗透基础知识

发布于 2021-08-06  76 次阅读


什么是内网?

  • 在了解内网概念之前,要先来谈一谈公网的概念。顾名思义,公网就是任何能够连通网络的设备都能访问的网络。我们平时在浏览器上访问百度,淘宝等各大网站,我们所在的网络环境是公网,我们通过访问一个网站的域名,经过DNS服务器的解析,将域名解析为IP,从而定向到我们所要访问的网站。(这时我们访问的是IP是公网IP,即IP是开放在公网上面的,只要能够正常连接网络的主机,都能对其进行访问)。
  • 内网相当于是公网的缩影,内网也叫局域网,指的是在一定区域内由多台主机组成的内部网络,内部网络直接访问通过内网IP进行访问,内网之间的访问和公网之间访问基本一致。内网IP不能够被不在同一局域网内的其他主机访问,因此内网具有封闭性。这里需要注意具有内网IP的主机和具有公网IP的主机之间访问具有单向性,即具有内网IP的主机可以访问具有公网IP的主机,具有公网IP的主机不能访问具有内网IP的主机

工作组

  • 在一些大型的单位,有可能有成千上万的主机连接组成局域网。在这种大型的局域网中,如果不进行分组,网络环境是十分混乱,复杂的极难管理。
  • 因此产生工作组这个概念。将不同的计算机按功能(或部门)分别列入不同的工作组。要是想访问某个工作组的资源,只要在网路里双击这个部门的工作组名就可以看到该工作组中的所有计算机。
  • 简单来说,工作组就相当于文件夹,把不同的计算机有效的划分到不同的文件夹,文件夹之间是对等的,没有从属关系,主机之间可以方便的访问共享资源
  • 加入工作组:

域的基本概念

  • 在工作组中,主机之间是平级的,因此集中管理起来十分麻烦,因为要对每台计算机单独操作,但内网中主机数量十分巨大的时候,管理员的压力是十分巨大的。
  • 域的产生解决了这一问题。域(Domain)是一个有安全边界的计算机集合(安全边界的意思是,在两个域中,一个域中的用户无法访问另一个域中的资源)
  • 域的安全管理控制机制更加严格。用户想要访问域内的资源,必须以合法的身份登录域,而用户对域内的资源拥有什么样的权限,还取决于用户在域内的身份
  • 域控制器(Domain Controller,DC)是域中的一台类似管理服务器的计算机,负责所有连入的主机和用户的验证工作。域内的主机想要相互访问,都需要经过域控制器的审核
  • 域控制器中存着这个域中用户和主机的数据库。当计算机要连接到域中要经过以下判断,任意一条不符合都不能连接到域
    • 这台计算机是否属于域
    • 登陆的账号密码是否正确

域的几种环境

  • 单域
    • 在一些小型公司里面,建立一个域就可以满足需求,这就称为单域。
    • 在一个域中,一般要有至少两台域名服务器,一台作为DC,另一台作为备份DC。保证在DC瘫痪时,启用备份DC也能保证域能够正常工作
  • 父域和子域
    • 出于管理及其他需求,需要在网络中划分出多个域。第一个域称为父域,各分部的域称为该域的子域。
    • 这里父域就相当于顶级域名(例如:baidu.com),子域相当于多级域名(mail.baidu.com)。
    • 这样划分主要是减轻信息交互(同步、备份等)压力,减少花费的时间
    • 有的时候出于安全策略的考虑(每个域都有自己的安全策略),比如一个公司的财务部希望使用特定的安全策略,那么就可以把财务部作为一个子域来单独管理
  • 域树
    • 域树(Tree)是多个域通过建立信任关系组成的集合。
    • 一个域管理员只能管理本域,不能访问或者管理其他域。如果两个域之间需要互相访问,则需要建立信任关系(Trust Relation)
    • 信任关系是连接不同域的桥梁。域树内的父域与子域,不但可以按照需要互相管理,还可以跨网络分配文件和打印机等设备及资源,从而在不同的域之间实现网络资源的共享与管理、通信及数据传输。
  • 域森林
    • 域森林(Forest)是指多个域树通过建立信任关系组成的集合
    • 产生域森林的场景:在一个公司兼并场景中,某公司使用域树abc.com,被兼并的公司本来有自己的域树abc.net(或者在需要为被兼并公司建立具有自己特色的域树时),域树abc.net 无法挂在域树abc.com 下。所以,域树abc.com 与域树abc.net 之间需要通过建立信任关系来构成域森林
    • 域森林特点:通过域树之间的信任关系,可以管理和使用整个域森林中的资源,并保留被兼并域树自身原有的特性
  • 域名服务器
    • 域名服务器(Domain Name Server,DNS)是指用于实现域名(Domain Name)和与之相对应的IP 地址(IP Address)转换的服务器
    • 在内网渗透测试中,大都是通过寻找DNS 服务器来确定域控制器的位置的(DNS 服务器和域控制器通常配置在同一台机器上)

活动目录

  • 活动目录(Active Directory,AD)是指域环境中提供目录服务的组件。
  • 在AD中,管理员不需要考虑被管理对象的地理位置,只需要安全罩一定的方式将这些对象放置在不同的容器中。这种不考虑被管理对象的具体地理位置的组织框架称为逻辑结构。
  • 域树内的所有域共享一个活动目录,这个活动目录内的数据分散存储在各个域中,且每个域只存储该域内的数据
  • AD的优势:可以是企业网络具有极强的可扩展性,便于进行组织、管理以及目录定位
  • 活动目录只要提供以下功能:
    • 账号集中管理:所有账号均存储在服务器中,以便执行命令和重置密码等。
    • 软件集中管理:统一推送软件、安装网络打印机等。利用软件发布策略分发软件,可以让用户自由选择需要安装的软件。
    • 环境集中管理:统一客户端桌面、IE、TCP/IP 协议等设置
    • 增强安全性:统一部署杀毒软件和病毒扫描任务、集中管理用户的计算机权限、统一制定用户密码策略等。可以监控网络,对资料进行统一管理。
    • 更可靠,更短的宕机时间:例如,利用活动目录控制用户访问权限,利用群集、负载均衡等技术对文件服务器进行容灾设置。网络更可靠,宕机时间更短。

域控制器(DC)和活动目录(AD)的区别

如果网络规模较大,就要把网络中的众多对象,例如计算机、用户、用户组、打印机、共享文件等,分门别类、井然有序地放在一个大仓库中,并将检索信息整理好,以便查找、管理和使用这些对象(资源)。这个拥有层次结构的数据库,就是活动目录数据库,简称AD 库。那么,我们应该把这个数据库放在哪台计算机上呢?要实现域环境,其实就是要安装AD如果内网中的一台计算机上安装了AD,它就变成了DC(用于存储活动目录数据库的计算机)

安全域的划分

划分安全域的目的

划分安全域的目的就是将一组安全等级相同的计算机划入同一个网段。这个网段的计算机拥有相同的安全边界,并在网络边界上通过部署防火墙来实现对其他安全域的网络访问控制策略(NACL),从而允许那些IP地址访问此域、允许此域访问那些IP地址和网段进行设置。这些措施,将使得网络风险最小化。当攻击发生时,可以尽可能地将威胁隔离,从而降低对域内计算机的影响。

中小型安全域划分

image-20210802111150644

一个虚线框表示一个安全域(也是网络的边界,一般分为DMZ和内网),通过硬件防火墙的不用端口实现隔离

在一个用路由器连接的内网中,可以将网络划分为三个区域:安全级别最高的内网;安全级别中等的DMZ;安全级别最低的外网。这三个区域负责完成不同的任务,因此需要设置不同的访问策略。

DMZ区

DMZ区也叫隔离区,只为了解决安装防火墙后外部网络不能访问内部网络而设立的一个非安全与安全系统之间的缓冲区。DMZ谓语企业内部网络和外部网络之间。可以再DMZ中放置一些必须公开的服务器设置,例如企业WEB服务器,FTP服务器和论坛无武器等。DMZ是对外提供服务的区域,因此可以从外部访问。

在网络边界上一般会部署防火墙及如前检测、入侵防御产品等。如果有Web应用还会设置WAF,从而更加有效的保护内网。

在配置一个拥有DMZ网络是,永昌需要定义如下访问控制策略,以实现其屏障功能:

  • 内网可以访问外网:内网用户需要自由地访问外网。在这一策略中,防火墙需要执行NAT。
  • 内网可以访问DMZ:此策略使内网用户可以使用或者管理DMZ中的服务器。
  • 外网不能访问内网:这是防火墙的基本策略。内网中存储的是公司内部数据,显然,这些数据一般是不允许外网用户访问的(如果要访问,就要通过VPN 的方式来进行)
  • 外网可以访问DMZ:因为DMZ 中的服务器需要为外界提供服务,所以外网必须可以访问DMZ。同时,需要由防火墙来完成从对外地址到服务器实际地址的转换。
  • DMZ 不能访问内网:如果不执行此策略,当攻击者攻陷DMZ时,内网将无法受到保护。
  • DMZ 不能访问外网:此策略也有例外。例如,在DMZ 中放置了邮件服务器,就要允许访问外网,否则邮件服务器无法正常工作

内网划分

  • 办公区:
    • 公司员工日常的工作区,一般会安装防病毒软件、主机入侵检测产品等。办公区一般能够访问DMZ。如果运维人员也在办公区,那么部分主机也能访问核心数据区
    • 攻击者如果想进入内网,一般会使用鱼叉攻击、水坑攻击,当然还有社会工程学手段。办公区人员多而杂,变动也很频繁,在安全管理上可能存在诸多漏洞,是攻击者进入内网的重要途径之一
  • 核心区:
    • 存储企业最重要的数据、文档等信息资产,通过日志记录、安全审计等安全措施进行严密的保护,往往只有很少的主机能够访问。从外部是绝难直接访问核心区的
    • 一般来说,能够直接访问核心区的只有运维人员或者IT 部门的主管,所以,攻击者会重点关注这些用户的信息(攻击者在内网中进行横向移动攻击时,会优先查找这些主机)。

域内计算机的分类

域控制器

  • 在内网中,可以有多台计算机呗配置为域控制器,以分担用户的登陆、访问等操作。多个域控制器可以一起工作,自动备份用户账户和活动目录数据。这样,及时部分与控制器瘫痪,网络访问也不会受到影响,提高了网络的安全性和稳定性。

成员服务器

  • 成员服务器是指安装了服务器操作系统并加入了域但没有安装活动目录的计算机,其主要任务是提供网络资源。成员服务器的类型通常有文件服务器、应用服务器、数据库服务器、Web服务器、邮件服务器、防火墙、远程访问服务器、打印服务器等

客户机

  • 域中的计算机可以是安装了其他操作系统的计算机,用户利用这些计算机和域中的账户就可以登录域。这些计算机被称为域中的客户机。域用户账号通过域的安全验证后,即可访问网络中的各种资源。

独立服务器

独立服务器和域没有关系。如果服务器既不加入域,也不安装活动目录,就称其为独立服务器。独立服务器可以创建工作组、与网络中的其他计算机共享资源,但不能使用活动目录提供的任何服务

重点

域控制器用于存放活动目录数据库,是域中必须要有的,而其他三种计算机则不是必须要有的。也就是说,最简单的域可以只包含一台计算机,这台计算机就是该域的域控制器。当然,域中各服务器的角色是可以改变的。例如,独立服务器既可以成为域控制器,也可以加入某个域,成为成员服务器。

域内权限解读

组的概念和作用

组(Group)是用户账号的集合。通过向一组用户分配权限,就可以不必向每个用户分别分配权限。例如,管理员在日常工作中,不必为单个用户账号设置独特的访问权限,只需要将用户账号放到相应的安全组中。管理员通过配置安全组访问权限,就可以为所有加入安全组的用户账号配置同样的权限。使用安全组而不是单个的用户账号,可以大大简化网络的维护和管理工作

域中的组管理

  • 域本地组
    • 多域用户访问单域资源,可以从任何域添加用户账号,通用组和全局组,但是只能在其所在域内指派权限。域本地组不能嵌套在其他组中。域本地组主要用于授予本域内资源的访问权限
  • 全局组
    • 单域用户访问多域资源(必须是同一个域中的用户),只能在创建改全局组的域中添加用户和全局组。可以在域森林的任何域内指派权限。全局组的域中添加用户和全局组。可以再域森林的任何域内指派权限。全局组可以嵌套其他组中
    • 可以将某个全局组添加到同一个域的另一个全局组中,或者添加到其他域的通用组和域本地组中(不能添加到不同域的全局组中,全局组只能在创建它的域中添加用户和组)。虽然可以通过全局组授予用户访问任何域内资源的权限,但一般不直接用它来进行权限管理
  • 全局组和本地组关系
    • 全局组和域本地组的关系,与域用户账号和本地账号的关系相似。域用户账号可以在全局使用,即在本域和其他关系的其他域中都可以使用,而本地账号只能在本机中使用。例如,将用户张三(域账号为Z3)添加到域本地组Administrators 中,并不能使Z3对非DC 的域成员计算机拥有任何特权,但若将Z3添加到全局组Domain Admins 中,用户张三就成为域管理员了(可以在全局使用,对域成员计算机拥有特权)
  • 通用组
    • 通用组的成员来自域森林中任何域的用户账号、全局组和其他通用组,可以在该域森林的任何域中指派权限,可以嵌套在其他组中,非常适合在域森林内的跨域访问中使用。不过,通用组的成员不是保存在各自的域控制器中的,而是保存在全局编录(GC)中的,任何变化都会导致全林复制
  • 全局编录
    • 全局编录通常用于存储一些不经常发生变化的信息。由于用户账号信息是经常变化的,建议不要直接将用户账号添加到通用组中,而要先将用户账号添加到全局组中,再把这些相对稳定的全局组添加到通用组中
  • 重点
    • 域本地组来自全林,作用于本域;全局组来自本域,作用于全林;通用组来自全林,作用于全林

A-G-DL-P 策略

A-G-DL-P 策略是指将用户账号添加到全局组中,将全局组添加到域本地组中,然后为域本地组分配资源权限

  • A 表示用户账号(Account)
  • G 表示全局组(Global Group)
  • U 表示通用组(Universal Group)
  • DL 表示域本地组(Domain Local Group)
  • P 表示资源权限(Permission,许可)

按照A-G-DL-P策略对用户进行组织和管理是非常容易的。在A-G-DL-P策略形成以后,当需要给一个用户添加某个权限时,只要把这个用户添加到某个本地域组中就可以了。

在安装域控制器时,系统会自动生成一些组,成为内置组。内置组定义了一下常用的权限命令。通过将用户添加到内知足中,可以使用户获得相应的权限。

重要的域本地组权限

  • 管理员组(Administrators)的成员可以不受限制地存取计算机/域的资源。它不仅是最具权力的一个组,也是在活动目录和域控制器中默认具有管理员权限的组。该组的成员可以更改Enterprise Admins、Schema Admins 和Domain Admins 组的成员关系,是域森林中强大的服务管理组
  • 远程登录组(Remote Desktop Users)的成员具有远程登录权限。
  • 打印机操作员组(Print Operators)的成员可以管理网络打印机,包括建立、管理及删除网络打印机,并可以在本地登录和关闭域控制器。
  • 账号操作员组(Account Operators)的成员可以创建和管理该域中的用户和组并为其设置权限,也可以在本地登录域控制器,但是,不能更改属于Administrators 或Domain Admins 组的账户,也不能修改这些组。在默认情况下,该组中没有成员。
  • 服务器操作员组(Server Operators)的成员可以管理域服务器,其权限包括建立/管理/删除任意服务器的共享目录、管理网络打印机、备份任何服务器的文件、格式化服务器硬盘、锁定服务器、变更服务器的系统时间、关闭域控制器等。在默认情况下,该组中没有成员
  • 备份操作员组(Backup Operators)的成员可以在域控制器中执行备份和还原操作,并可以在本地登录和关闭域控制器。在默认情况下,该组中没有成员