热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【技术分享】如何构建自己的渗透测试环境

译者:興趣使然的小胃预估稿费:140RMB投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿一、前言扪心自问一下,你是想成为一个激情四射的渗透测试者,还是一个无法无天的黑客?万事开头

https://img8.php1.cn/3cdc5/1e789/807/0aee0e5a589abc1e.png


译者:興趣使然的小胃

预估稿费:140RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿

一、前言

扪心自问一下,你是想成为一个激情四射的渗透测试者,还是一个无法无天的黑客?万事开头难,你想先从基础学起,于是在Google上搜索“hacking”、“hacker”等一堆关键词,结果得到一堆弱智的教程,比如,有的教程教你如何使用alfa awus036h网卡来黑掉邻居的wpa网络(然而你并没有成功!),然后你找到一些论坛,论坛上充斥着各种话题,如恶意软件、僵尸网络、漏洞利用技术以及比特币。你问了些细节问题,但没有得到你想要的答案,一段时间后,你终于开始对这个方向有个大体上的了解。你没有放弃,继续查阅书籍、课程、访问相关网站(如DeepDotWeb这个网站),最后你自豪地说自己已经知道如何成为一名真正的黑客。但现在你真的是一名黑客吗?还没有。你了解相关知识、大概理解整体框架,但你还需要训练。你需要自己动手,这也是提升黑客技能的唯一途径。然而你肯定不想在监狱里度过余生,所以最好还是搭建自己的渗透测试实验室,这样你就可以在不触碰法律的前提下进行黑客实验。

http://p5.qhimg.com/t01631d40cd764b0103.png

二、可选项

你当然可以选择安装Metasploitable。Metasploitable由Metasploit平台的开发者创建而成,是一个专用的存在漏洞的操作系统,外表看起来就如同virtualbox虚拟机中的命令行终端(该系统没有图形界面)。然而本文并不是Metasploitable学习教程,因此我会给你介绍另一种可选方案。在本文中,我们会下载几个操作系统镜像,在Virtual Box中安装这些镜像,然后通过pfSense这个软件将这些系统连接起来。


三、pfSense

pfSense是为企业设计的开源防火墙,是许多商业防火墙的替代解决方案。官网对pfSense的介绍如下:

“pfSense项目是一个免费的网络防火墙软件,以自定义内核的FreeBSD操作系统为基础进行构建,使用了第三方免费软件包以提供附加功能。在这些基础上,pfSense软件能够提供与常用商业防火墙相同或者更多的功能,并且不会受到任何人为限制。pfSense已经成为许多大型商业防火墙的替代品,这些防火墙包括Check Point、Cisco PIX、Cisco ASA、Juniper、Sonicwall、Netgear、Watchguard、Astaro等,你能想到的防火墙都在这个名单内。

pfSense软件提供了一个web接口,用来配置软件所包含的各种组件。用户不需要掌握任何UNIX知识,不需要使用命令行进行操作,甚至不需要手动编辑各种防火墙规则集。熟悉商业防火墙的用户可以快速上手,但对不熟悉商业级防火墙的用户来说可能需要一段学习过程。”

首先我们需要执行如下操作:

下载pfSense iso压缩文件。

解压这个文件。

为pfSense创建一个虚拟机。

https://img8.php1.cn/3cdc5/1e789/807/fd406121fc55d078.png

https://img8.php1.cn/3cdc5/1e789/807/7a59fc540a0e7e88.png

分配合适的内存:

https://img.php1.cn/3cd4a/1eebe/cd5/6c257b6ba227cc3e.webp

设置处理器选项:

https://img.php1.cn/3cd4a/1e618/cd5/af17da15769ccb2e.jpeg

现在有个关键点:我们需要启用两块不同的网卡,一块用于桥接网络,一块用于内部网络,这样设置防火墙才能正常工作。

https://img8.php1.cn/3cdc5/1e789/807/efab3e30205cabf7.png

https://img8.php1.cn/3cdc5/1e789/807/1d57ad99503ef0f5.png

点击“OK”,启动pfSense虚拟机:

https://img8.php1.cn/3cdc5/1e789/807/9e27429c0db78bb6.png

选择“Accept these settings”选项:

https://img8.php1.cn/3cdc5/1e789/807/66e2b2061162d9bc.png

然后选择“Quick/Easy Install”:

https://img8.php1.cn/3cdc5/1e789/807/e46e7006b072a12d.png

