二. Kali 介绍 9
2.1 Kali Linux 特性 10
2.2 下载Kali Linux 11
2.2.1 封装最新的Kali ISO 11
2.2.2 官方Kali Linux镜象 11
2.3 制作定制的Kali镜象 12
2.3.1 准备开始 12
2.3.2 封装Kali ISO的配置(可选) 12
2.3.3 封装ISO 13
2.3.4 为今后封装ISO提速 14
2.4 安装Kali Linux 14
2.4.1 加密安装Kali Linux 14
2.4.2 用Live U盘安装Kali Linux 17
2.4.3 Kali和Windows双引导 20
2.4.4 硬盘安装Kali Linux 21
2.4.5 通过网络安装Kali Linux 22
2.4.6 通过网络PXE安装Kali Linux 23
2.4.7 Kali Linux常见问题 24
2.4.8 Kali虚拟机安装VMware Tools 25
2.4.9 Kali Linux ARM文档 26
2.4.10 重新编译Kali Linux内核 27

二. Kali 介绍
Kali Linux是一个高级渗透测试和安全审计Linux发行版.

Kali Linux适合你么?
作为发行版的开发者,可能有人认为我们建议所有人都使用KaliLinux.事实上,Kali是一个面向专业的渗透测试和安全审计的发行版,所以不推荐那些不熟悉Linux的人使用.
此外,在你的网络里滥用安全工具,特别是未经许可时,将会导致不可挽回的损失和严重的后果.

2.1 Kali Linux 特性
 Kali是BackTrack Linux完全遵循Debian开发标准的完整重建.全新的目录框架、复查并打包所有工具、还为VCS建立了Git 树.
 超过300个渗透测试工具: 复查了BackTrack里的每一个工具之后,我们去掉了一部分已经无效或功能重复的工具.
 永久免费: Kali Linux一如既往的免费.你永远无需为Kali Linux付费.
 开源Git树: 我们是开源软件忠实的拥护者,那些想调整或重建包的人可以浏览我们的开发树得到所有源代码.
 遵循FHS: Kali的开发遵循Linux目录结构标准,用户可以方便的找到命令文件、帮助文件、库文件等..
 支持大量无线设备: 我们尽可能的使Kali
 Linux支持更多的无线设备,能正常运行在各种各样的硬件上,能兼容大量USB和其它无线设备.
 集成注入补丁的内核: 作为渗透测试者或开发团队经常需要做无线安全评估.所以我们的内核包含了最新的注入补丁.
 安全的开发环境: Kali Linux开发团队由一群可信任的人组成,他们只能在使用多种安全协议的时候提交包或管理源.
 包和源有GPG签名: 每个开发者都会在编译和提交Kali的包时对它进行签名,并且源也会对它进行签名.
 多语言: 虽然渗透工具趋向于用英语,但我们确保Kali有多语言支持,可以让用户使用本国语言找到他们工作时需要的工具.
 完全的可定制: 我们完全理解,不是每个人都赞同我们的设计决定,所以我们让更多有创新精神的用户定制Kali Linux(甚至定制内核)成他们喜欢的样子变得尽可能的容易.
 ARMEL和ARMHF支持:
自从基于ARM的设备变得越来越普遍和廉价,我们就知道我们该竭尽全力的做好Kali的ARM支持.因此有了现在的ARMEL 和ARMHF架构的系统.KaliLinux有完整的主线发行版的ARM源,所以ARM版的工具将会和别的版本同时更新.Kali现在可以运行在如下的ARM设备:
rk3306 mk/ss808
Raspberry Pi
ODROID U2/X2
MK802/MK802 II
Samsung Chromebook
2.2 下载Kali Linux
2.2.1 封装最新的Kali ISO
Kali Linux允许你用Debian的live-build脚本封装最新的Kali ISO.封装镜像最简单的办法就是在Kali Linux环境下做如下操作.
你需要先安装live-build 和 cdebootstrap 这两个包:

apt-get install git live-build cdebootstrap

下一步克隆Kali cdimage的Git源:

git clone git://git.kali.org/live-build-config.git

现在切换到cdimage.kali.org目录下的live目录里,然后封装ISO.

cd live-build-config
lb clean --purge
lb config
lb build
live-build

