坑爹网如何审计网站内部的公司网络

在审计公司网络中的分级企业站点时,有一个常见的问题。

如果您在内部工作,您首先使用VPN客户机连接到公司网络。然后,您需要运行审计工具来检查这些页面。

唯一有效的工具是那些你可以直接从你的电脑上运行的工具。例如,尖叫蛙蜘蛛,这是一个可下载的程序。

然而,许多企业站点有数百万的页面,由于时间限制或机器资源,从您的计算机进行爬行是不现实的。

企业基于云的爬虫,如deepcrawler, Ryte, oncrawler等,更适合这类工作。但是,他们不能审计私有网络内部的网站。

除此之外,这还遗漏了许多其他有价值的工具,比如来自谷歌和Bing的URL检查工具,它们对于审核javascript驱动的内容至关重要。

如果您在机构方面工作,您会遇到额外的麻烦,安全性和隐私遵从性现在是与企业合作的要求。在被认为是供应商之前,通常必须完成广泛的安全调查问卷。

专用网络中的准备站点中的内容可能还没有准备好向公众开放。

介绍SEO的网络管理工具

在前面的文章中,我已经提到了了解在开发和IT行业中使用的工具和技术的重要性。在本文中,我将继续说明这一点。

让我介绍几个网络和系统管理员熟悉的工具:ngrok和mitmproxy。

我们可以使用ngrok将私有(需要VPN的)url转换为临时和公共url。我们可以使用mitmproxy对页面进行更改,隐藏和/或混淆内容并保护其隐私。这需要编写简单的Python脚本。

代理和HTTP隧道

在开始使用这些工具之前,让我先介绍一下它们的基本概念。

https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling

“当浏览互联网的不同网络时,代理服务器和HTTP隧道为访问万维网上的内容提供了便利。代理可以位于用户的本地计算机上,也可以位于用户的计算机和Internet上的目标服务器之间的任何位置。这一页概述了一些基本的代理和介绍一些配置选项。

代理和HTTP隧道是中继请求/页面并使它们从一个源站点到另一个源站点可用的标准方法。请浏览链接文章以了解更多关于这个主题的内容。

Ngrok创建HTTP隧道,而mitmproxy是一个反向代理。

这是两个不同的用例,很适合解决我在开始时提到的问题。

使用Ngrok

Ngrok创建HTTP隧道,而且设置和使用非常简单。

假设您的登台站点是https://staging.internal-network.net:8080,您只能在使用VPN客户端连接后才能打开该页面。

您可以临时公开这个站点,以便验证谷歌搜索控制台和Bing网站管理员工具,并在公开的URL上运行URL检查工具(或企业爬虫)。

你可以这样做:

下载并安装ngrok为你的Mac或Windows电脑。

打开终端窗口并启动ngrok。

Ngrok是一个命令行工具,因此需要在shell中运行它并传递参数才能使它工作。

现在让我们创建HTTP隧道和临时URL。

./ngrok http stage .internal-network.net:8080 > ngrok.log 2>&1 &

这里我要求ngrok公开只能从我的计算机端口8080访问的web服务器。我添加了一些额外的命令来将任何错误记录到ngrok.log中,最后希望进程在后台运行,让我输入更多命令。

尾巴ngrok.log

我检查日志没有任何内容,这意味着它应该工作正常。接下来,我需要生成公共URL。

我需要对服务进行一个API调用,该调用将返回一个需要解析的JSON响应。我们将通过下载另一个方便的命令行工具jq来简化这一部分。

假设您还有curl,您可以使用这个命令获得临时URL。

curl -s http://localhost:4040/api/隧道口| jq “.隧道口[0].public_url”

你应该得到一个URL,你可以打开在你的网络浏览器像这样:

“https://f8139ca0f3b9.ngrok.io”

打开后,您将看到内部站点。试着在它上面使用丰富的测试工具(你得到的URL,不是这个例子),它应该可以工作。多酷啊?

因为你不拥有ngrok。io域名,你需要采取额外的步骤,以注册谷歌搜索控制台和Bing网站管理员工具。

您需要创建一个帐户并注册一个您控制的自定义域。

在创建隧道之前,需要进行身份验证。

。/ ngrok authtoken <标记>

然后,在创建隧道时添加另一个参数来指定自定义域。

./ngrok http -hostname=dev.yourdomain.com stage .internal-network.net:8080 > n

滚动至顶部