Immunity Canvas使用指南第一课

2021-04-01 23:08:25 浏览数 (1)

前言

Immunity CANVAS是Immunity公司的一款商业级漏洞利用和渗透测试工具,此工具并不开源,其中文版介绍如下: “Canvas是ImmunitySec出品的一款安全漏洞检测工具。它包含几百个以上的漏洞利用。对于渗透测试人员来说,Canvas是比较专业的安全漏洞利用工具。Canvas 也常被用于对IDS和IPS的检测能力的测试。Canvas目前已经使用超过700个的漏洞利用,在兼容性设计也比较好,可以使用其它团队研发的漏洞利用工具,例如使用Gleg, Ltd’s VulnDisco 、 the Argeniss Ultimate0day 漏洞利用包。”

一、

工具安装

该工具(文末附工具下载地址)支持在Windwos和Ubuntu上进行安装使用,但是windwos上环境搭建起来非常的麻烦,所以就直接安装在Ubuntu上,可以直接去官网直接下载镜像,关于镜像的选择,个人建议选择Ubuntu18.04的版本,最新的版本在安装的时候会非常的卡,甚至加载不到安装页面: Ubuntu镜像下载页面

在安装虚拟机的时候需要选择高级安装的方式进行安装,方便自己自定义操作,安装的流程不在多说:

安装好镜像之后,需要修改一下下载源,这里有一个坑,我在使用阿里源和清华源的时候会显示定位不到安装包,换成中科大的源就没有问题,当换源之后就可以开始安装了。

将工具放置到Ubuntu中解压之后有下面几个目录:

ubantu上进行安装只需要使用我们框出来的两个东西,其中的txt 是环境安装的命令:

先安装以下的环境:

代码语言:javascript复制
sudo apt-get updatesudo apt-get -y install python-pipsudo apt-get -y install gtk2.0sudo apt-get -y install python-glade2sudo apt-get -y install python-nacl python-bcryptsudo pip install pycryptosudo pip install pyasn1sudo pip install diskcache==4.1.0sudo pip install asn1toolssudo apt-get install -y python-pycurlsudo apt-get install -y libcanberra-gtk-modulesudo pip install pycurlsudo pip install requestssudo pip install pygame

全部复制然后等待安装完成,安装完成以后直接进入Install目录中,先给linux_installer.sh 加上权限,然后进行安装,安装完成以后就可以直接进入工具的目录运行

运行的时候按照他的说明是直接运行runcanvas.py,但是会发现非常的慢,甚至十几分钟都打不开环境,但是可以使用Ctrl C,不加载对所有的模块。但是事实上还有一个runcanvas.sh,使用这个启动的话只要话费几秒就可以直接打开服务,并且加载所有的模块:

接着是语言的问题,很同学安装之后的界面显示的语言都是中文的语言,非常的不友好,看着很别扭,那么只需要将Ubuntu的界面语言改为英文就可以完全解决这个问题:

当完成这些以后,就安装好了这个工具,鉴于安装步骤太多,大家可以下载打包好的工具,直接导入虚拟机就可以使用,虚拟机环境来自【J0o1ey师傅的团队成员】,工具目录在/home/CANVAS/下,改一下默认界面语言就可以使用了。

二、

界面介绍与工具使用

界面介绍

打开工具的大致布局如下:

Moudles && Search

  • Moudles

这个地方是指改工具的攻击模块,也就是他能够做什么,他的攻击模块很多,包括主机发现,漏洞扫描,漏洞利用,他的漏洞模块目录分的很清楚,按照操作系统进行的划分:

比如上面的这个目录结构,使用EXP,然后选择的是Local,接着你可以选择平台,windwos还是Unix,选择完成以后可以选择具体哪种类型的主机,比如这里我选择的Windows7,个人感觉非常的人性化,如果你要是找不到你想要的,还可以在副页进行搜索:

Node tree && EXP Description

  • Node tree

这个界面是是可以显示我们当前的回连主机和攻陷的主机,这个大红色的圆圈就是当前的回连主机,绿色就是攻陷成功的主机,所有的攻击得到的会话会返回到这个地方来,我们可以将一台被攻陷的主机作为回连的主机,继续攻击其他主机,你可以右键这个大红圆圈查看一下信息:

包括target host 和网卡信息,IP地址等,knowledge界面可以添加目标和删除目标

选择攻陷的主机作为回连主机:

这个时候可以观察到上面的 Current Callback已经改变了:

接着开始攻击其他主机,攻击成功以后如下:

  • Word map

它是用来显示你攻击成功的IP地址的大致地理位置的,使用python的库进行操作,按照他的要求我们可以到CANAVSguiwordmap中查看到他的介绍:

按照他的方式我尝试进行安装,但是没法下载他的IP数据库,显示404,:

我也尝试百度下载的IP数据库,但是安装上去后就会报错,估计是版本不合适

  • Cmd line

命令行输入,也就是和 CS 中的无图像化界面的操作差不多的东西,可以使用它提供的命令完成我们之前的一些操作,输入help就可以显示相关信息,比如我们使用help load:

会告诉你相关的信息,以及他的解释

  • EXP Description

显示你选择的EXP的详细信息,这里我选择一下ms17-010这个EXP,然后就可以查看到相关的信息:

Consle

  • Current status

用于显示我们攻击的日志,分为几种颜色,蓝色代表攻击结束,灰色代表攻击中,红色代表攻击失败:

  • Canvnas log && Debug log 这里是日输出的位置,实时显示我们的相关日志和报错日志:

顶部信息

  • Target host

添加一个攻击目标:

  • stop EXP

停止攻击

  • config

这个是后续外网搭建的相关配置,之后会写

三、

实战

首先先吹一波他的 ms17-010,是真的非常好用,在我自己测试的时候,没有发现蓝屏,很稳定,并且使用起来方便,快捷

这里我的环境是ms17010的漏洞环境,首先我添加一下目标:

扫描一下开放了哪些端口,模拟一下真实环境:

发现开放了445端口:

那么我们就可以尝试使用一下MS17-010,搜索一下:

选第二个,进行攻击,攻击成功后会返回一个 Beacon

返回的Beacon的一些介绍:

硬盘改为显示当前目录文件。。。

尝试执行命令看看:

查看一下目录信息:

然后我们关闭这个Beacon,想要再次打开可以点击一下你想要的攻陷主机,然候在modules中选择 Listen就可以再次打开,选中主机时会高亮显示:

想要对攻陷的主机进行其他模块攻击也是一样的操作

后记

文章有写的不正确的地方希望各位师傅斧正,因为是自己翻译的和看官方文档,难免会有差错,师傅们也可以查看官方文档进行学习,但是他们的文档确实有点离谱,视频还是SWP是在太难顶了:

  • http://www.immunityinc.com/products/canvas/documentation.html
  • http://www.immunityinc.com/downloads/documentation/tutorials/canvas101-part1.pdf
  • http://www.immunityinc.com/downloads/documentation/tutorials/canvas101-part2.pdf

在实战中我们常见的几种利用17010的方式都太过于危险和不稳定,这个工具的exp完美解决这个问题,利用率高,在后面,我们也会在出一份远程服务器登录的教程,希望最后感谢J0师傅打包好的工具!

0 人点赞