脚本可以完整的定制Kali Linux镜像.

2.2.2 官方Kali Linux镜象
ISO文件
Kali Linux提供了32位和64位的可引导ISO.
下载Kali ISO
VMware 镜象
Kali提供了已经安装Vmware Tools的VMware虚拟机镜象(PAE内核的32位镜像).
下载Kali VMware镜像文件
ARM 镜象
由于ARM的架构性质,单一的一个镜象不能通用于所有ARM设备运行.我们提供了如下设备的Kali Linux ARM镜象:
rk3306 mk/ss808
Raspberry Pi
ODROID-U2/X2
MK802/MK802 II
Samsung Chromebook
2.3 制作定制的Kali镜象
封装定制的Kali Live ISO
打造专属的Kali ISO – 简介
封装定制的Kali ISO很简单,很有趣,很有意义.你可以用Debian的live-build脚本对Kali ISO进行全面的配置.这些脚本以一系列配置文件的方式对镜像进行全面的自动定制,让任何人都可以轻易地就能打造一个Live系统镜像.官方发布的Kali ISO也采用了这些脚本.
前提
最理想的是在预装Kali的环境里定制你的KaliISO.如果不是这样,请务必使用最新版本的live-build脚本(3.x分支的脚本可用于Debian wheezy).
2.3.1 准备开始
首先我们要用以下命令搭建好定制Kali ISO的环境:

apt-get install git live-build cdebootstrap kali-archive-keyring
git clone git://git.kali.org/live-build-config.git
cd live-build-config
lb config

2.3.2 封装Kali ISO的配置(可选)
config目录里包含了定制ISO的各种重要的自定义选项,这些选项在Debian的live build 3.x
页面有文档说明.然而如果你没有耐心,请特别注意以下的配置文件:
config/package-lists/kali.list.chroot – 包含要安装在Kali ISO里的软件包的列表.你可以指定移除已经安装的软件包.也可以切换你的Kali ISO的桌面环境(KDE,Gnome,XFCE,LXDE等).
hooks/ – hooks 目录允许我们在不同阶段调用脚本封装定制Kali Live ISO.
举个例子,Kali是这样添加取证模式的引导菜单的:

$ cat config/hooks/forensic-menu.binary
#!/bin/sh
cat >>binary/isolinux/live.cfg <<END
label live-forensic
menu label ^Live (forensic mode)
linux /live/vmlinuz
initrd /live/initrd.img
append boot=live noconfig username=root hostname=kali noswap noautomount

2.3.3 封装ISO
在封装ISO之前,可以指定需要的架构,选择amd64或者i386.还要注意”lb build”需要root权限.如果你不指定架构,live build将根据你现在使用的架构来封装ISO.
如果你想在在32位系统封装64位的ISO,务必打开多架构支持:

dpkg --add-architecture amd64
apt-get update

配置live-build封装64位或者32位ISO:

lb config --architecture amd64 # for 64 bit
# ...or...
lb config --architecture i386 # for 32 bit
lb build

最后一个命令需要一些时间,因为它下载所有需要的软件包然后封装ISO.
2.3.4 为今后封装ISO提速
如果你打算经常定制ISO,你可以把kali的软件包缓存在本地便于今后的封装.最简单的就是安装apt-cacher-ng,然后在每次打包时配置http_proxy环境变量.

apt-get install apt-cacher-ng
/etc/init.d/apt-cacher-ng start
export http_proxy=http://localhost:3142/
.... # setup and configure your live build
lb build

2.4 安装Kali Linux
2.4.1 加密安装Kali Linux
有时我们希望采用全盘加密的方式来加密我们的敏感信息.你可以使用Kali安装程序把它安装到硬盘或是U盘的加密LVM逻辑卷.安装过程除了加密LVM逻辑卷部分以外,与”常规的Kali Linux安装”非常类似.
加密安装Kali Linux条件
安装KaliLinux到你的电脑过程很简单.首先你需要兼容的电脑硬件.最低硬件要求如下,更好的硬件性能会更好.i386镜象默认使用PAE内核,所以你能在大于4GB内存的机器运行它.下载Kali Linux然后刻录DVD盘,或准备好一块Kali Linux Live U盘作为安装媒介.
安装条件
安装Kali Linux需要最少8G硬盘可用空间.
i386和amd64架构,最低512MB内存.
CD-DVD光驱/支持USB引导
准备安装
1. 下载Kali Linux.
2. 把Kali Linux刻录到DVD盘或制作Kali Linux镜像U盘.
3. 确认你电脑的BIOS设置了从CD/USB引导.

