1.1 虚拟机安装和配置 Kali Linux 2016
0.1 本系列教程说明
本系列教程,采用的大纲母本为《Understanding Network Hacks Attack and Defense with Python》一书,为了解决很多同学对英文书的恐惧,解决看书之后实战过程中遇到的问题而作。由于原书很多地方过于简略,笔者根据实际测试情况和最新的技术发展对内容做了大量的变更,当然最重要的是个人偏好。
0.2 前言
关于虚拟机安装Kali Linux已经是老生常谈了,我之前的博文(Kali Linux渗透测试实战 1.2 环境安装及初始化)和视频教程(Kali Linux web渗透测试--初级教程1)都详细的介绍过。相对之前的文章和教程,本次采用的系统是最新的Kali Linux 2016.1,在安装上没什么区别,配置上需要注意的是采用新的更新源。即便如此,为照顾没有接触过Kali Linux的同学,本篇文章还是会尽可能详尽的描述每一个步骤和细节。
至于为什么要使用Kali Linux来作为开发环境,简单的讲,Kali Linux为我们提供了Python黑帽编程所需要的所有测试工具,可以更加方便的搭建目标环境。
当然你可以选择你喜欢的系统,windows或者Mac OS,Ubuntu都可以,毕竟使用Kali Linux在更新源方面有一点点障碍,但是为了学习安全,客服这点障碍还是值得的。
1.1 映像文件下载
下载地址:https://www.kali.org/downloads/。
图2 Kali Linux 镜像列表
根据自己的环境选择对应的操作系统镜像,如果是64位系统请尽量下载64位文件。
1.2 系统安装
镜像下载成功之后,就该开始我们漫长的安装过程了。
首先打开VMWare,新建虚拟机。
图3 新建虚拟机
选择Custom,单击下一步,如图4。
图4
选择最新软件版本,下一步,如图5。
图5
选择从ISO文件安装系统,单击浏览安装,从文件选择框选择你的映像文件,如图6。
图6 选择映像文件
单击“下一步”。操作系统类型选择“Linux”和“Debian7-64bit”(32位系统选择Debian7)。
图7 选择操作系统类型
单击“下一步”。填写虚拟机名称,打开文件浏览对话框,选择文件存储位置。
图8 配置虚拟机文件存储
单击“下一步”。配置CPU和内核。如图9。
图9 配置CPU
这里需要根据你电脑的实际配置去衡量虚拟机的配置,否则会影响电脑的性能,接下来的内存配置也一样。
单击“下一步”。配置内存。
图10 配置内存
单击“下一步”,配置网络类型。如果你的网络支持DHCP,可以选择桥接方式,否则选择NAT方式。
图11 选择网络类型
单击“下一步”,选择IO类型。
图12 选择IO类型
单击“下一步”,选择磁盘类型。
图13 选择磁盘类型
单击“下一步”,选择新建虚拟磁盘,如图14。
图14
单击“下一步”,设置磁盘大小和存储方式。这里一定要注意,磁盘大小一定要大于20G,否则会出现无法启动的问题。我在之前的博文里也提到过这个问题,不过还是被很多同学忽略。如图15。
图15 设置虚拟磁盘大小
单击“下一步”,设置虚拟磁盘文件存储位置。如图16。
图16 设置虚拟磁盘存储位置
单击“下一步”,如图17。
图17 确认信息
单击“完成”,如图18,启动虚拟机。
图 18
选择 Graphical install,如图19。
图19
回车。选择语言,如图19。
图20 选择语言
单击“Continue”。选择“是”,如图21。
图21
单击“继续”。选择国家和地区,如图22。
图22
单击“继续”。配置键盘类型,如图23。
图23
单击“继续”。安装程序开始加载组件,如图24。
图24
组件加载完成后开始配置主机名,按个人喜好随便填写就好了,如图25。
图25
单击继续。配置域名,随便填写就可以了,这些之后需要的时候都可以改,如图26.
图26 配置域名
单击“继续”。为root账号设置密码,如图27。
图27 设置root密码
单击继续。系统会设置时间,完毕之后,选择磁盘分区方法。这里根据个人能力来选择,可以默认整个磁盘,也可以自定义分区。如图28.
图28
单击继续,选择分区。这里我选择的是整个磁盘安装,所以只有一个选项,如图29。
图29
单击继续。选择默认项就可以了。如图30.
图30
单击“继续”,选择写入磁盘,如图31。
图31
单击“继续”,选择“是”,如图32。
图32
单击“继续”。开始安装系统,如图33。
图33
安装过程中,会出现是否选择网络镜像的选项,记得一定要选“否”,如图34。
图34
单击“继续”。选择是,将grub安装在MBR记录上。如图35。
图35
单击“继续”。选择唯一的设备。如图36.
图36
单击“继续”。MBR写完之后,出现安装过程完成的界面。如图37.
图37
单击“继续”。结束安装进程。系统重启,如图38.
图38
安装过程正式结束,我们输入账户root和安装过程中设置的密码进入系统,开始配置阶段。
图39
图40
1.3 系统配置
由于我们当前的需求是开发Python程序,所以系统配置相对渗透测试会简单很多,只需要配置更新源,更新系统,安装VMWare增强工具,配置共享目录。
1.3.1 更新系统
打开终端,输入如下命令:
vim /etc/apt/sources.list
清空sources.list文件内容,输入如下内容:
#kali官方源
deb http://http.kali.org/kali kali-rolling main non-free contrib
#中科大的源
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
保存并退出,先如下命令:
apt-get update & apt-get upgrade
结果如图41所示。
图41
见到图42的画面中的“完成”两个字的时候,证明这一轮更新数据的获取完成了。
图42
这个时候画面会静止在这,不要等,直接回车即可,如图43.
图43
现在真正到了更新系统的核心阶段了,执行以下命令:
apt-get dist-upgrade
在确认界面输入“Y”,如图44。
图44 确认更新
接下来是下载阶段,直到下载完成,如图45。
图45 更新包下载完成
紧接着会出现更新声明的内容,一路回车到100%,然后输入“:q”,进入软件包更新环节,如图46,47所示。
图46
图47
部分软件包可能会有提醒,手动选择下就ok了。
由于网络原因,很可能会更新失败,这个时候通过VPN或者Socks代理进行FQ就很有必要了。如果你觉得在Kali里完成FQ有困难的话,请参考我之前的文章《kali linux 2.0 虚拟机通过宿主机代理实现科学上网-第二弹》,可以保证你能顺利更新。整个更新是一个漫长的过程,要做好充分的心理准备。
所有软件包更新成功后,输入如下命令,重启系统。
reboot
图48
1.3.2 安装vm-tools
重新进入系统后,我们会发现,现在系统桌面环境的分辨率无法调整,只有一个小窗口,虚拟机和外部系统无法共享剪贴板,无法设置共享目录。我们需要安装open-vm-tools来解决这些问题。
启动终端,输入如下命令:
apt-get install open-vm-tools-desktop fuse
图49
安装成功之后,重启系统,就能看到效果了。
1.4 小结
本文作为Python黑帽编程的第一节,好像做了很多与编程本身无关的事情,但是通过Kali系统的安装和更新,我们已经安装了Python以及常用的Python模块,一大批使用Python开发的安全工具。
下一节,我们在Kali上安装Vs Code,用VS Code构建Python开发环境。