本文相关的TryHackMe实验房间链接:https://tryhackme.com/r/room/searchskills
本文相关内容:学习有效地搜索互联网并使用专门的搜索引擎和技术文档。
介绍
在 Google 上快速搜索“学习网络安全-learn cyber security”返回了约 6 亿次点击,而搜索“学习黑客攻击-learn hacking”则返回了该数字的两倍多!当你完成本文内容的学习时,这个数字可能会进一步增加。
我们正在被海量的信息所包围。面对信息超载,你是否愿意投降并接受最初可获得的一些搜索结果?或者你想获得必要的搜索技能来查找和访问你正在寻找的内容吗(本文旨在帮助你解决这个问题)?
学习目标
本文的目标是教授以下知识:
- Evaluate information sources:评估信息来源
- Use search engines efficiently:有效地使用搜索引擎
- Explore specialized search engines:探索网络安全世界专用的一些搜索引擎
- Read technical documentation:阅读技术文档
- Make use of social media:利用社交媒体
- Check news outlets:检查新闻媒体
答题
检查你在常规的搜索引擎中搜索learn hacking将获得多少结果。截至撰写本文时,我们在 Google 上搜索时得到了 11 亿条结果。
评估检索结果
在互联网上,每个人都可以发表自己的作品,它可以是博客帖子、文章或社交媒体帖子的形式,它甚至可以通过更微妙的方式进行,例如编辑公共的维基页面,这种能力使得任何人都可以表达他们毫无根据的主张。例如:每个人都可以表达自己对最佳网络安全实践、未来编程趋势以及如何最好地准备DevSecOps面试的看法。
而作为各种信息的读者,我们的工作就是评估这些信息。如下所示,我们将提到评估信息时需要考虑的一些事项:
- Source(来源): 标识发布信息的作者或组织。考虑他们在该主题上是否有信誉和权威。发表博客文章并不会使人成为该主题的权威。
- Evidence and reasoning(证据和推理):检查主张是否有可信的证据和逻辑推理支持。我们正在寻求确凿的事实和确凿的论据。
- Objectivity and bias(客观性和偏见):评估信息的呈现是否公正、合理,反映多种观点。我们对作者推动不正当的议程不感兴趣,无论是推销产品还是攻击竞争对手。
- Corroboration and consistency(证实和一致性):通过多个独立来源的证实来验证所提供的信息。检查多个可靠且有信誉的来源是否同意中心主张。
答题
你如何称呼被视为伪造或欺诈的加密方法或产品?
snake oil
在 Linux 系统中替换netstat
的命令名称是什么?
ss
搜索引擎
我们每个人可能都使用过互联网搜索引擎;然而,并不是每个人都尝试过利用互联网搜索引擎的全部功能。几乎每个互联网搜索引擎都允许你进行高级搜索,考虑以下示例:
- Google 谷歌
- Bing 必应
- DuckDuckGo
让我们考虑一下 Google 支持的搜索运算符。
"exact phrase"
: 双引号表示你正在查找包含精确单词或短语的页面。例如,人们可能会搜索"passive reconnaissance"
来获取包含该短语的网络页面。site:
: 此运算符允许你指定要将搜索限制到的域名。例如,我们可以使用以下方式在 TryHackMe 上搜索成功案例site:tryhackme.com success stories
。-
: 减号允许你省略包含特定单词或短语的搜索结果。例如,你可能有兴趣了解金字塔(pyramids),但不想查看旅游(tourism)网站;一种方法是搜索pyramids -tourism
或-tourism pyramids
。filetype:
: 这个搜索运算符对于查找文件而不是网页来说是必不可少的。你可以使用Google搜索支持的一些文件类型,包括可携式文件格式(PDF-Portable Document Format)、Microsoft Word文档 (DOC-Document )、Microsoft Excel电子表格 (XLS-Excel Spreadsheet) 和Microsoft PowerPoint演示文稿 (PPT-PowerPoint Presentation)。例如,如果要查找以网络安全为主题的演示文稿,请尝试搜索filetype:ppt cyber security
。
tips:exact phrase(精确短语)——指在搜索引擎或数据库中使用引号将词组括起来,以确保搜索结果中只包含完全匹配该词组的内容。
你可以在此高级搜索操作符列表中查看各种搜索引擎中的更多高级控件,上述内容只是提供了一个很好的起点。请检查你最喜欢的搜索引擎中所支持的搜索运算符。
答题
你如何将 Google 搜索限制为包含术语“网络战报告(cyber warfare report)”的PDF文件?
filetype:pddf cyber warfare report
Linux 命令ss
代表什么短语?
Socket Statistics
专用的搜索引擎
尽管你可能比较熟悉互联网搜索引擎;但是,你对一些专用的(specialized)搜索引擎又了解多少呢?这里指的专用搜索引擎是用于查找特定类型结果的搜索引擎。
Shodan
让我们从Shodan搜索引擎开始,它是一个针对连接到互联网的设备的搜索引擎。它允许你搜索特定类型和版本的服务器、网络设备、工业控制系统和物联网设备。你可能想查看有多少服务器在运行Apache 2.4.1 以及这些服务器在各个国家/地区的分布情况。为了找到相关答案,我们可以使用Shodan搜索apache 2.4.1
,它将返回标头中带有字符串“apache 2.4.1”的服务器列表。
请考虑访问 Shodan搜索查询示例以获取更多搜索示例。此外,如果你订阅了Shodan会员,你还可以查看Shodan 趋势以获取历史见解。
Censys
乍一看, Censys与 Shodan 类似。Shodan专注于与互联网连接的设备和系统,例如服务器、路由器、网络摄像头和物联网设备;而Censys则专注于互联网所连接的主机、网站、证书和其他互联网资产。它的一些用例包括枚举正在使用的域、审计开放端口和服务以及发现网络中的恶意资产。你可以查看Censys 搜索用例。
VirusTotal
VirusTotal是一个在线网站,它使用多个防病毒引擎为文件提供病毒扫描服务。它允许用户上传文件或提供 URL,以便在一次操作中面向众多防病毒引擎和网站扫描程序来对文件进行扫描。它们甚至可以输入文件哈希值来检查以前上传的文件的结果。
下面的屏幕截图显示了面向 67 个防病毒引擎检查而提交的文件的检测结果。此外,使用者还可以查看社区注释以获取更多相关见解。有时,文件可能会被标记为病毒或特洛伊木马;但是,由于各种原因,这可能不准确,此时就需要社区成员提供更深入的解释。
Have I Been Pwned
Have I Been Pwned (HIBP) 只做一件事;它会告诉你 指定的电子邮件地址是否出现在被曝光的数据泄露中。在已泄露的数据中找到某人的电子邮件则表明该私人信息已经被泄露了,更重要的是,相关的密码也可能被泄露。许多用户会在多个平台上使用相同的密码,如果一个平台的用户数据被泄露,那么他们在其他平台上的密码也会随之暴露。事实上,用户密码通常会以加密格式存储;然而,许多密码并不那么复杂,即使被加密了也可以通过多种攻击方式来尝试恢复密码明文。
答题
哪个国家拥有的lighttpd服务器最多?
https://www.shodan.io/search?query=lighttpd
United States
使用BitDefenderFalx检测文件哈希值为 2de70ca737c1f4602517c555ddd54165432cf231ffc0e21fb2e23b9dd14e7fb4
的文件,该文件将被识别为?
https://www.virustotal.com/gui/home/search
Android.Riskware.Agent.LHH
漏洞和漏洞利用
CVE
我们可以将通用漏洞披露(CVE)计划视为漏洞字典。它能够为软件和硬件产品中的漏洞和安全问题提供标准化标识符。每个漏洞都分配有一个具有标准化格式的CVE ID(例如CVE -2024-29988
)。此唯一标识符 (CVE ID) 可确保从安全研究人员到供应商和 IT 专业人员的每个人都能快速引用相同的漏洞,在本例中为CVE -2024-29988 。
MITRE 公司负责维护 CVE 系统。有关CVE的更多信息以及如何搜索现有 CVE,请访问CVE计划网站;或者访问国家漏洞数据库(NVD) 网站。下面的屏幕截图显示了CVE -2014-0160的相关信息,该漏洞也被称为Heartbleed。
Exploit Database
你想要对易受攻击的应用程序进行漏洞利用的原因可能有很多,而作为红队行动的一部分,漏洞利用可以评估一家公司的安全性。无需多言的是:除非我们已经获得了许可(通常是通过具有法律约束力的协议),否则我们不应该尝试对任何易受攻击的系统执行漏洞利用。
假设现在我们已经获得了对易受攻击的系统进行漏洞利用的权限,那么我们可能需要找到有效的漏洞利用代码。一个可能有效的资源是漏洞利用数据库。漏洞利用数据库列出了来自不同作者的漏洞利用代码,其中一些漏洞利用代码已经经过测试并且被标记为已验证。
GitHub是一个基于 Web 的软件开发平台,它可以包含许多与 CVE 相关的工具,以及概念验证 ( PoC ) 和漏洞利用代码。为了演示这个想法,我们可以在GitHub中查看与Heartbleed漏洞相关的 GitHub 搜索结果的屏幕截图。
答题
CVE-2024-3094 指的是什么实用程序(utility)?
Xz
https://www.cve.org/CVERecord?id=CVE-2024-3094
技术文档
我们还需要掌握的一项重要技能是查找官方文档,接下来我们将介绍关于官方文档页面的一些示例。
Linux手册页
在互联网普及之前,你如何在Linux或类 Unix 系统中使用命令来获得帮助?答案是检查手册页(manual page,简称man page)。在Linux和每个类 Unix 系统上,每个命令都应该有一个手册页。事实上,系统调用、库函数甚至配置文件也存在相关的手册页(man page)。
假设我们要检查ip
命令的手册页,我们可以在终端界面键入man ip
命令,下面的屏幕截图显示了我们将会收到的结果页面。你可以启动 AttackBox 并在其终端中运行man ip
命令 ,按q
退出手册页。
如果你喜欢在web浏览器中阅读ip
的手册页,只需在任意的搜索引擎中输入man ip
即可,相关页面可能会位于搜索结果的顶部。
TryHackMe为我们提供的AttackBox是一个可通过浏览器访问的Linux系统。单击“启动 AttackBox”按钮将在分屏中显示AttackBox界面,以便于在同一浏览器窗口中阅读任务文本并应用说明。如果你隐藏了 AttackBox 窗口,则可以通过单击顶部的蓝色“显示拆分视图”按钮再次显示它。在本节中,你可以启动AttackBox并使用它来尝试执行Linux命令,例如man
命令 。
Microsoft 官方文档
Microsoft 为其产品提供了官方技术文档页面。下面的屏幕截图显示了关于ipconfig
命令的技术文档的搜索结果。
产品文档
每个流行的产品都应该有组织良好的产品文档,此文档将提供有关产品特性和功能的官方且可靠的信息来源。示例包括Snort 官方文档、 Apache HTTP Server 文档、 PHP文档和Node.js 文档等。
查看官方文档总是很有价值的,因为它是最新的并且提供了最完整的产品信息。
答题
在Linux 命令中cat
代表什么?
https://linux.die.net/man/1/cat
concatenate(连接)
MS Windows 中 显示与 每个活动连接和侦听端口 关联的可执行文件 的netstat
参数是什么?
https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/netstat
-b
社交媒体
Facebook 、 Twitter和LinkedIn等社交媒体平台上有数十亿注册用户。我们希望你熟悉流行的平台,但是,如果你知道任何不熟悉的平台,我们建议你查看并了解它。在理想情况下,人们希望在不创建帐户的情况下探索一个平台;然而,这严重限制了你的体验。相反,一个建议是使用临时电子邮件地址来探索这些平台,而不将它们链接到你的真实电子邮件地址;完成探索后,你可以终止帐户和关联的电子邮件地址。不使用主帐户的原因之一是,当你只是暂时探索某个平台时,你不希望陌生联系人真的开始与你联系。
社交媒体的力量在于它可以让你与你感兴趣的公司和人员建立联系。此外,社交媒体也能为网络安全专业人员提供大量信息,无论他们是在寻找人员信息还是技术信息。你可能会问,为什么寻找人很重要?
在保护公司的网络安全时,你应该确保你所保护的人不会在社交媒体上过度分享某些信息。例如,他们的社交媒体可能会泄露他们秘密问题的答案,例如“你小时候在哪所学校上过学?”。此类信息可能会让恶意攻击者重置用户密码并轻松地接管他们的帐户。
此外,作为网络安全专业人士,你希望及时了解新的网络安全趋势、技术和产品,而跟踪适当的频道和群组可以为你的专业技术知识的发展提供合适的环境。
除了通过社交媒体频道和群组保持知识更新之外,我们还应该提及的是一些新闻媒体。数百个新闻网站将提供有价值的网络安全相关新闻,你可以尝试访问不同的新闻网站并坚持使用你最喜欢的那一个。
答题
你受雇来评估特定公司的安全性。你会使用哪个流行的社交媒体网站来了解其员工的技术背景?
继续前面的场景,你试图找到秘密问题的答案,“你小时候在哪所学校上过学?”。你会考虑查看哪些社交媒体网站来寻找此类秘密问题的答案?
总结
本文重点关注了网络安全专业人员最常见的一些信息来源(还有很多)。由于信息格局的不断变化,这里不可能覆盖所有的信息来源;然而,通过订阅相关的网络安全群组或者频道,人们就可以在信息获取上尽量保持领先地位,并在新的、有趣的信息来源出现时保持警惕。