Kali Linux安装步骤

1.开始安装,从你选择的安装媒介启动. 你会看到Kali的引导界面.选择图形界面或文本模式安装.此处,我们选择图形界面安装.
2. 选择你的首选语言和国家.你会被提示为你的键盘配置适当的Keymap.
3. 安装器会复制镜象到你的硬盘,探测你的网络接口,然后提示你为你的系统输入主机名.此例,我们输入”Kali”作为主机名.
4. 为root账户输入一个强健的密码
5. 下一步设置时区.
6. 安装器会检测硬盘,并提供4个选项.加密LVM安装应选择”Guided – use entire disk and set up encryptedLVM(使用全盘LVM加密卷)“. 如下图所示.
7. 选择安装Kali的目标驱动器.在此例中我们选择一块U盘作为目标驱动器.我们将用这块U盘来启动加密的Kali.
8. 确认你的分区结构并继续安装.
9. 然后,你将被要求输入一个加密密码.你必须记住此密码并在每次启动Kali时输入.
10. 配置网络Mirrors.Kali使用中心源发布软件.在必要的时候你需要输入适当的代理信息. 注意!如果你选择了”NO”,你将不能从Kali源安装软件.
11. 下一步安装GRUB.
12. 最后,点击Continue(继续)来重启系统,进入全新安装的Kali.如果你安装的目标驱动器是U盘,确认BIOS中已设置为从U盘启动.你将在每次启动时输入先前设置的加密密码.

2.4.2 用Live U盘安装Kali Linux
从U盘启动然后安装Kali是我们最喜欢并且是运行Kali最快(容易)的方法.为此,我们首先要把Kali的ISO克隆到U盘.如果你经常使用Kali Linux U盘,请在克隆前阅读完整的文档.
准备USB镜象

下载Kali linux.
- 如果你用的是Windows,下载Win32 Disk Imager.
- *nix类系统不需要额外的软件.
- 一块U盘(至少 2GB 容量).

  • Kali Linux Live U盘安装过程

在用Windows的电脑上克隆Kali
- 插入U盘.运行Win32 Disk Imager.
- 选择Kali Linux ISO文件作为被克隆的文件,然后核实要克隆的U盘是否正确.
- 克隆完成后,从Windows机器安全弹出U盘.现在你可以用U盘启动Kali Linux了.

  • 在用Linux的电脑上克隆Kali

在Linux环境下制作可启动的Kali Linux U盘很容易.下载好Kali ISO文件后,你可以用dd把它克隆到U盘:
警告!虽然在U盘上克隆Kali过程很简单,但是如果你不懂你正在用dd做什么,很容易破坏引导分区.
1. 插入U盘.
2. 用dmesg确认你的U盘设备块名.
3. 开始克隆Kali ISO文件到U盘(谨慎操作!):

dd if=kali.iso of=/dev/sdb bs=512k

就这样!你现在可以用U盘启动到Kali Live/Installer环境了.

  • 为你的U盘添加Persistence功能

在某些情况下.为你的Kali Linux镜象添加persistence功能(在Live启动的时候可以保存和修改文件)非常有用.为了给你的Kali LinuxU盘启动persistent功能,按照以下步骤.本例中,我们假设我们的设备块名是/dev/sdb
.如果你想添加persistence功能,需要一块比上面提到的要求更大容量的U盘.
1. 克隆Kali Linux ISO到U盘和上面讲解的一样,用dd在”用Linux的电脑上克隆Kali”.
2. 在U盘创建并格式化额外的分区.本例中我们用gparted

gparted /dev/sdb
  1. 现在你的分区方案应该和下图类似:

  2. 着手于格式化一个你要用于persistence功能的理想大小的新分区.在此例,我们使用所有剩余可用空间.确保新创建的分区卷名是persistence然后格式化成ext4文件系统.

  3. 这步完成后,用以下命令挂载用于persistence功能的U盘分区:

mkdir /mnt/usb
mount /dev/sdb2 /mnt/usb
echo "/ union" >> /mnt/usb/persistence.conf
umount /mnt/usb
  1. 插入U盘到你要启动的电脑.务必设置BIOS从USB设备启动.当显示Kali Linux启动画面时,从菜单选择“Live
    boot”(不要按下回车),然后按下Tab键.这将允许你编辑启动参数,在每次你想挂载你的persistent存储时添加“persistence”到boot参数行的最后.

2.4.3 Kali和Windows双引导
把Kali和Windows装在一起很有用.然而,你要谨慎的安装.首先确保你已经备份了你电脑里的重要数据.因为我们要修改你的硬盘,所以你应该把数据备份到别的媒介.一旦你完成了备份,我们推荐你阅读硬盘安装Kali Linux,以了解Kali的基础安装过程.
此例,我们将把Kali Linux和硬盘唯一的Windows7系统装在一起.我们开始重新给WIndows分区划分分区大小,缩小Windows分区的容量,以便把Kali Linux安装到新建的空分区.
下载Kali Linux刻录到DVD光盘, 或者准备一块Kali linux Live U盘
作为安装媒介.如果你的电脑没有DVD光驱或USB端口,请参考网络安装Kali Linux.
硬件要求:
Windows至少有8G的剩余空间
支持CD-DVD / USB引导
准备安装
1. 下载Kali Linux.
2. 刻录Kali Linux DVD盘或制作Kali Linux Live U盘.
3. 确保你的电脑BIOS设置了从CD/USB引导.
双系统安装过程
1. 开始安装,从你选择的安装媒介启动. 你会看到Kali的引导界面.选择Live,然后你会进入到Kali Linux桌面.
2. 使用用户名root,和密码toor登录.下一步运行gparted程序.我们将用gparted缩小windows分区的大小以提供足够的空间安装Kali.
3. 选择Windows分区.根据你的系统情况选择,此例选择较大的第二个分区.此例中有两个分区,第一个分区是系统恢复分区,实际上Windows安装在/dev/sda2.重新调整Windows分区的大小预留(最小8GB)空间给Kali Linux.
4. 重新分区之后.确保点击了硬盘的”Apply All Operations”(应用所有操作).退出gparted并重启.

Kali Linux安装步骤
1. 安装完毕,重启.你会看见GRUB的启动菜单有Kali 和 Windows启动项.

2.4.4 硬盘安装Kali Linux
Kali Linux安装条件
安装Kali Linux到你的电脑过程很简单.首先你需要兼容的电脑硬件. Kali支持i386, amd64, 和ARM (armel和armhf)平台.最低硬件要求如下,更好的硬件性能会更好. i386镜象默认使用PAE内核,所以你能在大于4GB内存的机器运行它.下载Kali Linux然后刻录DVD盘,或者准备好一块Kali Linux Live U盘作为安装媒介.如果你的电脑没有DVD光驱或者USB端口, 请参考KaliLinux网络安装.
安装条件
安装Kali Linux最少8G硬盘可用空间.
i386和amd64架构,最低512MB内存.
CD-DVD光驱/支持USB引导
准备安装
1. 下载Kali linux.
2. 把Kali Linux刻录到DVD盘或制作Kali Linux镜像U盘.
3. 确认你电脑的BIOS设置了从CD/USB引导.
Kali Linux安装步骤
1. 开始安装,从你选择的安装媒介启动.你会看到Kali的引导界面.选择图形界面安装或者文本模式安装.此处,我们选择图形界面安装.
2. 选择你的首选语言和国家.你会被提示为你的键盘配置适当的Keymap
3. 安装器会复制镜象到你的硬盘,探测你的网络接口,然后提示你为你的系统输入主机名.此例,我们输入”Kali”作为主机名.
4. 为root账户输入一个强健的密码,或需要的话创建额外的账户.
5. 下一步设置时区.
6. 安装器会检测硬盘,并提供4个选项.此例,我们使用电脑的整块硬盘,并且不设置LVM(逻辑卷管理器).高级用户可以使用”手动”分区,配置自己的分区结构.
7. 接着在安装器作出不可逆的改变之前你会有机会检查硬盘配置.在你点击继续按钮后,安装器将开始工作,并且安装也快接近尾声.
8. 配置网络Mirrors.Kali使用中心源发布软件.在必要的时候你需要输入适当的代理信息.
注意!如果你选择了”NO”,你将不能从Kali源安装软件.
9. 下一步安装GRUB.
10. 最后,点击继续来重启系统,进入全新安装的Kali.

