您当前的位置:首页 > 电脑百科 > 安全防护 > 网络安全

详解内网渗透之环境架设

时间:2019-07-15 11:16:32  来源:  作者:

前言

在网络安全领域,内网渗透技术相较于外网攻击技术,往往不易掌握,因为内网数据一般较为敏感,安全从业者不易取得渗透测试授权,从而难以积累经验,本文将阐述如何使用VMware搭建较一个较复杂的企业内网环境,便于安全从业者练习内网渗透或者ctf组织方搭建内网渗透环境。

0×01 网络拓扑

完整的网络拓扑图如下:

图中黄色部分的网络完全由VMware虚拟机实现,环境搭建需要一台最低配置为32G内存8核CPU、120G空余磁盘空间的主机,搭建完毕后,渗透练习者只需按图左侧部分准备一台windows实体机,安装渗透测试软件及kali虚拟机,然后与已经搭建好渗透测试平台的主机进行连接,即可进行环境配置及练习。

架设过程中用到的系统镜像下载地址如下:

0×02架设过程

首先架设公网部分,即下图中蓝色部分:

公网部分包含攻击者的公网出口路由、企业的公网出口路由、攻击者使用的公网windows(win7)和linux(kali)。下面为具体架设过程:

1. 在虚拟机的虚拟网络编辑器中添加4个虚拟网段(VMnet2、VMnet3、VMnet4、VMnet5):

注意将4个网段均设置为“仅主机模式”,且都要取消“将主机虚拟器适配器连接到此网络”以及“使用本地DHCP服务将IP地址分配给虚拟机”选项,4个网段ip设置及作用如下:

VMnet2 111.111.0.0 mask 255.255.0.0 作用:模拟公网网段

VMnet3 172.168.2.0 mask 255.255.255.0 作用:模拟第一层内网网段

VMnet4 10.10.10.0 mask 255.255.255.0 作用:模拟第二层内网网段

VMnet5 192.168.222.0 mask 255.255.255.0 作用:模拟第三层内网网段

2.架设本地出口路由(攻击者的出口路由)

环境中的虚拟路由用的都是爱快路的镜像,安装完毕后的界面如下(系统版本号可能与下载的不太一样,我用的是两年前下载的镜像,不过操作应该是一样的):

安装完毕后,将其初始网卡设为桥接模式,然后再为其添加一张网卡,设为VMnet2模式,同时将两张网卡的mac地址记录下来,因为后面要在虚拟路由设置界面中设置哪张网卡是wan,哪张是lan:

然后选择虚拟路由菜单选项8重启(如果不重启可能导致读取mac地址不正常)。

重启过后,选择菜单1设置网卡绑定,这里需要根据刚才记录下来的mac地址来判断哪张是桥接模式的网卡,哪张是VMnet2的网卡,将那张桥接模式的网卡设置为lan1,VMnet2那张网卡设置为wan1,lan1就是与第一层内网相连的网卡,wan1就是与公网网段相连的网卡,如判断eth0为桥接模式的网卡,则用“set lan1 eth0”来将其设为lan1,然后“set wan1 eth1”将eth1设为虚拟路由的wan口:

然后选择软路由菜单2设置lan地址,依据网络拓扑图,我这里设置路由器1的出口地址为192.168.1.120:

然后选择虚拟路由菜单3设置web端口,我这里设置为8080,随后就可以通过本地实体机访问http://192.168.1.120:8080来继续配置路由器(注意本地实体机要访问虚拟公网,有两种方法:1是设置默认网关为192.168.1.120;2是执行route add 111.111.0.0 mask 255.255.0.0 192.168.1.120添加一条路由):

默认用户名、密码均为admin,登录后,进入外网设置菜单,

设置参数如下图,将router1的wan口地址设置为111.111.111.1:

这样,本地出口路由就设置完毕!

3.架设攻击者的公网vps

安装公网win7及kali都很简单,安装完win7后,设置其网卡模式为VMnet2,进入系统后,设置其ip地址为111.111.111.2,设置密码,并为其开启远程桌面;安装完kali后,设置其网卡模式为VMnet2,进入系统,设置其ip地址为111.111.111.4,然后/etc/init.d/networking restart重启网络服务,但由于kali默认没有开启ssh远程登录,需要按下列步骤为其配置ssh远程连接:

(1)修改/etc/ssh/sshd_config文件,将#PasswordAuthentication no的注释去掉,并将NO修改为YES,将PermitRootLogin without-password修改为PermitRootLogin yes

(2)重启ssh服务:/etc/init.d/ssh restart

(3)设置系统自启动ssh服务:update-rc.d ssh enable

配置完毕后,在本地攻击机远程桌面公网win7,成功则配置正常,在本地用ssh软件(推荐xshell)远程连接公网kali,成功则配置正常。

4.架设软路由router2(企业的出口路由)

配置router2的过程大致与router1相同,注意将其初始的网卡模式设为VMnet2,然后为其添加一块网卡模式为VMnet3,同样记下两张网卡的mac地址,用于稍后的网卡绑定,在网卡绑定中,设置VMnet3模式的网卡为LAN1,设置VMnet2模式的网卡为WAN1,然后配置LAN1的地址为172.168.2.3,web管理端口为8080:

随后进一步的配置需要同样处于VMnet3模式的一台主机访问才能进行,所以我们先安装第一层内网中的一台win7(也就是IP地址为172.168.2.200的那台win7),安装完毕后,将在虚拟机设置中将这台win7其网卡模式配置为VMnet3,进入系统,设置ip为172.168.2.200,掩码255.255.255.0,默认网关172.168.2.3(router2的lan1的地址),设置完成后,通过浏览器访问,默认用户名admin密码admin登录路由web界面,配置router2的外网地址如下图:

配置完毕后,从本地攻击主机ping 111.111.111.3这个地址(即router2的wan1地址),如果正常,则说明配置成功。

至此,模拟环境的公网部分配置完毕了,接下来配置第一层内网,也就是下图中黄色部分:

该层内网中有1台server2008(172.168.2.2)服务器,充当企业对外的门户网站,一台win7作为管理员主机,1台双网卡的centos7(172.168.2.120&&10.10.10.110),代替路由作为第一层与第二层的桥梁。Win7刚刚已经配置过,下面配置server2008与centos7,

安装完毕server2008后设置其网卡模式为VMnet3,ip地址设为172.168.2.2,掩码255.255.255.0,默认网关172.168.2.3(即router2的lan1地址),然后在其上安装phpstudy,并架设一个存在漏洞的cms,作为外网突破点,为了让外网能够访问这台server2008上的web服务,必须在router2上做一端口映射,具体操作如下,利用ip地址为172.168.2.200的win7登录router2的web管理界面http://172.168.2.3:8080,做一个端口映射:

让server2008的网站能够暴露在公网上,端口映射配置参数如下:

配置完成后,从本地攻击机访问http://111.111.111.3,可以看到,我们已经可以访问到内网中server2008上的网站了。

然后在172.168.2.200这台win7上启动一个机器人脚本,其内容如下:

While True

set obj = createobject("w.shell")

obj.run "cmd /c iexplore http://172.168.2.2/pdf1.html"

W.Sleep(1000*30)

obj.run "taskkill /IM iexplore.exe"

W.Sleep(1000*30)

Wend

这个脚本的作用是每隔一段时间访问server2008网站上的指定页面,因为等我们拿下server2008后需要对win7做钓鱼,所以做个机器人比较方便。

然后安装centos7,为了减小系统开销,我用的是最小化安装,安装完毕后将其初始网卡模式配置为VMnet3,其为再添加一块网卡,模式配置为VMnet4,centos7配置双网卡工作的坑稍多,说一下步骤:

进入系统,首先输入命令“ip addr”,查看两张网卡名称,这里分别为ens33与ens37:

根据MAC地址,判断哪张网卡需要连接第一层内网,另一张则连接第二层内网,例如确定ens33这张网卡连接第一层内网,则

“cd /etc/sysconfig/network-s/”进入网络配置文件目录,ls查看,

这里的ifcfg-ens33这个配置文件对应ens33这张网卡的配置,我们要配置ens33的网络参数,就要编辑这个文件,vi ifcfg-ens33,编辑文件内容如下:

然后退出vi,下面要编辑ens37这张网卡,先cp ifcfg-ens33 ifcfg-ens37,复制一份配置文件,然后vi ifcfg-ens37,编辑文件内容如下图:

注意:里面的UUID可能需要用uuidgen命令生成。

配置好ens37,使用命令“nmcli con up ens37”,启动ens37,如果没有报错,则“service network restart”重启网络服务,然后用该层内网中win7 ping 172.168.2.120,如果回显正常则说明配置成功。

然后为win7安装ssh软件,登录centos7,将其密码改为win7相同的密码(因为我们要实现一个同密码攻击).

至此,第一层内网配置完毕。

下面配置第二层内网,即下图中黄色部分:

这一层内网模拟企业办公网,所有主机均在域中,首先安装域控主机,即ip为10.10.10.56的server2008主机。

安装完毕server2008系统后,将其网卡模式配置为VMnet4,ip地址设为10.10.10.56,掩码设置为255.255.255.0,默认网关设为10.10.10.254,DNS设为127.0.0.1(因为域中一定需要一台DNS服务器,我们稍后会将DNS服务也安装到这台域控上,所以这里可以设置为127.0.0.1),然后用服务器管理器“添加角色”,添加Active Directory域服务(域名称为domainTest1.com)以及DNS服务器(DNS服务器也可以安装在其他server级别的主机上,不过如果将两者分开安装,需要先安装DNS服务,并在DNS服务的正向查找区域中添加要安装Active Directory域服务的域解析记录,并在安装Active Directory域服务之前正确设置域控主机的dns服务器地址,比较麻烦,所以这里采用域控与DNS服务合并的办法),安装完毕后,需要在DNS的正向查找区域中添加一条主要区域(即域的解析记录):

区域名称填:

添加完成后,域就可以正常工作。如果对这一部分不太清楚,可以读一读《windows server2008R2 Active Directory配置指南》的1-3章相关内容。

域控安装完毕后,我们继续安装该层内网中的其他主机:ip地址为10.10.10.3的win7与10.10.10.88的server2008,安装完毕后将它们的网卡模式均配置为VMnet4,ip地址依照拓扑图上设置,掩码255.255.255.0,网关10.10.10.254,注意DNS都要设置为域控的ip地址即10.10.10.56,设置完毕后,登录两台主机将它们加入域,以win7为例,加入域的方法为:

右击计算机–>计算机名称、域与工作组设置–>更改设置–>计算机名选项页–>更改,将“隶属于”单选框切换到“域”选项:

输入域的名称domainTest1.com,点确定,弹出对话框:

这里输入域管理员的账户及密码,确定后,弹出如下对话框:

表明这台win7成功加入了域domainTest1.com域,重启win7,以域内账号登陆即可。

Server2008加入域的步骤与win7类似,不再赘述,待server2008加入域后,以域管理员账户登陆,安装phpstudy,在8080端口上架设一个企业内部的OA系统:

然后在这台server2008上利用服务器管理器添加角色,安装iis,使其在80端口上能够被第二层内网正常访问,为其添加一个asp页面。该页面通过第三个虚拟路由router3连接到第三层内网的sqlserver2008。至此,第二层内网环境架设完毕。

接下来架设第三层内网,第三层内网模拟企业的核心数据网,与第二层之间使用路由器进行隔离,下图中黄色部分为第三层内网部分:

首先架设虚拟路由,依然先安装爱快路虚拟路由,安装完毕后,虚拟机设置中将其初始网卡模式设为VMnet4(与LAN2相连),然后再为其添加一张网卡,模式设为VMnet5(与LAN3相连),记录下两张网卡的MAC地址,然后进入虚拟路由设置界面,设置网卡绑定为:VMnet4模式的网卡为lan1,VMnet5模式的网卡为lan2:

在设置lan地址中设置lan1地址为10.10.10.200,设置web端口为8080,然后用第二层内网中的win7访问http://10.10.10.200:8080,设置lan2的地址为192.168.222.22

