【THM】Active Reconnaissance(主动侦察)-初级渗透测试

介绍

在网络安全模块的第一个房间里,我们主要进行被动侦察。在第二个房间中,我们重点关注主动侦察以及与之相关的基本工具。我们学习使用网络浏览器来收集有关我们目标的更多信息。此外,我们讨论使用简单的工具(例如pingtraceroutetelnet和 )nc来收集有关网络、系统和服务的信息。

正如我们在上一个房间中了解到的那样,被动侦察可以让您在没有任何直接接触或连接的情况下收集有关目标的信息。您正在远处观看或查看公开信息。

主动侦察需要您与目标进行某种接触。这种联系可以是通过电话或以某种借口访问目标公司以收集更多信息,通常作为社会工程的一部分。或者,它可以直接连接到目标系统,无论是访问他们的网站还是检查他们的防火墙是否打开了SSH端口。想象一下,您正在仔细检查窗户和门锁。因此,重要的是要记住,在获得客户签署的法律授权之前,不要从事主动的勘察工作。

在这个房间里,我们专注于主动侦察。主动侦察从与目标机器的直接连接开始。任何此类连接都可能会在日志中留下显示客户端 IP 地址、连接时间和连接持续时间等信息。然而,并非所有联系都是可疑的。可以让您的主动侦察表现为常规的客户活动。考虑网页浏览;没有人会怀疑与数百名其他合法用户中的目标 Web 服务器连接的浏览器。当您作为红队(攻击者)的一部分工作并且不想惊动蓝队(防御者)时,您可以使用这些技术来发挥自己的优势。

在这个房间里,我们将介绍大多数操作系统通常捆绑或容易获得的各种工具。我们从网络浏览器及其内置的开发工具开始;此外,我们还将向您展示如何“武装”网络浏览器,使其成为高效的侦察框架。然后,我们讨论其他良性工具,例如pingtraceroutetelnet。所有这些计划都需要与目标建立联系,因此我们的活动将受到主动侦察。

任何想要熟悉基本工具并了解如何在主动侦察中使用它们的人都会对这个房间感兴趣。尽管 Web 浏览器开发人员工具提供了图形用户界面,但它可能需要一些努力才能熟悉。所涵盖的命令行工具使用起来相对简单。

网页浏览器

Web 浏览器是一个方便的工具,尤其是它可以在所有系统上轻松使用。您可以通过多种方式使用 Web 浏览器收集有关目标的信息。

在传输级别,浏览器连接到:

  • HTTP访问网站时默认TCP端口80
  • HTTPS访问网站时默认TCP端口443

由于 80 和 443 是HTTP和 HTTPS 的默认端口,因此 Web 浏览器不会在地址栏中显示它们。但是,可以使用自定义端口来访问服务。例如,https://127.0.0.1:8834/ 将通过 HTTPS 协议连接到 127.0.0.1 (localhost) 的端口 8834。如果有 HTTPS 服务器正在侦听该端口,我们将收到一个网页。

浏览网页时,您可以按Ctrl+Shift+IPC 上的 或Mac 上的Option + Command + I( ) 打开 Firefox 上的开发者工具。⌥ + ⌘ + I类似的快捷方式也可以帮助您开始使用 Google Chrome 或 Chromium。开发人员工具可让您检查浏览器已接收并与远程服务器交换的许多内容。例如,您可以查看甚至修改 JavaScript (JS) 文件、检查系统上设置的 cookie 并发现网站内容的文件夹结构。

下面是 Firefox 开发者工具的屏幕截图。 Chrome DevTools 非常相似。

Firefox 和 Chrome 也有很多插件可以帮助进行渗透测试。这里有一些例子:

  • FoxyProxy可让您快速更改用于访问目标网站的代理服务器。当您使用 Burp Suite 等工具或需要定期切换代理服务器时,此浏览器扩展非常方便。您可以从此处获取适用于 Firefox 的 FoxyProxy 。
  • 用户代理切换器和管理器使您能够假装从不同的操作系统或不同的 Web 浏览器访问网页。换句话说,您可以假装使用 iPhone 浏览某个网站,而实际上您是通过 Mozilla Firefox 访问该网站。您可以在此处下载适用于 Firefox 的用户代理切换器和管理器。
  • Wappalyzer提供有关所访问网站所使用技术的见解。此类扩展很方便,主要是当您像其他用户一样浏览网站时收集所有这些信息时。 Wappalyzer 的屏幕截图如下所示。您可以在此处找到适用于 Firefox 的 Wappalyzer 。