2.4.5 通过网络安装Kali Linux
用Mini ISO通过网络安装Kali Linux
用Mini ISO安装Kali Linux
用Kali mini ISO可以方便地”从头”开始安装一个最小化的Linux.Mini
ISO会从我们的源下载所需的软件包,这意味着要使用这种安装方式你需要一个快速的网络.
安装条件
安装Kali Linux最少8G硬盘可用空间.
i386和amd64架构,最低512MB内存.
CD-DVD光驱/支持USB引导
准备安装
1. 下载Kali mini ISO.
2. 把Kali Linux刻录到DVD盘或制作Kali Linux镜像U盘.
3. 确认你电脑的BIOS设置了从CD/USB引导.
Kali Linux安装步骤
当你用mini ISO启动时,会出现一个有很多选项的启动界面,本文中,我们将进行简单的基本安装
接下来会提示你各种设置,例如语言和键盘布局,然后你要为系统设置一个主机名称,在这里我们用了默认的kali.
接下来选择时区,然后会出现分区选项,为了快速起见,本文我们选‘Guided – use entiredisk’这个选项,一直按照提示做,直到创建新的分区格局.
为了减少网络流量,默认只选择了一小部分的软件包.如果你要添加另外的服务或功能,可以在这个界面做选择
至此,安装程序会在系统上下载并安装它所需的软件包.这步花的时间与你的网速有关.最后,会提示你安装GRUB以完成整个安装过程

2.4.6 通过网络PXE安装Kali Linux
搭建PXE服务器
通过网络(PXE)来启动和安装Kali,对于一台没有光驱或者USB端口的笔记本很有用,甚至对一个企业部署预安装Kali都很有用.
首先,我们要安装dnsmasq以提供 DHCP/TFTP 服务,然后编辑dnsmasq.conf这个配置文件.

apt-get install dnsmasq
nano /etc/dnsmasq.conf
    在dnsmasq.conf文件中,按如下所示启用DHCP,TFTP和PXE启动,根据你的环境修改dhcp-range:
interface=eth0
dhcp-range=192.168.8.100,192.168.8.254,12h
dhcp-boot=pxelinux.0
enable-tftp
tftp-root=/tftpboot/

编辑好了之后我们需要重启dnsmasq服务使之生效.

service dnsmasq restart

下载安装kali PXE网络启动镜像
现在,我们要创建一个文件夹用于存放Kali网络启动镜像,还有我们欲从Kali软件源下载的镜像.

mkdir -p /tftpboot
cd /tftpboot
# for 64 bit systems:
wget http://repo.kali.org/kali/dists/kali/main/installer-amd64/current/images/netboot/netboot.tar.gz
# for 32 bit systems:
wget http://repo.kali.org/kali/dists/kali/main/installer-i386/current/images/netboot/netboot.tar.gz
tar zxpf netboot.tar.gz
rm netboot.tar.gz

设置要安装Kali的机器从网络启动
都配置好之后,现在你可以启动你的电脑.,然后配置它从网络启动.它会从PXE服务器获取到IP地址然后启动kali.

2.4.7 Kali Linux常见问题
Virtual Box的Kali Linux虚拟机
如果你想在VirtualBOX里安装Kali Linux,为了能够顺利安装功能增强工具,请参考如下的指南.
建议使用最新版的VirtualBOX,因为可以提升用户体验,包括兼容性的提高,软件核心和客户端功能增强工具的稳定性的增强.
在Virtual Box的Kali Linux虚拟机安装增强工具
为了整合鼠标和屏幕以及与你的宿主机共享目录,你应该安装VirtualBox增强功能工具.
启动Kali Linux虚拟机后,打开一个终端然执行如下命令来安装Linux内核头文件.

apt-get update && apt-get install -y linux-headers-$(uname -r)

