如何安全地检查潜在的恶意网站?

信息安全 Web应用程序 恶意软件 卷曲
2021-08-29 14:48:11

有时我对恶意网站背后的内容感兴趣。如果我决定进行检查,我该如何保持安全?我正在寻找比在虚拟机上运行网站更快、更简单的方法。

我应该使用 cURL 并在文件查看器中查看 HTML 源吗?我应该简单地使用在浏览器中查看源代码view-source:http://malicious-website/吗?那些安全吗?

4个回答

为什么不直接将 URL 发送到 Virustotal?访问恶意网站可能很棘手。使用 curl、wget、links -dump 可能会很棘手,具体取决于提供恶意内容的方式。例如:

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{HTTP_USER_AGENT} 
 RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|libwww\-perl|curl|wget).* [NC]
 RewriteRule ^(.*)$ - [F,L]
</IfModule>

使用 mod_rewrite,我可以为您提供非恶意页面。我可以把你送到别处,随心所欲。此外,我可以更改有效负载,例如:我可以将其更改为非恶意的“Hello World”javascript,而不是给你恶意。这可能会诱使您认为我的恶意网站是无害的。

通常,当我必须访问恶意网站时,我有一个运行 burpsuite 进行拦截的虚拟化沙箱、Squid 代理服务器和一些其他工具(noscript、ghostery 等)。出于好奇而访问的最终目的是什么?

访问恶意站点通常是成功或失败,因为您正在与他们控制的他们的软件交谈。无论你做什么,你都无法真正控制它。它可能会在很长一段时间内显示为非恶意,然后打击你。它可能会在您访问它时尝试攻击您。它可以...

因为网站实际上存在无限可能是恶意的,所以您永远无法确定。你所能做的就是使用某种燃烧器设备,探索,但仍然永远不要相信这个网站。曾经。对于任何网站。无论您使用什么协议,危险在于最终您将以某种方式访问​​他们的服务器。在 OSI 模型的每个级别上,您都可以接受有效载荷。如果您只想查看仍然打开连接的选项标题。这真的是一个陷阱22。


请记住,网络是一种信任级别。我相信你会保护我的安全。不过以防万一,我还是会运行杀毒软件,让其他人先访问它。如果他们保持安全足够长的时间,我想我会去看你的。

然后就有可能被黑客入侵。那么你的信任就被打破了。


更糟糕的是试图检查代码。当然你得到一个副本,但副本是什么?网站尽可能长时间地显示为非恶意网站符合最大利益。通常时间源是完全无害的,直到它在某种可以通过大多数测试的非标记站点位置下载有效负载。因此,您将被困在寻找每个链接和源文件并阅读或分析它们的过程中,随着时间的推移,这将花费大量成本。

TL;博士:

你永远不能完全信任一个网站。甚至没有谷歌。网站的实际恶意部分可以放入网站上的任何地方。当然,您可以安全地检查源头,但您可能会得到一种错误的安全感。

如果您绝对必须这样做,请使用刻录机或虚拟机,您可以在它被感染时立即销毁它。有效负载可以在任何地方(HTML 文件、场外 JS/CSS/Vector/app/image/CSV/JSON/file...)。如果您不能基于声誉来信任该站点,那么您根本就无法信任该站点。

很难通过分析源代码来检查网站,因为有些网站中有隐藏代码。您可能想尝试基于声誉的分析。

您可以在浏览器中添加一个插件,以便在单击之前分析该站点。它的例子是 wot,一个插件(信任网络)。 https://www.mywot.com/

您还可以将 URL 发送到免费的 URL 扫描程序。示例是http://zulu.zscaler.com/ 这将检查网站本身。这是一个风险分析工具。

你也可以试试http://urlquery.net/index.php

最常见的基于声誉的分析网站是http://www.urlvoid.com/https://www.virustotal.com/

其他人提到,仅仅检索一个 URL 就可以为主机提供关键信息;通常信息是已阅读电子邮件。

也就是说,我假设安全检查网页的一种不太不舒服或不太复杂的选项是在基于文本的浏览器(如 lynx)中打开 URL(在 Windows 下,可能在 cygwin 环境中)。Lynx 不处理 JavaScript,也不会立即显示图像或其他非文本内容,这使得它不受大多数​​针对主流平台的攻击的攻击(不过,我希望对此发表评论)。