随着时间的推移,您可能会发现一些非常适合您的工作流程的扩展。

2.1浏览到以下网站并确保您已在 AttackBox Firefox 或计算机上的浏览器上打开开发人员工具。使用开发人员工具计算问题总数。答案:8

找到 JavaScript 文件 script.js。检查文件并计算出问题总数。

ping

Ping 应该会让您想起乒乓球运动。你把球扔出去并期望把它拿回来。 ping 的主要目的是检查您是否可以到达远程系统以及远程系统是否可以返回您。换句话说,最初,这是用来检查网络连接的;然而,我们更感兴趣的是它的不同用途:检查远程系统是否在线。

简单来说,ping 命令将数据包发送到远程系统,然后远程系统进行回复。这样,您就可以断定远程系统已在线并且两个系统之间的网络正在运行。

如果您更喜欢更挑剔的定义,则 ping 是一个将 ICMP Echo 数据包发送到远程系统的命令。如果远程系统在线,并且 ping 数据包已正确路由且未被任何防火墙阻止,则远程系统应发回 ICMP 回显应答。同样,如果路由正确且未被任何防火墙阻止,则 ping 回复应到达第一个系统。

此类命令的目的是确保目标系统在线,然后再花时间进行更详细的扫描以发现正在运行的操作系统和服务。

在 AttackBox 终端上,您可以开始使用 ping asping 10.10.xx.xxxping HOSTNAME。在后者中,系统需要在发送 ping 数据包之前将 HOSTNAME 解析为 IP 地址。如果您没有在Linux系统上指定计数,则需要单击CTRL+c以强制其停止。因此,您可能会考虑ping -c 10 10.10.xx.xxx是否只想发送十个数据包。这相当于ping -n 10 10.10.xxx.xxx在 MS Windows 系统上。

从技术上讲,Ping 属于 ICMP(互联网控制消息协议)协议。 ICMP 支持多种类型的查询,但我们特别感兴趣的是 ping(ICMP 回显/类型 8)和 ping 回复(ICMP 回显回复/类型 0)。使用 ping 不需要了解 ICMP 详细信息。

在下面的示例中,我们将数据包总数指定为 5。从 AttackBox 的终端,我们开始 ping 10.10.xxx.xxx。我们了解到它10.10.xxx.xxx已启动并且不会阻止 ICMP 回显请求。此外,数据包路由上的任何防火墙和路由器也不会阻止 ICMP 回显请求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/786785.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos7 安装 nginx

一、yum 方式安装 1.安装yum工具 sudo yum install yum-utils 2. 安装epel yum install epel-release 3.安装nginx: yum install nginx 4.查看版本 nginx -v 5.设置开机自启动 systemctl enable nginx nginx 常用命令: 1)启动nginx …

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog co…

探讨在大数据体系中API的通信机制与工作原理

** 引言 关联阅读博客文章:深入解析大数据体系中的ETL工作原理及常见组件 关联阅读博客文章:深入理解HDFS工作原理:大数据存储和容错性机制解析 ** 在当今数字化时代,数据已经成为企业发展和决策的核心。随着数据规模的不断增长…

计算机组成原理实验(汉字编码实验)

(汉字编码实验) 海明校验码实验

Yarn 包管理器入门指南

一、Yarn 的由来 Yarn 是一个新的 JavaScript 包管理工具,由 Facebook 的工程师们开发,于 2016 年发布。Yarn 的诞生源于 NPM 在使用过程中遇到的一些痛点,如网络效率低下、缓存混乱、安装速度慢等问题。Yarn 秉承了 NPM 的部分理念,同时也做出了一些创新,以期提供更高效、安全…

每天五分钟计算机视觉:如何基于滑动窗口技术完成目标的检测?

汽车检测算法 现在我们想要构建一个汽车检测算法,我们希望输入到算法中一张图片,算法就可以帮助我们检测出这张图片中是否有汽车。 数据集 首先创建一个标签训练集,x是样本,y是标签。我们的训练集最好是被剪切过的图片,剪掉汽车以外的部分,使汽车居于中间位置,就是整张…

LeetCode-240. 搜索二维矩阵 II【数组 二分查找 分治 矩阵】

LeetCode-240. 搜索二维矩阵 II【数组 二分查找 分治 矩阵】 题目描述:解题思路一:从左下角或者右上角元素出发,来寻找target。解题思路二:右上角元素,代码解题思路三:暴力也能过解题思路四:二分…

