2223
- 关注
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9

一、什么是内网
内网也指局域网,是指在某个区域由多台计算机互连而成的计算机组,组网范围通常在数千米以内。
在局域网中,可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等。
内网是封闭的,可以由办公室内的两台计算机组成,也可以由一个公司内的大量计算机组成。
简单来说:内网就是某一区域内封闭的计算机组,由大量的计算机组成。
二、浅知内网渗透
内网渗透,从字面上理解便是对目标服务器所在内网进行渗透并最终获取域控权限的一种渗透。内网渗透的前提是获取一个webshell,可以是低权限的webshell,因为可以通过提权获取高权限
在进行内网渗透之前需要了解一个概念,域环境。在内网中,往往可能存在几百上千台机器,例如需要对机器进行升级、打补丁,设置权限等,管理员不可能一台一台地更新修改,因此衍生出了域环境。
管理员以一台主机作为域控制器新建一个域,将其他主机加入域中,以域控来操作其他主机。因为域控的最高权限,导致了域控所在的主机的管理员账户密码可以登陆任意一台主机,所以内网渗透的最终目标,往往是拿下域控的权限
三、内网穿透
在渗透测试过程中,我们拿下了一台服务器的权限,并且通过netstat -ano
发现开启了3389端口,想要远程桌面连接的时候发现无法连接。这是因为我们获取的服务器所处的环境为内网,而内网主机的3389端口,是公网IP通过端口映射的。也就是说,我们连接的外网IP地址的3389端口,映射到内网中,不一定是那台服务器的3389端口。
解决这种问题的方法有俩种:
让目标机器去连接外网主机(必须有一台公网服务器,内网主机能够访问互联网)
在目前机器上设置一个信号站(放一个web文件在目标机器上,所有流量都要经过这个文件通信)
在渗透测试过程中,内网主机不能访问互联网是很常见的。
四、内网结构
1、工作组(对等网络)
工作组Work Group:
是最常见最简单最普通的资源管理模式,就是将不同的电脑按功能分别列入不同的组中,以方便管理。
在工作组中的所有计算机都是平等的,没有管理和被管理之分,松散会员制,可以随意加入和退出,且不同工作组之间的共享资源可以相互访问
对于管理者来说,工作组的管理方式有时不太便于管理,需要我们需要了解域的概念
2、域
域是一个有安全边界的计算机集合,域通过安全边界来隔离本域和外部资源。
用户如果想要访问域内资源则需要通过合法的权限登陆域,。而登陆域就需要经过“域内保安”-域控制器(Domain Controlled,DC)的审核,域控制器负责对连入计算机和用户进行验证工作,它本身存有整个域中关键信息(账户、密码、计算机名)的数据库
简单来说:域就是一个升级版的工作组,但是比工作组多了身份认证和权限管理
域的分类
在通过域控的身份认证后才能访问本域资源,进入域后需要知道自己处于哪个域环境
单域
父域,子域
域树(tree)
域林(forest)
DNS域名服务器
单域
一般情况下至少存在俩台域服务器,分别为DC和备份DC。
活动目录的数据库是存储于DC中的,备份DC的作用是当主域瘫痪时可以代替主域控直至恢复瘫痪的DC
父域和子域
处于管理等需求在网络中划分了多个域,而第一个域被称为父域,各分部的域被称为子域
域树
域树是多个域通过建立信任关系组成的集合。
建立信任关系的俩个域可以互相访问,而域树内的父域和子域不仅可以按需相互管理,还可以跨网络分配文件等资源。
在一个域树中,父域可以拥有多个子域,子域也只能以父域的名字作为后缀名
域林
域林是由一个或多个没有形成连续名字空间的域树组成,它和域树最大的区别就是域林之间没有形成连续的名字空间,而域树则是由一些具有连续名字空间的域组成。
但域林中的所有域树仍共享同一个表结构、配置和全局目录。域林中的所有域通过Kerberos信任关系建立起来,所以每个域树都知道Kerberos信任关系,不同域树可以交叉引用其他域树中的对象
域名服务器
一般来说域控制器就是DNS服务器,用于实现域名到IP地址的转换。由于域中计算机使用DNS来定位DC、服务器和其他计算机的,所以域的名字就是DNS域的名字。
3、活动目录(AD)
活动目录Active Directory
,简写为AD
,它是 Windows Server 中负责架构中大型网络环境的集中式目录管理服务,在Windows 2000 Server 开始内置于 Windows Server 产品中。
目录包含了有关各种对象,例如用户、用户组、计算机、域、组织单位(OU)以及安全策略的信息。目录存储在域控上,并且可以被网络应用程序或者服务所访问。
活动目录就相当于内网中各种资源的一个目录,通过活动目录用户可以快速定位到这些资源的位置。
在活动目录中存在逻辑架构,包括组织单元(OU)、域、域树、域森林。同一域树的所有域共享一个活动目录,其中的数据分散存储在各个域中,且每个域只存储该域的数据。比如我有一个名为M的集团,下面存在A、B、C三个子公司,子公司下包含各个部门,那么就可以以M集团(域森林)>子公司(域树)>部门(域)>员工(域用户)为结构。活动目录的这种层次结构使企业网络具有极强的可扩展性,便于住址、管理以及目录定位。
活动目录的功能:
账户集中管理
软件集中管理
环境集中管理
增强安全性
更可靠、更短的宕机时间
活动目录与域控制器的区别
由域网络中的众多对象组成的层次结构的数据库被称为活动目录数据库(AD库)。要实现域环境其实就是要安装AD,如果内网中某台机器安装了AD,那么他就是DC。也就实现了只需要在活动目录中对某个账号修改一次密码,在整个域中任意一台机器上都可使用该账号登录。
4、安全域
安全域的划分目的:
将一组安全等级相同的计算机划如同一网段。
这个网段内的计算机拥有相同的网络边界,并在网络边界上通过部署防火墙来实现对其他安全域的网络控制策略,从而允许哪些IP地址访问域,允许此域访问哪些IP地址和网段进行设置。
这些措施将使得网络风险最小化,当攻击发生时,可以尽可能地将威胁隔离从而降低对域内计算机的影响
DMZ
DMZdemilitarized zone
,中文名为“隔离区”,或称“非军事化区”。它是为了解决安装防火墙后外部网络的访问用户不能访问内部网络服务器的问题,从而设立的一个非安全系统与安全系统之间的缓冲区。
简答来说:DMZ就是将内网与外网进行隔离,存放一些必须公开的服务器设施,用来对外提供服务。
办公区
公司员工日常的工作区,一般会安装防病毒软件、主机入侵检测产品等。办公区般能够访问DMZ。如果运维人员也在办公区,那么部分主机也能访问核心数据区(很多大企业还会使用堡垒机来统一管理用户的登录行为)。
攻击者如果想进入内网,一般会使用鱼叉攻击、水坑攻击,当然还有社会工程学手段。办公区人员多而杂,变动也很频繁,在安全管理上可能存在诸多漏洞,是攻击者进入内网的重要途径之一。
核心区
存储企业最重要的数据、文档等信息资产,通过日志记录、安全审计等安全措施进行严密的保护,往往只有很少的主机能够访问。从外部是很难直接访问核心区的。
一般来说,能够直接访问核心区的只有运维人员或者IT部门的主管,所以,攻击者会重点关注这些用户的信息(攻击者在内网中进行横向移动攻击时,会优先查找这些主机)
五、域权限
首先要理解一下组的概念,在组里包含了很多用户,当管理员想要给某个用户分配权限时,只需要将用户加入到对应权限的组里就行,从而提高了管理效率,常见的组有:域本地组、全局组、通用组。
域本地组
多域用户访问单域资源(访问同一域),不能嵌套在其他组中,只能在其所在域内指派权限
全局组
单域用户访问多域资源(必须是同一域里面的用户),能够嵌套在其他组中,可在域林中的任何域指派权限
通用组
多域用户访问多域资源,成员信息不保存在域控制器中,而是保存在全局编录(GC)中,任何变化都会导致全林复制
A-G-DL-P策略
A:Account,用户账号
G:Global Group,全局组
U:Universal Group,通用组
DL:Domain Local Group,域本地组
P:Permission,许可,资源权限
先将用户账号添加至全局组中,再将全局组添加至域本地组中,然后为域本地组分配资源权限
域内权限解读
域本地组:来自全林作用于本域
全局组:来组本域作用于全林
通用组:来自全林作用于全林
本地域组的权限
Administrators(管理员组) ————最重要的权限
Remote Desktop Users(远程登录组)
Print Operators(打印机操作员组)
Account Operators(帐号操作员组)
Server Operaters(服务器操作员组)
Backup Operators(备份操作员组)
全局组、通用组的权限:
Domain Admins(域管理员组)————最最最重要的权限,一般来说域渗透是看重这个
Enterprise Admins(企业系统管理员组)————最重要的权限,其次是去看重这个权限
Schema Admins(架构管理员组)————最重要的权限
Domain Users(域用户组)
六、内网信息收集
目标资产信息搜集的程度,决定渗透过程的复杂程度。
目标主机信息搜集的深度,决定后渗透权限持续把控。
渗透的本质是信息搜集,而信息搜集整理为后续的情报跟进提供了强大的保证。
Windows
系统相关
#查看系统信息
systeminfo /all
#查看补丁列表
wmic qfe getCaption,Description,HotFixID,InstalledOn
#查看主机开机时间
net statistics workstation
#查看计划任务
schtasks /query /fo LIST /v #query显示所有计划任务
用户相关
#检查当前用户,权限
whoami /user && whoami /priv
whoami /all #查看当前域并获取域SID
#查看在线用户信息
quser
query user || qwinsta
程序相关
#查看杀毒软件
wmic /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntivirusProduct Get displayName /Format:List
#查看安装的程序和版本
wmic product getname,version
#查询运行的进程
tasklist
wmic process list brief
wmic process getprocessid,executablepath,name #显示进程的路径、名称、pid
wmic servicelist brief #查看本机服务
#远程桌面连接历史记录
cmdkey /l
#查看自启动程序列表
wmic startuo getcommand,caption
网络连接相关
#tcp/udp网络连接状态,端口信息
netstat -ano
ipconfig /all #查询本机IP段,所在域等
route print #打印路由信息
arp -a #查看arp缓存,可以发现内网主机
#查看局域网信息
net view #查看同一域内机器列表
net view \\ip #查看某ip共享
net view \\GHQ #查看GHQ计算机的共享资源列表
net view /domain #查看内网存在多少个域
net view /domin:XYZ #查看XYZ域的机器列表
net accounts /domain #查询域用户密码过期等信息
#查看本机共享
net share
wmic share getname,path,status
域相关
#判断是否存在域
net config workstation # 查看当前计算机名,全名,用户名,系统版本,工作站域,登陆的域等
net view /domain # 查看域
#查看主域服务器
net time /domain #主域服务器会同时作为时间服务器
nltest /DCLIST:god #查看域控制器主机名,god为域名
#查看域用户相关信息
net user /domain #显示所在域的用户
net user 域用户 /domain #获取域用户详细信息
net user /domain XXX 123456 #修改用户密码,需要域管理员权限
net group /domain #查看域内用户组列表
net group "domain admins"/domain #获取域管理员列表
net group "domain controllers"/domain #查看域控制器组
net group "domain computers"/domain #查看域机器
#列出域信任关系
nltest /domain_trusts #列出域与域之间的信任关系
#获得域内用户详细信息
wmic useraccount get/all #可以获取到域用户的用户名、描述信息、SID、域名、状态等。
Linux
系统相关
cat /etc/issue #查看系统名称 cat /etc/Lsb-release #查看系统名称,版本号 cat /etc/*release #查看linux发行信息 uname -an #查看内核版本 cat /proc/version #查看内核信息 cat /proc/cpuinfo #查看cpu信息 #查看文件系统 df -a #查看系统日志 sudo cat /var/log/syslog #查看命令记录 cat /root/.bash_history cat ~/.bash_history
用户相关
whoami #查看当前shell权限 id #查看当前用户的权限和所在的管理组 #查看登录信息 w who last #登入过的用户信息 lastlog #显示系统中所有用户最近一次登录信息 #查看账号信息 cat /etc/sudoers cat /etc/group cat /etc/passwd #列出目前用户可执行与无法执行的指令 sudo -l
网络相关
#查询本机IP信息 ifconfig ip a #查看端口信息 netstat -anpt #查看网卡配置 cat /etc/network/interfaces
程序相关
#查看进程信息 ps -ef #标准格式显示 ps aux #BSD格式显示 #资源占有情况 top -c cat /etc/inetd.conf #由inetd管理的服务列表 cat /etc/xinetd.conf #由xinetd管理的服务列表 #查看计划任务 crontab -l ls -al /etc/cron* cat /etc/cron.allow cat /etc/cron.deny cat /etc/crontab #查看开机启动项 /etc/rc.d/init.d/
配置信息
iptables –L #查看防火墙配置(注意需要root权限) cat /etc/resolv.conf #查看dns配置文件 cat /etc/network/interfaces #查看网卡配置文件 cat /etc/apache2/apache2.conf #查看apache配置文件 cat /etc/my.conf #mysql配置 #查看suid文件 find / -perm -u=s -type f 2>/dev/null #最近五天的文件 find / -ctime +1 -ctime -5
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)