viper:一款中国人写的红队服务器——记一次内网穿透练习

1. viper

1646730398_62271c9e81fb61ff1a4e3.png!small?1646730397447

Viper 是中国人自主编写的一款红队服务器,提供图形化的操作界面,让用户使用浏览器即可进行内网渗透,发布在语雀官方地址 提供了很全面的官方文档,包括四大部分,分别是使用手册、模块文档、博客文章、开发手册,其中使用手册中对其介绍如下:

提供图形化的操作界面,用户使用浏览器即可进行内网渗透集成杀软绕过,内网隧道,文件管理,命令行等基础功能

内置70+个模块,覆盖初始访问/持久化/权限提升/防御绕过/凭证访问/信息收集/横向移动等大类

可视化的内网网络拓扑展示

msfconsole命令行,支持颜色显示,Tab提示

多用户协同

 

Viper 的安装可以参考使用手册的首次安装,使用f8x工具支持在全新的linux环境一键安装viper,接下来话不多说,来试试看

2. 搭建实验环境

申请一台云服务器 搭建一台viper服务器(属于攻击者)- 外网服务器

申请两台云服务器作为网站的服务器来使用(属于被攻击者),分别称为边界网站服务器,内网服务器 - 优刻云服务器

配置防火墙,禁止外网访问内网服务器的所有端口

在边界网站服务器上搭建有 struts2 漏洞的网站,在内网服务器搭建一个自己写的网站

2.1 外网服务器搭建

1.在云平台新建一台外网服务器

1646731425_622720a1cf56262a955e1.png!small?1646731424271

2.在服务器搭建 viper

用MobaXterm远程连接,选ssh,root,默认22端口

根据首次安装的命令一行一行执行

docker ps:列出所有在运行的容器信息(检验docker安装成功)

1646731219_62271fd3e546303e52489.png!small?1646731218247

chmod +x /usr/bin/docker-compose:为/usr/bin/docker-compose这个文件添加执行权限

内存小于 2G的那些命令不执行

export VIPER_PASSWORD=AqZd@123456(用户名root,一会登录viper的密码)

cat /root/VIPER/docker-compose.yml :查看密码是否写入

访问 https://yourip:60000登录,把yourip换成服务器的ip地址

1646731673_62272199672fbb4efdca4.png!small?1646731671931

载荷就是木马,meterpreter_reverse_tcp,回弹木马一定有reverse这个单词,其中tcp协议的最稳定

1646731564_6227212cbbabade29346e.png!small?1646731563168

3. 添加防火墙规则

只开放22端口和60000端口,22端口用于SSH连接,60000端口用于回弹访问和内网服务器访问

1646731632_62272170eb565e1a0bdf1.png!small?1646731631386

2.2 边界Web服务器和内网服务器搭建

1. 添加防火墙规则

1646732160_62272380d7f1482979831.png!small?1646732159351

内网服务器:1-65535的端口,拒绝访问

1646732193_622723a121f92bc819ae6.png!small?1646732191569

边界服务器:开放3389(远程桌面) 8080 80端口

1646732203_622723ab5ac7a358fe432.png!small?1646732201769

2. 新建两台云服务器

windows的2008年64位主机

1646732261_622723e55fba4e4a113f3.png!small?1646732259777

3.mstsc 远程尝试连接

1646732317_6227241dcc9deb9e3b006.png!small?1646732316150

点显示选项,改用户名

1646732327_622724277ca20df0c1d2d.png!small?1646732325895

两台服务器都能远程连接

1646732343_62272437db8fac0c8e371.png!small?1646732342210

若把内网服务器的外网防火墙改变为之前新建的内网防火墙(关联产品操作-更换外网防火墙)

1646732353_62272441de7295cbce107.png!small?1646732352253

1646732360_622724488141f43962438.png!small?1646732358836

更改防火墙后无法远程连接

只能在边界服务器里可以用内网服务器的内网地址进行远程连接

1646732370_62272452c40e8ecd1f051.png!small?1646732369113

远程套娃连接

4. 上传需要的文件

内网服务器搭建——内网服务器(上传时,得先开放3389远程连接端口)

外网服务器环境——边界Web服务器

1646732512_622724e09a4638ecededc.png!small?1646732510944

4.1 边界服务器 - 有struts框架漏洞的站

1. Java 运行环境

点击 jdk.exe,下载 Java

根据word文档配置 Java 环境变量

2. 解压 apache-tomcat-7.0.109-windows-x86 压缩包,并为了简洁明了改名为 tomcat

3. 解压 struts-2.0.9-apps

只需要一个 war 包,复制

1646732615_62272547eb25b473f4041.png!small?1646732614373

  • 粘贴到 tomcat的webapps 下,为了便于后续访问,改名为struts2

1646732639_6227255f8cfe6514b1cc4.png!small?1646732637901

启动 tomcat(启动tomcat会自动部署一个web的网站应用,struts的war包会自动部署)

1646732669_6227257db05100f2c574c.png!small?1646732668052

4. 新增防火墙规则,放开边界web服务器的8080端口

1646732743_622725c78d749a844ecc0.png!small?1646732741969

新增后如下

1646732698_6227259a6eb372cf13dd2.png!small?1646732697829

改变边界Web服务器的防火墙规则

5. tomcat 默认端口为8080,访问边界Web服务器的8080端口

1646732768_622725e031470f0fcab4b.png!small?1646732766878

然后访问 http://106.75.107.15:8080/struts2

(struts框架的网站:struts1是 .do结尾,struts2是 .action结尾)谷歌搜索filetype:.action

1646732778_622725ea45fa5da80cd60.png!small?1646732776609

4.2 内网服务器 - php的站

1646732891_6227265b3a43490307948.png!small?1646732889548