第二层内网的server2008(10.10.10.88)需要访问第三层sqlserver2008数据库(192.168.222.200:1433),而第三层的win10(192.168.222.77)需要访问第二层的server2008上的web服务(10.10.10.88:80),所以需要分别在虚拟路由的lan1与lan2的高级设置中设置“允许其他LAN访问此LAN”:

但如果只是打开LAN互访控制,则第二层内网与第三层内网就会无限制相互访问,降低了安全性,所以添加6条ACL规则:

添加并启用后,可以保证第二层内网内只有ip为10.10.10.88的主机能够访问第三层内网的192.168.222.200的1433端口,在第三层内网中只有192.168.222.77的主机能够访问第二层内网的10.10.10.88的80端口。

第三个虚拟路由安装完毕后,接下来安装第三层内网中的server2008与win10,安装完系统后,分别依照拓扑图设置ip,掩码255.255.255.0,默认网关192.168.222.22。然后在server2008上安装sqlserver2008,并创建名为“test”数据库,执行test.sql数据库脚本,导入test.data的数据,并配置sqlserver2008可以为外网访问,这里配置稍微繁琐,简答介绍一下:

打开SQLserver配置管理器,如下图设置SQLServer网络配置:

然后双击TCP/IP协议,切换到IP地址选项卡,将所有的IP地址下的“活动”、“已启用”均切换为是,也就是让SQLserver在所有IP地址上监听:

最后,在这台主机的“高级安全windows防火墙”配置中添加一条规则,设置通过1433端口:

最后安装ip地址为192.168.222.77的win10,安装完毕后,配置网卡模式为VMnet5,ip地址为192.168.222.77,掩码255.255.255.0,网关192.168.222.22,然后用浏览器访问http://10.10.10.88/index.asp?id=1,出现如下界面,说明第三层内网配置成功。

最后在win10上启动一个vbs脚本机器人,让其自动访问http://10.10.10.88上的页面,因为我们那些第二层内网后要对第三层内的win10做钓鱼攻击。

至此这个三层内网的渗透靶场架设完毕,至此本文的篇幅已经够长了,所以这个靶场的writeup就不仔细写了,下面简单介绍一下攻击思路。

0×03 攻击思路 1. 外网突破

扫描111.111.111.0/24段,发现111.111.111.3:80开放,登录发现网站,awvs扫描发现网站存在SQL注入漏洞,于是注入获取用户名及密码,登录成功后获取网站物理路径,在网站后台中试图上传webshell不成功,通过御剑扫描网站,发现phpmyadmin,用弱口令登录phpmyadmin,试图用MySQL写webshell,发现mysql开启了secure-file-priv开关限制了写文件目录,使用mysql开启日志文件,将日志文件的位置设置为刚才在后台中发现的网站物理路径位置,在sql查询语句中写webshell,成功拿到webshell。

2. 第一层内网渗透

利用webshell上传反向socks5代理软件frpc等,在公网windows上运行frps,使得这台webshell主机的代理客户端与公网windows主机上的代理服务端相连接,这样在本地windows攻击机上安装Proxifier、SocksCap64等软件(kali用proxychains),就可以将攻击流量发送至第一层内网。

通过在本地扫描webshell网段,可以发现172.168.2.200(linux)、172.168.2.120(windows)两台主机,在webshell主机的Apache日志中可以发现172.168.2.120这台主机在不断访问这个页面(robot.vbs的作用),于是用CVE-2018-8174对172.168.2.120进行钓鱼(用法详见压缩包),钓鱼成功后,获取172.168.2.120的msf反弹回话,上传getpass进行密码抓取,然后利用msf的远程桌面开启脚本转出3389到公网kali,远程桌面登录后发现管理员桌面上有ssh软件,联想到该层内网还有一台linux主机,所以猜测这台主机的密码与linux相同,于是尝试用相同密码登录,登录成功,于是拿下linux,第一层内网渗透完毕!

3. 第二层内网渗透

在linux上搜集信息发现双网卡,在10.10.10.0/24网段上进行扫描发现3台主机存活,并且10.10.10.88这台主机上开放了80、8080端口,访问发现phpoa系统,利用任意文件上传POC拿到webshell,然后判断环境为域环境,并且当前登录账户为域管理员账户,于是上传getpass拿到域控密码,利用ipc入侵,拿下域内其他两台主机,第二层内网渗透完毕!

