- ：到目前为止, 我们已经了解了如何使用具有默认密码的服务､
未正确配置的服务或带有后门的服务来获得对目标计算机的完全访问权限｡
我们还了解了如何使用基本的Metasploit连接到安装在FTP服务上的后门程序｡
今天, 我们将更深入地了解Metasploit,
并了解如何使用它来运行某个服务中存在的漏洞｡
这是一个代码执行漏洞, 它也会让我们完全访问目标计算机｡
回到我们使用Nmap的结果, 我们将执行之前一直在执行的操作,
复制服务名称并查看它是否存在任何漏洞｡
因此, 今天我们将了解这个特定的端口139, 它有一个Samba服务器版本3｡
十､
所以3. 任何事情｡
我们将像之前的视频一样通过Google搜索Samba
3｡ X漏洞｡
现在, 如您所见, 有许多结果｡
我们感兴趣的是来自Rapid
7的漏洞, 因为正如我所说, 这些都是使用Metasploit的人,
所以您可以通过Metasploit使用这些漏洞｡
这里有两个例子, 现在我两个都试过了｡
第一个脚本不起作用, 因此需要进行一些尝试和错误,
第二个脚本是用户地图脚本｡
这是一个命令执行漏洞, 如您所见｡
漏洞的名称是这样的｡
所以这和我们之前在FTP服务中使用的邪恶后门是一样的｡
这只是我们要使用的不同名称｡
我将进入Metasploit,
并且已经运行了MSF控制台,
因此您可以看到控制台正在为我运行｡
我将执行一个使用操作, 就像我们昨天所做得那样,
然后输入要使用得漏洞得名称.
接下来我们通常要做的就是像昨天一样显示选项｡
所以我打算做节目选择｡
因此, 使用这些漏洞攻击总是几乎相同的,
唯一的区别是您可以为每个漏洞攻击设置的选项｡
因此, 您总是使用, 然后输入漏洞名称, 然后执行show
options, 以查看可以更改哪些内容来使用此漏洞｡
所以在未来, 你可能会得到不同的战功比我有什么｡
因此, 每次要运行漏洞攻击时,
您都要使用漏洞攻击名称, 然后显示选项以查看要配置的选项, 但使用漏洞攻击､
设置选项和运行它们始终是相同的｡
所以我给你们看几个例子, 它们应该涵盖了你们将来想做的几乎所有事情｡
同样, 我们需要设置R-Host, 它是目标计算机的IP,
我们将采用与之前相同的方式进行设置｡
正如我所说的, 它的设置选项总是相同的｡
我们将设置R-HOST, 然后将目标计算机的IP地址设置为10｡
20. 14. 204.
与之前的操作完全一样, 我们使用集合来设置一个选项,
即R-HOST｡
所以我们要做节目选择了｡
正如您现在所看到的, R-HOST已正确设置｡
我们现在要做的是, 这里是和上一节课不同的地方｡
在上一讲中, 我们使用了一个已经安装在目标计算机上的后门,
因此我们所要做的就是连接到后门, 然后我们就可以在目标计算机上运行任何命令,
任何Linux命令｡
在今天的视频中, 目标计算机没有后门,
它有一个正常的程序, 该程序存在缓冲区溢出或代码执行漏洞｡
因此, 该程序没有任何代码, 让我们运行Linux命令,
它有一定的缺陷, 将让我们运行一小段代码｡
这些小代码段称为有效负载｡
因此, 我们需要创建一个有效负载,
然后使用我们发现的漏洞在目标计算机上运行它｡
这段代码将允许我们做不同的事情｡
所以有效载荷是让我们做对我们有用的事情的东西｡
现在, 有效负载可以让我们执行Linux命令,
还有其他类型的有效负载, 我们将在未来研究｡
因此, 要查看可用于此特定漏洞攻击的有效负载,
您只需运行show payloads即可｡
这些是你可以使用的不同类型的有效载荷｡
现在我将再次讨论这一点, 有效负载是一小段代码,
一旦漏洞被利用, 这些代码将在目标计算机上执行｡
因此, 当我们利用该漏洞时, 将执行我们在此处选择的代码,
根据我们选择的有效负载类型, 该有效负载将执行对我们有用的操作｡
现在您可以看到, 所有有效负载都是cmd, 即command的缩写,
因此它们允许您在目标计算机上运行命令,
就像Linux命令一样｡
它们都只能在Unix上运行, 这没关系, 因为我们的目标是Linux｡
有两种主要类型, 一种是绑定有效负载,
另一种是反向有效负载｡
绑定有效负载, 它们所做的就是在目标计算机上打开一个端口,
然后我们连接到该端口｡
相反, 他们做的恰恰相反｡
所以他们在我的机器上打开了一个端口, 然后他们从目标计算机连接到我的机器｡
这很有用, 因为反过来, 我们可以绕过防火墙,
防火墙将过滤任何连接到目标计算机, 但如果目标计算机连接到我, 而我没有防火墙,
那么我将能够绕过防火墙｡
所以我将使用命令Unix reverse或者实际上我将使用命令Unix
reverse netcat｡
这些有效负载的最后一部分是程序和语言顺序工具,
将用于促进连接｡
例如, 我们可以看到, 在ruby或python､
php中有用perl编写的有效负载, 或者使用netcat,
这是一个允许计算机之间连接的工具｡
这就是我将要使用的一个, 我将以与利用漏洞相同的方式使用它｡
所以我只想说, 其实很抱歉, 我会用set命令来使用它｡
和使用set和option一样, 我们要设置payload,
就像一个选项一样, 为我们刚才选择的payload名称.
现在, 我将显示选项, 看看是否还有其他需要设置的选项｡
是的, 因为我们选择了一个有效载荷, 现在有更多的选择｡
有一个选项叫做L-HOST,
它的监听地址是我自己的地址｡
所以我将使用if config获得我自己的IP地址｡
而我自己的地址是10｡ 20. 14. 203.
我将关闭此对话框并设置L-HOST｡
这与之前设置R-Host的方法相同, 我们设置了L-HOST｡
做10个｡
20.
因此, 在我们过去设置R-HOST来设置此选项之前,
现在我们设置L-HOST来设置此特定选项｡
set非常简单, set, 输入选项名,
然后输入要设置的值.
然后我会做节目选择现在一切都很好｡
因此, 我们使用此漏洞, R-HOST设置为该值,
这是正常的｡
然后将L-HOST设置为该值, 这非常完美｡
然后, 您还可以在当前计算机上设置要侦听的端口｡
如果愿意, 您可以将其设置为80,
这是Web浏览器使用的端口｡
因此, 如果您将L-PORT设置为80, 目标计算机将尝试使用端口80连接到您,
该端口永远不会在防火墙上过滤, 因为这是Web浏览器或Web服务器使用的端口｡
因此, 无论何时访问网站, 实际上都是访问该网站上的端口80｡
因此, 如果您打开计算机上的端口80, 而目标通过80连接到您,
则防火墙会认为目标只是在浏览Internet｡
我现在不打算这样做, 因为我有一个Web服务器在端口80上运行,
这将发生冲突｡
因此, 我将L-PORT设置为555,
以您为例, 您可以使用相同的方式更改任何选项,
即先设置选项名称, 然后设置值｡
所以我要再做一次选择｡
如您所见, 这已更改为5555, 我将执行exploit以运行该漏洞｡
现在, 如您所见,
它告诉我会话1已打开｡
而连接是在这个设备和这个设备之间｡
也就是目标和我的设备｡
所以我会做密码或者身份验证｡
你会看到我是root所以我用uname -a.
您将看到我在Metasploitable计算机中,
如果我执行ls, 我将能够列出文件等｡
我可以使用任何Linux命令, 就像我们之前在其他视频中所做的那样｡