黑客经常被描绘成非法访问计算机系统和网络的“坏蛋”。事实上,黑客只是对计算机系统和网络有广泛了解的一种技术大牛,并非制造网络病毒在网络上传播的“恶棍”。然而一些黑客确实将他们的技能用于非法和不道德的目的,其他人则是为了挑战。白帽黑客利用他们的技能来解决问题和加强系统安全。这些黑客利用他们的技能来抓捕罪犯并修复安全系统中的漏洞。如果你准备好了解并学习这门艺术,本篇文章将帮助你了解黑客所需的入门知识。
一、学习黑客所需的技能
1.了解什么是黑客攻击。
从广义上讲,黑客是指用于破坏或访问数字系统的技术。这可以是计算机、手机或平板电脑,也可以是整个网络。黑客攻击涉及多种专业技能。有些技术性很强。
2.
了解黑客行为的道德规范。
尽管流行文化对黑客的描述方式多种多样,但黑客行为并无好坏之分。黑客只是精通技术、喜欢解决问题并克服限制的人。如果你是一个三观正常,喜欢挑战计算机技术,那么你就可以尝试去学习。
警告:
访问不属于你的计算机是非法的。如果你选择将你的黑客技能用于此类目的,请注意还有其他黑客将他们的技能用于有益的用途(他们被称为白帽黑客)。
他们中的一些人为了追捕坏黑客(黑帽黑客)作为乐趣。如果他们抓住你,你离吃咸菜就不远了。
3.
了解如何使用互联网和 HTML。
如果要进行黑客攻击,则需要知道如何使用互联网。
不仅仅是如何使用网络浏览器,还有如何使用高级搜索引擎技术。
此外还需要知道如何使用 HTML 创建 Internet 内容。学习 HTML 还会教你一些良好的心理习惯,这将帮助你学习编程。
4.
学习如何编程。
学习编程语言可能需要时间,因此您需要耐心地学习。专注于学习像程序员一样思考,而不是学习个别语言。关注所有编程语言中的相似概念。
C 和 C++ 是 Linux 和 Windows 的构建语言。它(连同汇编语言)教给黑客一些非常重要的东西:内存是如何工作的。
Python 和 Ruby 是高级、强大的脚本语言,可用于自动执行各种任务。
PHP 值得学习,因为大多数 Web 应用程序都使用 PHP。Perl 在这个领域也是一个合理的选择。
Bash 脚本是必须的。这就是如何轻松操作 Unix/Linux 系统。我们可以使用 Bash 编写脚本,这将为我们完成大部分工作。
汇编语言是必须知道的。它是处理器理解的基本语言,并且有多种变体。如果你不了解汇编,则无法真正利用程序来执行任务。
5.
获取一个开源的基于 Unix 的系统并学习使用它。
有很多基于 Unix 的操作系统,包括 Linux。互联网上的绝大多数 Web 服务器都是基于 Unix 的。所以如果你想入侵互联网,你需要学习 Unix。 此外,像 Linux 这样的开源系统允许你阅读和修改源代码。
Unix 和 Linux 有许多不同的发行版。最受欢迎的 Linux 发行版是Ubuntu。所以你可以将 Linux 安装为主要操作系统,也可以创建 Linux 虚拟机。此外你还可以使用 Windows 和 Ubuntu双系统。
二、黑客攻击
1.
首先保护您的机器。
要进行黑客攻击,你必须需要一个系统来练习出色的黑客技能。但是,请确保你有权攻击目标。你可以攻击你自己的网络,或者计算机。也可以使用虚拟机设置你自己的被攻击对象。
未经许可攻击别人的网络系统,无论其内容是否违法,都是一种不可饶恕的错误。
Boot2root 是专门设计用于**客入侵的系统。你可以在线下载这些系统并使用虚拟机软件进行安装。我们可以练习破解这些系统。
2.
了解你的目标。
收集有关目标的信息的过程称为枚举。目标是与目标建立主动连接并找到可用于进一步利用系统的漏洞。有多种工具和技术可以帮助进行枚举过程。可以在各种 Internet 协议上执行枚举,包括 NetBIOS、SNMP、NTP、LDAP、SMTP、DNS 以及 Windows 和 Linux 系统。以下是你要收集的一些信息:
用户名和组名主机名网络共享和服务IP 表和路由表服务设置和审计配置应用程序和横幅SNMP 和 DNS 详细信息
3.
测试目标。
你能访问远程系统吗?虽然您可以使用ping实用程序(包含在大多数操作系统中)来查看目标是否处于活动状态,但你不能总是相信结果——它依赖于 ICMP 协议,偏执的系统管理员可以轻松关闭该协议。此外你还可以使用工具检查电子邮件以查看它使用的电子邮件服务器。
4.
运行端口扫描。
我们可以使用网络扫描器来运行端口扫描。这将向我们显示操作系统上打开的端口,甚至可以告诉你他们正在使用哪种类型的防火墙或路由器,以便你制定入侵方案。
5.
在系统中查找路径或开放端口。
FTP (21) 和 HTTP (80) 等常见端口通常受到良好保护,并且可能仅容易受到尚未发现的攻击。尝试其他可能被遗忘的 TCP 和 UDP 端口,例如 Telnet 、为 LAN 游戏保持开放的各种 UDP 端口。
开放端口 22 通常是在目标上运行的 SSH(安全外壳)服务的证据,有时可能会被强制执行。
6.
破解密码或认证过程。
有几种破解密码的方法。它们包括以下一些内容:
暴力攻击:
暴力攻击只是试图猜测用户的密码。这对于访问容易猜测的密码
(即 password123)
很有用。黑客经常使用从字典中快速猜测不同单词的工具来尝试猜测密码。
为了防止暴力攻击,请避免使用简单的单词作为密码。确保使用字母、数字和特殊字符的组合。
社会工程学:
对于这种技术,黑客将联系用户并诱骗他们提供密码。例如,他们声称自己来自 IT 部门,并告诉用户他们需要密码来解决问题。这在苹果手机丢失后,黑客们常用这种方法来伪装成官方邮件,用以骗取用户的密码来解锁手机。
所以在生活中我们要鉴别这种修改密码的邮件。
网络钓鱼:
在这种技术中,黑客向用户发送虚假电子邮件,该电子邮件似乎来自用户信任的个人或公司。该电子邮件可能包含安装间谍软件或键盘记录器的附件。它还可能包含指向看起来真实的虚假商业网站(由黑客制作)的链接。然后要求用户输入他们的个人信息,然后黑客可以访问这些信息。
为避免这些骗局,请不要打开您不信任的电子邮件。始终检查网站是否安全(在 URL 中包含“HTTPS”)。直接登录官方网站,而不是点击电子邮件中的链接。
ARP欺骗:
在这种技术中,黑客使用智能手机上的应用程序创建一个虚假的 Wi-Fi 接入点,公共场所的任何人都可以登录。黑客可以给它起一个看起来像是属于当地机构的名字。人们登录它时认为他们正在登录公共 Wi-Fi。然后,该应用程序会记录登录者通过互联网传输的所有数据。如果他们通过未加密的连接使用用户名和密码登录帐户,该应用程序将存储该数据并授予黑客访问权限。
为避免成为此次抢劫的受害者,请避免使用公共 Wi-Fi。
7.获得超级用户权限。
大多数重要的信息都受到保护,我们需要一定级别的身份验证才能获取这些信息。要查看计算机上的所有文件,我们需要超级用户权限——
一个与 Linux 和 BSD 操作系统中的“root”用户具有相同权限的用户帐户。
对于路由器,默认情况下这是“管理员”帐户(除非已更改);对于 Windows,这是管理员帐户。我们可以使用一些技巧来获得超级用户权限:
缓冲区溢出:
如果你知道一个系统的内存布局,你可以输入缓冲区无法存储的内容。也可以用你的代码覆盖存储在内存中的代码并控制系统。
在类 Unix 系统中,如果被窃听的软件设置了setUID 位来存储文件权限,就会发生这种情况。该程序将作为不同的用户(例如超级用户)执行。
8.
创建后门。
一旦你完全控制了一台机器,最好确保你可以再次回来。要创建后门,则需要在重要的系统服务(例如 SSH 服务器)上安装一个恶意软件或代码。这将允许你绕过标准身份验证系统。
但是,你的后门可能会在下次系统升级时被移除。
一个有经验的黑客会为编译器本身设置后门,所以每个编译的软件都可能是一个回来的方式。
9.
掩盖你的踪迹。
不要让管理员知道系统已被入侵。不要对网站进行任何更改。不要创建超过你需要之外的文件。不要创建任何其他用户,只要完成你的目的即可。如果修补了像 SSHD 这样的服务器,请确保它具有硬编码的密码。如果有人尝试使用此密码登录,服务器应该让他们进入,但不应包含任何重要信息。