安装完后,从VirtualBox菜单的”Install Guest
Additions”选择’Devices’来挂载客户端功能增强的ISO到虚拟机的CD光驱.提示自动运行CD时,点击取消按钮.
在终端窗口,复制虚拟机CD-Rom里的VboxLinuxAdditions.run这个文件到本地目录,确认有可执行权限,然后运行该文件开始安装.

cp /media/cd-rom/VBoxLinuxAdditions.run /root/
chmod 755 /root/VBoxLinuxAdditions.run
cd /root
./VBoxLinuxAdditions.run

功能增强工具安装好后重启Kali Linux虚拟机.鼠标和屏幕整合好了,也可以与宿主机共享目录了.

创建宿主机的共享目录
练习题。

2.4.8 Kali虚拟机安装VMware Tools
我们建议你自己创建一台Kali
Linux的VMware虚拟机,而不是使用我们预先提供的VMware镜象,进行如下的操作以便在Kali虚拟机成功安装VMwareTools.你可以选择安装open-vm-tools,或自带的VMWare tools.
安装open-vm-Tools
这可能是在Kali虚拟机里实现”VMware Tools”功能最容易的方法.
apt-get install open-vm-tools
在Kali里安装VMware Tools
如果open-vm-tools不能用,或者你更偏向于使用VMware Tools,开始安装一些VMware Tools安装器需要的包:

apt-get install gcc make linux-headers-$(uname -r)
ln -s /usr/src/linux-headers-$(uname -)/include/generated/uapi/linux/version.h /usr/src/linux-headers-$(uname -r)/include/linux/

下一步,通过点击菜单里的”Install VMware Tools”挂载VMware Tools的ISO.虚拟机的光驱连接到VMware ToolsISO后,我们挂载驱动器然后复制VMware Tools安装器到/tmp/目录下.

mkdir /mnt/vmware
mount /dev/cdrom /mnt/vmware/
cp -rf /mnt/vmware/VMwareTools* /tmp/
最后,进到/tmp/目录,解压缩然后开始安装:
cd /tmp/
tar zxpf VMwareTools-*.tar.gz
cd vmware-tools-distrib/
./vmware-tools-install.pl

照着上面的命令,VMware Tools就安装好了.

VMware里鼠标移动很慢
如果在KaliLinux的VMware虚拟机里,你的鼠标移动很慢或者反应很迟钝.尝试在Kali虚拟机里安装xserver-xorg-input-vmmouse这个包.

apt-get install xserver-xorg-input-vmmouse
reboot

VMWare Tools不能编译
这是个经常折磨我们不幸的事实,例如KaliLinux用了VMware还没有支持的太新的内核.有时,可能需要在VMware社区寻找”兼容的VMware Tools补丁”.
已知问题
截自2013年3月2日为止.VMwareTools已经在3.7内核编译通过,除了共享文件夹模块不能正常工作外.已经有补丁可以解决这个问题

Kali Linux电子取证模式
BackTrack Linux引入了”Forensic Boot”启动选项,BackTrack 5里也有,现在Kali Linux里依然有这个选项.由于BacktrackLinux的广泛传播,”Forensic Boot”也被证明是非常的流行.许多人都备着KaliLinux,以便在需要取证时方便的用上.它集成了流行的开源取证工具,Kali是在你需要做开源取证工作时非常趁手的工具.
扩展内容
2.4.9 Kali Linux ARM文档
在MK/SS808上安装Kali ARM
在三星Chromebook安装Kali
在ODROID U2安装Kali ARM

2.4.10 重新编译Kali Linux内核
有时你可能想添加必要的驱动、补丁、Kali Linux内核里没有的功能.如下的教程描述如何根据你的需要快速地修改和编译KaliLinux内核.请注意目前默认的Kali Linux内核已经打过了大量的无线注入补丁.
安装编译所需的依赖
开始安装编译内核所需的所有依赖.

apt-get install kernel-package ncurses-dev fakeroot bzip2

下载Kali Linux内核源代码
下载并解压Kali Linux的内核源代码.

apt-get install linux-source
cd /usr/src/
tar jxpf linux-source-3.7.tar.bz2
cd linux-source-3.7/

配置内核
复制Kali默认的内核配置文件然后根据你的需要修改.这一步你需要应用各种驱动、补丁、等等…在此例中,我们重新编译一个64位内核.

cp /boot/config-3.7-trunk-amd64 .config
make menuconfig