在快速安装确认界面选择“OK”选项,开始安装过程。整个安装过程需要一段时间,所需时间取决于具体的硬件条件。

https://img8.php1.cn/3cdc5/1e789/807/79fc32614249f715.png

https://img8.php1.cn/3cdc5/1e789/807/88d1991bd4b1b30d.png

选择“standard kernel”选项:

https://img8.php1.cn/3cdc5/1e789/807/8f248e177b8316f2.png

请注意,按下“reboot”选项后,我们需要马上弹出安装光盘,具体操作是点击virtual-box软件的“device”菜单,选择弹出安装介质,如果不这么做,安装过程又会重新开始。

https://img8.php1.cn/3cdc5/1e789/807/dacc623bc5c4d47b.png

安装结束后,呈现在你眼前的是pfSense主菜单。你可以看到之前创建的两块网卡的名称以及对应的IP信息。通常情况下,em0为wan接口,em1为LAN接口。如果你想修改这两个接口的IP地址范围,你可以选择第2个选项,系统会让你选择使用DHCP方式还是手动设置方式来分配IP地址。你也可以将访问方式从https改为http,但最好还是别这么做。这些步骤完成之后,你可以使用浏览器访问防火墙LAN口的IP地址,浏览配置页面。从现在开始,你可以使用非常人性化的图形界面来配置防火墙的各种设置。

四、安装操作系统

现在我们已经尝试安装各种类型的操作系统,利用这个软件将这些系统连接在一起。强烈建议你安装具有不同功能的操作系统(例如开放不同的端口、服务等),以便构建更加真实的网络环境。我给出了一些系统的下载链接,如下所示,你可以自己动手尝试一下。

Mac OS X VMDK by Niresh

Windows Server 2012 R2

Ubuntu 16.04.3 LTS

Kali Linux 2.0

开始你的探索之旅吧少年!


推荐阅读
  • 本文深入探讨了 Prototype.js 框架及其与 JavaScript 原生 toString() 方法之间的区别,适合对前端开发感兴趣的开发者阅读。文章将帮助读者理解两者在功能实现和应用场景上的不同,从而更好地利用这些工具进行高效编程。 ... [详细]
  • 本文探讨了在JavaScript中如何有效地从服务器控件DropDownList中获取绑定的ID值,而非仅仅是显示的文本值。这对于需要根据用户选择动态处理数据的应用场景非常有用。 ... [详细]
  • 采用IKE方式建立IPsec安全隧道
    一、【组网和实验环境】按如上的接口ip先作配置,再作ipsec的相关配置,配置文本见文章最后本文实验采用的交换机是H3C模拟器,下载地址如 ... [详细]
  • 目录一、salt-job管理#job存放数据目录#缓存时间设置#Others二、returns模块配置job数据入库#配置returns返回值信息#mysql安全设置#创建模块相关 ... [详细]
  • 本文详细介绍了如何在预装Ubuntu系统的笔记本电脑上安装Windows 7。针对没有光驱的情况,提供了通过USB安装的具体方法,并解决了分区、驱动器无法识别等问题。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 本文详细介绍了在XAMPP环境中如何修改Apache和MySQL的默认端口号,并确保WordPress能够正常访问。同时,提供了针对Go语言社区和Golang开发者的相关建议。 ... [详细]
  • 本文探讨了如何通过预处理器开关选择不同的类实现,并解决在特定情况下遇到的链接器错误。 ... [详细]
  • 本文将探讨从ASP.NET 1.1到2.0期间编译系统的重要变革。通过对比两个版本的即时编译模型,我们将揭示2.0版本中引入的新特性和改进之处。 ... [详细]
  • 本文详细介绍了ASP.NET缓存的基本概念和使用方法,包括输出缓存、数据缓存及其高级特性,如缓存依赖、自定义缓存和缓存配置文件等。通过合理利用这些缓存技术,可以显著提升Web应用程序的性能。 ... [详细]
  • MySQL中的Anemometer使用指南
    本文详细介绍了如何在MySQL环境中部署和使用Anemometer,以帮助开发者有效监控和优化慢查询性能。通过本文,您将了解从环境准备到具体配置的全过程。 ... [详细]
  • 本文探讨了在 JavaFX 应用程序中使用 TableView 组件时遇到的滚动条问题,特别是当表格数据变化时,水平滚动条无法自动复位至初始位置的情况。 ... [详细]
  • 为什么会崩溃? ... [详细]
author-avatar
丹愿人常久6688
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有