Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016
Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016
0.1 本系列教程说明
本系列教程,采用的大纲母本为《Understanding Network Hacks Attack and Defense with Python》一书,为了解决很多同学对英文书的恐惧,解决看书之后实战过程中遇到的问题而作。由于原书很多地方过于简略,笔者根据实际测试情况和最新的技术发展对内容做了大量的变更,当然最重要的是个人偏好。教程同时提供图文和视频教程两种方式,供不同喜好的同学选择。由于教程仍在创作过程中,在整套教程完结前,感兴趣的同学请关注我的微信订阅号(xuanhun521,下方二维码),我会第一时间在订阅号推送图文教程和视频教程。问题讨论请加qq群:Hacking (1群):303242737 Hacking (2群):147098303。
图1 xuanhun521 微信订阅号
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开发环境。
1.5 篇文章对应视频教程获取方法
在微信订阅号中,查看文章历史,找到对应的本篇文章,文章结尾有获取视频教程的方法。
由于教程仍在创作过程中,在整套教程完结前,感兴趣的同学请关注我的微信订阅号(xuanhun521,下方二维码),我会第一时间在订阅号推送图文教程和视频教程。问题讨论请加qq群:Hacking (1群):303242737 Hacking (2群):147098303。
关注之后,回复请回复“Python”,获取视频教程和其他相关内容。
系列文章目录:
Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016的更多相关文章
- Python 黑帽编程大纲(变化中)
Python 黑帽编程大纲(预览版) 教程说明: 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and Defense with Pytho ...
- PYTHON黑帽编程 4.1 SNIFFER(嗅探器)之数据捕获(下)
上一节(<4.1 SNIFFER(嗅探器)之数据捕获(上)>)中, 我们讲解了通过Raw Socket的方式来编写Sniffer的基本方法. 本节我们继续来编写Sniffer,只不过使用现 ...
- Python黑帽编程1.2 基于VS Code构建Python开发环境
Python黑帽编程1.2 基于VS Code构建Python开发环境 0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Atta ...
- Python黑帽编程1.3 Python运行时与包管理工具
Python黑帽编程1.3 Python运行时与包管理工具 0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and ...
- PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析
Python黑帽编程1.5 使用Wireshark练习网络协议分析 1.5.0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks At ...
- Python黑帽编程 2.0 第二章概述
Python黑帽编程 2.0 第二章概述 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一 ...
- Python黑帽编程3.0 第三章 网络接口层攻击基础知识
3.0 第三章 网络接口层攻击基础知识 首先还是要提醒各位同学,在学习本章之前,请认真的学习TCP/IP体系结构的相关知识,本系列教程在这方面只会浅尝辄止. 本节简单概述下OSI七层模型和TCP/IP ...
- Python黑帽编程 3.1 ARP欺骗
Python灰帽编程 3.1 ARP欺骗 ARP欺骗是一种在局域网中常用的攻击手段,目的是让局域网中指定的(或全部)的目标机器的数据包都通过攻击者主机进行转发,是实现中间人攻击的常用手段,从而实现数据 ...
- Python黑帽编程 4.1 Sniffer(嗅探器)之数据捕获(上)
Python黑帽编程 4.1 Sniffer(嗅探器)之数据捕获(上) 网络嗅探,是监听流经本机网卡数据包的一种技术,嗅探器就是利用这种技术进行数据捕获和分析的软件. 编写嗅探器,捕获数据是前置功能, ...
随机推荐
- Swif - 可选型
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #4dbf56 } p.p2 { margin: 0.0px 0. ...
- getComputedStyle 方法
一:getComputedStyle getComputedStyle是一个可以获取当前元素所有最终使用的CSS属性值.返回的是一个CSS样式声明对象([object CSSStyleDeclarat ...
- c语言文件读写操作总结
C语言文件读写操作总结 C语言文件操作 一.标准文件的读写 1.文件的打开 fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程 ...
- SVN
你先在本地把包删了,然后提交上级目录就可以了.比如你要删除com.aaa.A这个类.你就把A删了,然后提交aaa就行,如果你要把aaa包删了,你就删了以后提交com这个包.SVN就删掉了 svn提交更 ...
- jave ee之 servlet 记录
1:没有自动生成web.xml文件 解决方法:新建web工程的时候最后会选择是否创建web.xml文件 2:通过url映射无法打开对应网站 <servlet> <servlet-na ...
- oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器
PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语 ...
- Python for Infomatics 第14章 数据库和SQL应用三(译)
14.5 SQL 总结 到目前为止,我们在Python示例程序中使用了SQL,并且涉及了许多SQL基础.在这一小节中,我们特别审视SQL语言,并对其语法进行回顾. 虽然有很多不同的数据库供应商,但因S ...
- The World's Only Advanced Operating System
The World's Only Advanced Operating System
- U-Boot Driver Model领域模型设计
需求分析 在2014年以前,uboot没有一种类似于linux kernel的设备驱动模型,随着uboot支持的设备越来越多,其一直受到如下问题困扰: 设备初始化流程都独立实现,而且为了集成到系统,需 ...
- Curator leader 选举(一)
要想使用Leader选举功能,需要添加recipes包,可以在maven中添加如下依赖: <dependency> <groupId>org.apache.curator< ...