编译内核
编译你修改过的内核.需要花的时间和硬件配置有关.

CONCURRENCY_LEVEL=$(cat /proc/cpuinfo|grep processor|wc -l)
make-kpkg clean
fakeroot make-kpkg kernel_image

安装内核
内核编译成功后.继续以安装新内核,然后重启.请注意内核版本号可能不同.在此例中,当前的内核版本是3.7.2,你需要根据情况做相
应的修改.

dpkg -i ../linux-image-3.7.2_3.7.2-10.00.Custom_amd64.deb
update-initramfs -c -k 3.7.2
update-grub2
reboot

重启后,你的新内核应该运行了.如果出错了导致你的内核不能启动,你仍然可以通过启动官方的Kali Linux内核来解决问题.

从源代码编译包
有时,我们需要从源代码重新编译一个Kali包.幸运的是用APT下载源代码包,进行必要的修改后再用Debian工具重新编译是如此的简单.此例中,为了添加额外的Mifare Key硬编码到mifare格式化工具,我们将重新编译libfreefare这个包.
下载包的源代码

# Get the source package
apt-get source libfreefare
cd libfreefare-0.3.4~svn1469/

修改包的源代码
按需修改包里面的源代码文件,此例中,我们以修改mifare-classic-format.c为例.

nano examples/mifare-classic-format.c

检查编译所需的依赖
检查编译包所需的依赖.它们需要在编译包前被安装.

dpkg-checkbuilddeps

输出的结果和如下类似,在于你已经安装了什么包.如果dpkg-checkbuilddeps没有任何输出,说明你没有缺少依赖,可以继续编译.

dpkg-checkbuilddeps: Unmet build dependencies: dh-autoreconf libnfc-dev

安装编译所需的依赖
安装上面dpkg-checkbuilddeps输出的编译所需的依赖:

apt-get install dh-autoreconf libnfc-dev

编译修改过的包
所有安装依赖安装好后,调用dpkg-buildpackage来编译是件很容易的事.

dpkg-buildpackage

安装新编译的包
如果一切顺利,你就可以安装新编译的包了.

dpkg -i ../libfreefare*.deb

ARM交叉编译
本文档说明如何在kali linux上配置ARM交叉编译环境,是我们多份关于”定制ARM镜像”的文档的起点.
开发机的配置
编译内核生成镜象通常需要大量硬盘空间.确保你的开发机至少有50G可用硬盘空间以及足够的内存,CPU不要太差.
安装依赖
先安装ARM交叉编译所需的依赖.

apt-get install git-core gnupg flex bison gperf libesd0-dev build-essential
zip curl libncurses5-dev zlib1g-dev libncurses5-dev gcc-multilib g++-multilib

如果你是64位的Kali Linux系统,用如下命令添加i386架构支持到你的开发环境.

dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs

下载Linaro工具链
从我们的Git源下载Linaro交叉编译器.

cd ~
mkdir -p arm-stuff/kernel/toolchains
cd arm-stuff/kernel/toolchains
git clone git://github.com/offensive-security/arm-eabi-linaro-4.6.2.git

设置环境变量
为了能使用Linaro交叉编译器,你需要在你的session里设置如下的环境变量.

export ARCH=arm
export CROSS_COMPILE=~/arm-stuff/kernel/toolchains/arm-eabi-linaro-4.6.2/bin/arm-eabi-

现在你的ARM交叉编译环境完成了,可以编译属于你自己的ARM内核了.