下载xamp

把防火墙改为之前的内网防火墙

3. 攻击者服务器(自己的虚拟机)

1646732945_62272691931b6e03daaab.png!small?1646732944023

1. struts2 工具检测 边界服务器 并上传冰蝎马

把 http://106.75.107.15:8080/struts2/example/HelloWorld.action(边界服务器) 用 struts2 工具扫描

1646732986_622726baac510785c4d21.png!small

发现漏洞后不用操作,直接执行whoami,发现获得了(边界服务器)administrator权限

(返回的数据量有限,只能返回一行,但可以传木马解决)

1646733012_622726d4b86dce5111b5c.png!small?1646733011076

上传冰蝎马,把冰蝎的马:shell.jsp 打开,复制

1646733026_622726e2e71b9b3e4079c.png!small?1646733025276

粘贴到上传框,改名为404.jsp,上传

1646733039_622726efaea8ea13409c1.png!small?1646733038090

上传成功后,访问一下http://106.75.107.15:8080/struts2/404.jsp,不报错则存在此文件

1646822136_622882f85b16c67d9d9a5.png!small?1646822135830

2. 用冰蝎连接,上传viper马到 边界服务器

冰蝎连接边界Web服务器

1646822149_62288305746f581c01f7c.png!small?1646822148960

1646822184_62288328804760c3549c6.png!small?1646822184100

在外网服务器 viper 生成监听载荷(木马)

1646822193_62288331b1ceb8aee0795.png!small?1646822193219

生成的马是java 的 tcp 回弹类型

1646822206_6228833e2091cc146919b.png!small?1646822205557

自动迁移到进程explorer.exe(此进程是windows特有的开机则运行的桌面进程)

生成后,打开所在文件夹,改名ma.war

冰蝎给边界Web服务器上传生成的 viper 马——ma.war

网站8080端口的根目录是 C:/tomcat/webapps/

1646822219_6228834b2e94283d6aa23.png!small?1646822218713

3. 访问ma,viper(外网服务器)成功连接 边界服务器

访问 http://106.75.107.15:8080/ma 之后,viper 成功连接主机

右键,可以进行操作(15秒是读秒,每60秒连接一次)

1646822235_6228835bd69c62e736db0.png!small?1646822235518

4. 给viper(外网服务器)上 边界服务器 中 添加内网路由

把外网服务器当做路由器,把内网服务器所在段添加进路由表

命令行终端:ipconfig,查看到一个接口的内网ip

1646822245_622883658d307b541d306.png!small?1646822245036

添加内网路由:自动新增,可以再手动新增 10.9.141.0 的段(解析结果失败没事,刷新就有了)

1646822251_6228836b501df32e64760.png!small?1646822250807

5. viper(外网服务器:149.28.57.80)新增代理(打隧道)

使发送给外网服务器的请求,能转发到边界服务器和内网服务器

点击内网代理中的新增代理

1646822257_62288371ca01e78c3238e.png!small?1646822257297

开放外网服务器的9090端口

1646822263_6228837797274d198c809.png!small?1646822263080

6. 攻击者服务器给 viper 做代理

Proxifier - 配置文件 - 代理服务器 - 添加

1646822283_6228838ba8d70f563be8d.png!small?1646822283157

填入外网服务器的ip地址,上文中新增代理的端口和协议

点击检查

1646822295_622883979e2afd3d5a17b.png!small?1646822295083

检查会通过 viper代理服务器 去上网,去访问百度

1646822307_622883a3a7787a5294f23.png!small?1646822307156

全部点确定

Proxifier - 配置文件 - 代理规则

1646822318_622883aed247f51c7e2fe.png!small?1646822318303

连接本机127.0.0.1的是直连,其他访问默认走代理(现在可以在攻击者服务器,用内网服务器的内网ip去连远程桌面,关闭代理则连接不到)

1646822325_622883b54b37b0ea7cb21.png!small?1646822324757

7. 弱口令扫描内网服务器

目标是内网服务器的内网ip,正常应该是 10.9.141.1-10.9.141.254 一个段去跑,不止测SMB,挨着个的去跑(SMB(全称是Server Message Block)是一个协议名,它能被用于Web连接和客户端与服务器之间的信息沟通

1646822335_622883bf83920fdf74698.png!small?1646822335080

导入密码:

1646822340_622883c4dae36b97fbde7.png!small?1646822340508

扫描成功,得到用户名、密码

此时在走代理,所以Proxifier会有流量包

1646822401_622884016606aa4804586.png!small?1646822401039

4. 攻击过程总结

  1. 利用 struts2 攻击边界web服务器

  2. 写入冰蝎木马

  3. viper - 监听载荷 - 生成载荷

  4. 选择反弹的Java载荷

  5. 设定lport:6666

  6. 载荷类型:war

  7. 重命名war为 ma.war

  8. 冰蝎把ma.war上传到tomcat\webapp\目录下

  9. 刷新冰蝎的目录如果生成了ma这个目录

  10. 访问:http://ip:8080/ma 地址,会发现viper这面木马上线

  11. 在viper上线的主机上右键点选内网路由

  12. 添加路由,建议使用自动生成路由

  13. 内网代理 - 新增代理 - 设定代理端口

  14. Proxifier 中设定代理地址和端口号(ip写viper的ip,端口写上一步设定的端口号)

  15. 使用攻击工具访问探测和攻击内网服务器

题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

  • 2023届全国高校毕业生预计达到1158万人,就业形势严峻;
  • 国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。

 “没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。 

网络安全行业特点

1、就业薪资非常高,涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

 2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。

 行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

 1.学习路线图 

 攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

 

 (都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。 

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。 

 还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

 最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取 

  

  • 16
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值