4. 第三层内网渗透

在10.10.10.88上发现还打开了80端口,上面运行着iis服务,并且连接着192.168.222.200上的sqlserver数据库,于是利用sqlserver存储过程执行命令,不过由于router3的acl规则很严格,所以无法进行回话反弹。另外审查10.10.10.88的iis日志,发现192.168.222.77的ie浏览器对其有规律性的访问记录,所以可以利用CVE-2018-15982对其进行钓鱼,不过需要注意的一点是192.168.222.77是一台win10,自带杀毒软件,所以需要对可执行payload进行免杀处理。

架设过程中用到的素材我已上传到网盘:链接:https://pan.baidu.com/s/1NIOIZgVDLgkg7j6Ch5pjwA 提取码:kws9 ,如果在架设过程中遇到问题,欢迎私信联系我。

*本文原创作者:Zzzxbug,本文属于FreeBuf原创奖励计划,未经许可禁止转载



Tags:内网渗透   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
拓扑环境 Kali Linux(攻击机) Centos6.4(web服务器) win7(域成员主机无法上网) win2008R2(域控无法上网) 目的通过Kali Linux拿到域控权限2021最新整理网络安全\渗透测试/安全学习(全...【详细内容】
2021-09-17  Tags: 内网渗透  点击:(90)  评论:(0)  加入收藏
前言这又是一个关于域内基础概念与原理的系列Active Directory 的查询基础语法BaseDNBaseDN 即基础可分辨名称,其指定了这棵树的根。比如指定 BaseDN 为DC=whoamianony,DC=or...【详细内容】
2021-09-06  Tags: 内网渗透  点击:(47)  评论:(0)  加入收藏
近年来,攻击者潜伏在企业内网进行攻击的安全事件屡见不鲜,攻击者在经常会企业的内网进行横向渗透,令防守方防不胜防。因此,我们应该严格控制好网络区域之间的访问规则,加大攻...【详细内容】
2021-07-07  Tags: 内网渗透  点击:(94)  评论:(0)  加入收藏
前言前段时间读了读徐哥的《内网安全攻防》,并复现了部分知识点,写篇文章记录下学习内容。何为隐藏通信隧道技术?意义当我们成功杀入内网并完成信息收集后,下一步要进行的就是判...【详细内容】
2021-06-22  Tags: 内网渗透  点击:(97)  评论:(0)  加入收藏
最近在某地方举行攻防演练的时候进入后台管理拿到了一个 webshell,但是 tasklist /svc 查看进程 360、电脑管家赫然在列,我的小伙伴本来准备使用注入 dll 来达到上线 cs 多人...【详细内容】
2021-05-21  Tags: 内网渗透  点击:(182)  评论:(0)  加入收藏
作者:诺言 转载自:https://www.freebuf.com/articles/web/247287.html前言最近打了几场**,遇到几个内网环境都不通外网,整理下用到的几种不出网内网渗透技巧。socks隧道搭建常用...【详细内容】
2020-08-27  Tags: 内网渗透  点击:(730)  评论:(0)  加入收藏
在渗透测试中,有些工具的运行(例如高版本的Powershell)需要依赖Microsoft .NET Framework 4.0的环境。 而默认配置下,Win7不支持Microsoft .NET Framework 4.0。为了保证工具...【详细内容】
2020-07-03  Tags: 内网渗透  点击:(117)  评论:(0)  加入收藏
偶尔适度的放纵一下,是为了继续道貌岸然的生活,太急了会没有故事,太缓了会没有人生。。。。---- 网易云热评环境:小攻:Kali 2020,ip:192.168.1.133小受:win7 x86,ip:192.168.1.137一、...【详细内容】
2020-07-03  Tags: 内网渗透  点击:(84)  评论:(0)  加入收藏
内网渗透完成信息收集后,流量是否能够正常进出,是内网渗透中需要考虑的地方之一​ ICMP(Internet ControllerMessages Protocol,网间控制报文协议)是TCP/IP协议族的子协议,是一...【详细内容】
2020-06-21  Tags: 内网渗透  点击:(214)  评论:(0)  加入收藏
在kali渗透之内网渗透中,黑客都会想方设法在目标设备中获取重要的文件或资料,其中获得密码就是一件重要的事!小白学习白帽黑客kali渗透,前往下方专栏即可! 什么是mimikatz之前课...【详细内容】
2020-06-19  Tags: 内网渗透  点击:(944)  评论:(0)  加入收藏
▌简易百科推荐
(报告出品方:德勤)数字化转型网络安全及转型挑战在任何行业,保持竞争力都需要快速开发新产品和 服务并推向市场。创新型业务模式不仅仅是简单地将现有 流程数字化,其正在覆盖供应...【详细内容】
2021-12-22  认是    Tags:网络安全   点击:(29)  评论:(0)  加入收藏
10月18号, W3C中网络平台孵化器小组(Web Platform Incubator Community Group)公布了HTML Sanitizer API的规范草案。这份草案用来解决浏览器如何解决XSS攻击问题。 网络安全中...【详细内容】
2021-12-07  实战Java  博客园  Tags:脚本攻击   点击:(20)  评论:(0)  加入收藏
一、背景介绍大家在Linux的日常使用中都晓得如何通过命令行去配置Linux的端口开放规则,但是大家知道如何配置Windows入站出站规则吗?有哪些常见的危险端口呢?如何解决上述问题...【详细内容】
2021-12-01  Kali与编程    Tags:防火墙   点击:(30)  评论:(0)  加入收藏
网络安全服务商Randori公司日前发布了一份调查报告,列出了网络攻击者最有可能攻击或利用的IT资产。在遭遇Solarwinds黑客攻击一周年之际,以及在网络安全(尤其是勒索软件和供应...【详细内容】
2021-10-28  企业网D1net   企鹅号  Tags:网络攻击   点击:(57)  评论:(0)  加入收藏
0x01.背景实验利用Dns Administrators 组成员,通过远程配置Dns服务,进行Dll inject从而实现特权提升。 在域内,Dns server 通常为Dc Server,Dns服务器管理基于rpc,通过调用c:\wi...【详细内容】
2021-10-22  IT影子    Tags:特权提升   点击:(37)  评论:(0)  加入收藏
本文主要介绍和总结了CSRF跨站请求伪造的基本原理和主要防范措施,工作中有用到的朋友不妨收藏转发一下,以备您参考。什么是CSRF?CSRF跨站点请求伪造(Cross—Site Request...【详细内容】
2021-10-13  快乐中恒    Tags:CSRF   点击:(49)  评论:(0)  加入收藏
waf拦截在打某市 Hvv 第一天就找到一个文件上传的点,经过测试,可以直接任意文件上传,没有什么道理。 直接尝试上传 Php 文件,被 waf 拦截了 2021最新整理网络安全/渗透测试/安...【详细内容】
2021-10-11  KaliMa    Tags:防火墙   点击:(56)  评论:(0)  加入收藏
应用程序与文件系统的交互始终是高度安全敏感的,因为较小的功能漏洞很容易成为可利用漏洞的来源。这种观察在web文件管理器的情况下尤其正确,其作用是复制完整文件系统的功能...【详细内容】
2021-09-17  IT野涵    Tags:漏洞链   点击:(56)  评论:(0)  加入收藏
您的苹果手机尽管iPhone比Android更安全,但也可以通过各种方式入侵。避免黑客入侵的最佳方法是警惕奇怪的链接或粗略的应用程序,并仅在必要时提供信息。电池寿命差和性能低下...【详细内容】
2021-09-16  Hackers爱好者    Tags:黑客入侵   点击:(633)  评论:(0)  加入收藏
防火墙一般布置在逻辑区域的入口处,位于三层网络架构的核心和汇聚之间,起到隔离逻辑区域,为逻辑区域创建安全策略的作用。 上面就是应用区的防火墙布置方式,他布置在应用区,可以...【详细内容】
2021-09-03  知来知去    Tags:主备模式防火墙   点击:(109)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条