家庭网络防御系统搭建-配置流量镜像到NDR系统

由于需要将家庭网络中的全部流量送到NDR分析系统进行分析,因此需要一个具备流量镜像功能的交换机或者路由器。在前面文章所提及的家庭网络架构中,需要一台交换机即可拷贝东西向流量以及南北向流量。当然如果家庭中的路由器或者其他设备具备交换机镜像功能…

基于单片机智能数字温度采集报警器系统设计

**单片机设计介绍,基于单片机智能数字温度采集报警器系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机智能数字温度采集报警器系统设计的核心目标是通过单片机实现温度的实时采集、显示以及超温报警…

多层感知机与DNN算法

多层感知机与DNN算法 神经网络与深度学习神经网络深度神经网络深度学习常见分类及应用 ensorFlow编程模型1 操作2 张量3 变量4 会话 3 TensorFlow 运行模式构建神经网络模型的工具指南1. 安装 TensorFlow2. 常见深度学习算法的库函数 其他机器学习算法:机器学习实战…

深度学习_NLP常用库报错问题解决

1、SpaCy can‘t find model ‘zh_core_web_sm‘. It doesn‘t seem to be a python package or a valid path to a data 或者 can‘t find model ‘en_core_web_sm‘. It doesn‘t seem to be a python package or a valid path to a data 安装最新的版本: en_…

C++项目——集群聊天服务器项目(七)Model层设计、注册业务实现

在前几节的研究中,我们已经实现网络层与业务层分离,本节实现数据层与业务层分离,降低各层之间的耦合性,同时实现用户注册业务。 网络层专注于处理网络通信与读写事件 业务层专注于处理读写事件到来时所需求的各项业务 数据层专…

【经典算法】LeetCode 20:有效的括号(Java/C/Python3实现含注释说明,Easy)

有效的括号 题目思路及实现方式一:栈(推荐)思路代码实现Java版本C版本(由于C语言需要自己实现栈较为繁琐,此处使用C)Python3版本 复杂度分析 方式二:递归法思路代码实现Java版本C语言版本Python3版本 复杂度分析 总结相…

UE5 SQLite笔记

开发环境: 系统:Windows 10 64 bit 引擎:Unreal Engine 5.1.1 IDE:JetBrains Rider 2023.2.1 语言:C 工具:DB Browser for SQLite SQLite数据类型: //INTEGER TEXT BLOB REAL NUMERIC/*integer…

Docker 设置redis 集群

安装Docker: 首先确保你的系统上已经安装了Docker和Docker Compose。你可以根据官方文档进行安装:https://docs.docker.com/get-docker/ 编写Docker Compose文件: 创建一个Docker Compose文件(例如docker-compose.yml&#xff09…

关于OpenFeign的返回类型包装问题

在一天夜里。我在使用feign的调用时,突然出现了一点点问题。 就是对于feign类型的包装问题。产生了疑问。 在后来,也就是今天。在网上取取经。看到了一个答案。说:feign的调用会有一个编码器和解码器。 使用feign的解码器。他的原理也很简…

NoSQL之Redis配置

文章目录 NoSQL之Redis配置一、关系数据库和非关系数据库1、关系型数据库2、非关系型数据库3、非关系型数据库产生背景4、关系型数据库和非关系型数据库的区别4.1 数据存储方式不同4.2 扩展方式不同4.3 对事务性的支持不同 5、总结5.1 关系型数据库5.2 非关系型数据库 二、Redi…

Linux中关于文件管理方面常用命令行介绍

Linux操作系统以其高效的文件管理系统而著称,它提供了丰富的命令行工具来管理文件和目录。这些命令行工具使得用户可以轻松地创建、复制、移动、删除和查找文件,以及修改文件的权限和所有权。下面将介绍一些Linux中关于文件管理方面常用的命令行工具。 …

Linux中关于驱动方面常用命令行介绍

Linux中关于驱动方面的常用命令行涵盖了多个方面,包括驱动加载与卸载、设备查看与管理、驱动信息查询以及驱动开发等。以下是一些常用的命令行工具及其功能介绍: 驱动加载与卸载: insmod:加载指定内核模块(驱动&#x…

基于springboot实现房屋租赁管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现房屋租赁系统演示 摘要 房屋是人类生活栖息的重要场所,随着城市中的流动人口的增多,人们对房屋租赁需求越来越高,为满足用户查询房屋、预约看房、房屋租赁的需求,特开发了本基于Spring Boot的房屋租赁系统。 …