渗透测试教程(基础篇)-2相关推荐

  1. Kali Linux渗透测试——MSF基础篇

    笔记内容参考安全牛课堂苑房弘老师的Kali Linux渗透测试教程 Metasploit是目前最流行.最强大.最具扩展性的渗透测试平台,一定程度上统一了渗透测试和漏洞研究的工作环境,使得新的攻击代码比 ...

  2. 基于Android设备的Kali Linux渗透测试教程第1章渗透测试

    基于Android设备的Kali Linux渗透测试教程第1章渗透测试 渗透测试(Penetration Testing)是一种通过模拟攻击者所采用的技术与方法,攻击目标系统的安全控制措施,并取得访问 ...

  3. Midjourney|文心一格prompt教程[基础篇]:注册使用教程、风格设置、参数介绍、隐私模式等

    Midjourney|文心一格prompt教程[基础篇]:注册使用教程.风格设置.参数介绍.隐私模式等 开头讲一下为什么选择Midjourney和文心一格,首先Midjourney功能效果好不多阐述: ...

  4. Kali Linux渗透测试——MSF实战篇(一)

    笔记内容参考安全牛课堂苑房弘老师的Kali Linux渗透测试教程 文章目录 一.信息收集 (一)db_nmap (二)Auxiliary模块 1.arp扫描 2.端口扫描 3.空闲扫描 4.UDP扫 ...

  5. 渗透测试-地基钓鱼篇-Cobalt Strike钓鱼(二十五)

    ** 渗透测试-地基钓鱼篇-Cobalt Strike钓鱼(二十五) ** 作者:大余 时间:2020-12-17 简介: 渗透测试-地基篇: 该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录 ...

  6. 【每天学习一点新知识】渗透测试信息收集篇

    目录 1.网页直接获取信息 2.端口扫描 3.子域名查询 4. C段旁注 5.网络空间搜索引擎.谷歌语法 6.whois查询 渗透测试流程: 信息收集是渗透测试的前期工作,对于渗透测试来说十分重要.只 ...

  7. Kail Linux渗透测试教程之免杀Payload生成工具Veil

    Kail Linux渗透测试教程之免杀Payload生成工具Veil 免杀Payload生成工具--Veil Kail Linux渗透测试教程之免杀Payload生成工具Veil,Veil是一款利用M ...

  8. Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap

    Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap 网络扫描和嗅探工具--Nmap Nmap也就网络映射器(Network Mapper),是一个免费开放的网络扫描和嗅探工具.该工具可以扫描 ...

  9. 搭建渗透测试环境选自KaliLinux无线网络渗透测试教程

    第1章搭建渗透测试环境 许多提供安全服务的机构会使用一些术语,如安全审计.网络或风险评估.以及渗透测试.这些术语在含义上有一些重叠,从定义上来看,审计是对系统或应用的量化的技术评估.安全评估意为对风险 ...

  10. 基于c++和asio的网络编程框架asio2教程基础篇:1、基本概念和使用说明

    基于c++和asio的网络编程框架asio2教程基础篇:1.基本概念和使用说明 由于asio2没有写技术文档,因此打算写几篇文章介绍一下如何使用它,主要是针对新手. 1.asio2如何使用? asio ...

最新文章

  1. 把握机缘_机缘巧合,蒙太奇训练以及我的朋友如何使自己失业
  2. AI芯片浪潮:创新企业造芯抢夺物联网时代制高点
  3. 邬贺铨:解读5G技术关键点,及如何影响AIoT
  4. CrazyWing:Python自动化运维开发实战 八、Python数据类型之字符串
  5. robot framework环境搭建
  6. matplotlib中plot的颜色
  7. windows的键盘输入重定向
  8. sqlmap 进行sql漏洞注入
  9. 日志分析linux命令
  10. 谷歌搜索技巧:搜索语法+隐藏彩蛋+高级设置
  11. Flask开发微电影网站(十)
  12. 部分 MP4 视频在谷歌浏览器无法播放
  13. redhat6静默安装oracle11g,redhat6.2静默安装oracle11gr2
  14. 净利大涨13倍,“缺芯”后的士兰微要如何不“躺平”?
  15. SAP标准报表显示格式切换
  16. 用程序 揭秘 用手机号尾号暴露你年龄的 骗局
  17. 苹果笔到底有没有必要买?苹果平板电容笔排行榜
  18. VmatrixOJ--解码游戏
  19. Nginx基础应用——日志切割
  20. Python爬取手机APP

热门文章

  1. Java三大特性之多态
  2. 3DLC系列之:工作色彩模型
  3. Windows搭建Sosoapi
  4. LWM2M开源协议栈——wakaama源代码分析
  5. 按键精灵基础插件介绍,值得收藏呀
  6. python 对比文件内容差异_Python-文件差异对比
  7. 几款软件需求分析工具
  8. 计算机毕设(附源码)JAVA-SSM基于的网上拍卖系统
  9. Linux系统软件看门狗
  10. mysql odbc 卸载_Linux卸载MySQL