Kali Linux 秘籍 第二章 定制 Kali Linux

2022-11-27 16:13:12 浏览数 (1)

第二章 定制 Kali Linux

作者:Willie L. Pritchett, David De Smet 译者:飞龙 协议:CC BY-NC-SA 4.0

这一章会向你介绍Kali的定制,便于你更好地利用它。我们会涉及到ATI和英伟达GPU技术的安装和配置,以及后面章节所需的额外工具。基于ATI和英伟达GPU的显卡允许我们使用它们的图像处理单元(GPU)来执行与CPU截然不同的操作。我们会以ProxyChains的安装和数字信息的加密来结束这一章。

2.1 准备内核头文件

有时我们需要使用所需的内核头文件来编译代码。内核头文件是Linux内核的源文件。这个秘籍中,我们会解释准备内核头文件所需的步骤,便于以后使用。

准备

完成这个秘籍需要网络连接。

操作步骤

让我们开始准备内核头文件:

我们首先通过执行下列命令升级发行版作为开始:

代码语言:javascript复制
apt-get update

下面,我们需要再次使用apt-get来准备内核头文件,执行下列命令:

代码语言:javascript复制
apt-get install linux-headers - `uname –r`

复制下列目录以及其中的全部内容:

代码语言:javascript复制
cd /usr/src/linux 
cp -rf include/generated/* include/linux/

我们现在已准备好编译需要内核头文件的代码。

2.2 安装 Broadcom 驱动

在这个秘籍中,我们将要安装 Broadcom 官方的Linux混合无线驱动。 使用Broadcom 无线USB适配器可以让我们在Kali上连接我们的无线USB接入点。对于这本书的其余秘籍,我们假设Broadcom 无线驱动已经安装。

准备

完成这个秘籍需要网络连接。

操作步骤

让我们开始安装 Broadcom 驱动:

打开终端窗口,从http://www.broadcom.com/support/802.11/linux_sta.php下载合适的Broadcom 驱动:

代码语言:javascript复制
cd /tmp/ 
wget http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_ x86_64-v5_100_82_112.tar.gz

使用下列命令解压下载的驱动:

代码语言:javascript复制
mkdir broadcom 
tar xvfz hybrid-portsrc_x86_64-v5_100_82_112.tar.gz –C /tmp/ broadcom

修改wl_cfg80211.c文件,由于5.100.82.112版本中有个bug,会阻止小于2.6.39内核版本上的编译:

代码语言:javascript复制
vim /tmp/broadcom/src/wl/sys/wl_cfg80211.c

观察代码段的1814行:

代码语言:javascript复制
#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)

将其改为:

代码语言:javascript复制
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39) 

并保存修改。

编译代码:

代码语言:javascript复制
make clean
make
make install

更新依赖:

代码语言:javascript复制
depmod -a

通过下列命令找到加载的模块:

代码语言:javascript复制
lsmod | grep b43|ssb|bcma

通过执行下列命令移除发现的模块:

代码语言:javascript复制
rmmod <module>b43

其中<module>应为b43ssbbcma

将模块加入黑名单,防止它们在系统启动中加载:

代码语言:javascript复制
echo "blacklist <module>" >> /etc/modprobe.d/blacklist.conf 

其中<module>应为b43ssbwl

最后,将新模块添加到Linux内核中,来使它成为启动进程的一部分:

代码语言:javascript复制
modprobe wl

2.3 安装和配置ATI显卡驱动

这个秘籍中,我们会详细讲解ATI显卡驱动的安装和配置,在此之前需要AMD Accelerated Parallel Processing (APP) SDK、OepnCL和CAL 。我们可以利用 ATI Stream技术的优势来运行计算密集型任务 – 它们通常运行在CPU上 – 使它们更快更高效地执行。更多ATI Stream技术相关的详细信息,请访问www.amd.com/stream。

准备

需要网络连接来完成这个秘籍。同时在开始这个秘籍之前需要准备内核头文件,它在第一节有所涉及。

操作步骤

让我们开始安装和配置ATI驱动:

下载系统所需的ATI显示驱动:

代码语言:javascript复制
cd /tmp/ 
wget http://www2.ati.com/drivers/linux/amd-driver-installer-121-x86.x86_64.run

我们也可以从下面的网址下载显示驱动:[http://support. amd.com/us/gpudownload/Pages/index.aspx](http://support. amd.com/us/gpudownload/Pages/index.aspx)。

通过键入下列命令来开始安装:

代码语言:javascript复制
sh amd-driver-installer-12-1-x86.x86_64.run

在安装完成之后,重启你的系统来使改变生效,并且避免不稳定。

为之后的步骤安装一些依赖:

代码语言:javascript复制
apt-get install libroot-python-dev libboost-python-dev libboost1.40-all-dev cmake

下载并解压 AMD APP SDK,根据你的CPU架构:

代码语言:javascript复制
wget http://developer.amd.com/Downloads/AMD-APP-SDK-v2.6-lnx64.tgz 
mkdir AMD-APP-SDK-v2.6-lnx64 
tar zxvf AMD-APP-SDK-v2.6-lnx64.tgz –C /tmp/AMD-APP-SDK-v2.6-lnx64 
cd AMD-APP-SDK-v2.6-lnx64

通过下列命令安装AMD APP SDK:

代码语言:javascript复制
sh Install-AMD-APP.sh

.bashsrc文件中设置ATI Stream的路径:

代码语言:javascript复制
echo export ATISTREAMSDKROOT=/opt/AMDAPP/ >> ~/.bashrc 
source ~/.bashrc

下载并编译calpp

代码语言:javascript复制
cd /tmp/ 
svn co https://calpp.svn.sourceforge.net/svnroot/calpp calpp 
cd calpp/trunk 
cmake . 
make 
make install

下载并编译pyrit

代码语言:javascript复制
cd /tmp/ 
svn co http://pyrit.googlecode.com/svn/trunk/ pyrit_src 
cd pyrit_src/pyrit 
python setup.py build 
python setup.py install

构建并安装OpenCL:

代码语言:javascript复制
cd /tmp/pyrit_src/cpyrit_opencl 
python setup.py build 
python setup.py install

cpyrit_calpp的安装做一些小修改:

代码语言:javascript复制
cd /tmp/pyrit_source/cpyrit_calpp 
vi setup.py

找到下面这一行:

代码语言:javascript复制
VERSION = '0.4.0-dev' 

把它改成:

代码语言:javascript复制
VERSION = '0.4.1-dev' 

之后,找到下面这一行:

代码语言:javascript复制
CALPP_INC_DIRS.append(os.path.join(CALPP_INC_DIR, 'include')) 

把它改成:

代码语言:javascript复制
CALPP_INC_DIRS.append(os.path.join(CALPP_INC_DIR, 'include/CAL'))

最后将ATI GPU模块添加到pyrit:

代码语言:javascript复制
python setup.py build 
python setup.py install

为了展示可用的CAL 设备和CPU的核数,我们需要键入下列命令: pyrit list_cores 为了进行跑分,我们只需要键入: pyrit benchmark

2.4 安装和配置英伟达显卡驱动

这个秘籍中,我们会拥抱CUDA,英伟达的并行计算架构。在CUDA工具包的安装之后,首先会安装英伟达开发者显示驱动。通过使用GPU的威力,这会带来计算性能的戏剧性提升,它们通常用于一些类似密码破解的场合。

有关CUDA的更多信息,请浏览他们的官方网站。

准备

需要网络连接来完成这个秘籍。

同时需要在开始之前准备内核头文件,这在第一节中有所涉及。

为了完成英伟达驱动的安装,需要关闭X会话。

操作步骤

让我们开始安装和配置英伟达显卡驱动:

下载英伟达开发者显示驱动,根据你的CPU架构:

代码语言:javascript复制
cd /tmp/ 
wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/ drivers/NVIDIA-Linux-x86_64-285.05.33.run

安装驱动:

代码语言:javascript复制
chmod  x NVIDIA-Linux-x86_64-285.05.33.run 
./NVIDIA-Linux-x86_64-285.05.33.run –kernel-source-path='/usr/src/ linux'

下载CUDA工具包:

代码语言:javascript复制
wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/ toolkit/cudatoolkit_4.1.28_linux_64_ubuntu11.04.run

安装CUDA工具包到/opt

代码语言:javascript复制
chmod  x cudatoolkit_4.1.28_linux_64_ubuntu11.04.run 
./cudatoolkit_4.1.28_linux_64_ubuntu11.04.runConfigure the environment variables required for nvcc to work: 
echo PATH=$PATH:/opt/cuda/bin >> ~/.bashrc 
echo LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib >> ~/.bashrc 
echo export PATH >> ~/.bashrc 
echo export LD_LIBRARY_PATH >> ~/.bashrc

运行以下命令来使变量生效:

代码语言:javascript复制
source ~/.bashrc 
ldconfig

安装pyrit的依赖:

代码语言:javascript复制
apt-get install libssl-dev python-dev python-scapy

下载并安装GPU增效工具pyrit

代码语言:javascript复制
svn co http://pyrit.googlecode.com/svn/trunk/ pyrit_src 
cd pyrit_src/pyrit 
python setup.py build 
python setup.py install

最后,将英伟达GPU模块添加到pyrit

代码语言:javascript复制
cd /tmp/pyrit_src/cpyrit_cuda 
python setup.py 
build python setup.py install

为了验证nvcc是否正确安装,我们需要键入下列命令: nvcc -V 为了进行跑分,我们只需要键入下列命令: pyrit benchmark

2.5 升级和配置额外的安全工具

这个秘籍中,我们会涉及到升级Kali,以及配置一些额外的工具,它们对于之后的章节和秘籍十分实用。由于Kali的包在发布之间会不断升级,你很快就会发现比起之前在你的DVD中下载好的工具,又提供了一系列新的工具。我们会以升级来开始,之后获得Nessus的激活码,并以安装Squid来结束。

操作步骤

让我们开始进行升级,以及配置额外的安全工具。

使用仓库中最新的修改来更新本地的包索引:

代码语言:javascript复制
apt-get update

升级现有的包:

代码语言:javascript复制
apt-get upgrade

升级到最新版本(如果可用的话):

代码语言:javascript复制
apt-get dist-upgrade

获得Nessus的激活码,通过在[这里]( http://www.nessus.org/ products/nessus/nessus-plugins/obtain-an-activation-code)注册。

通过执行下列命令来激活Nessus:

代码语言:javascript复制
/opt/nessus/bin/nessus-fetch --register A60F-XXXX-XXXX-XXXX-0006 

其中A60F-XXXX-XXXX-XXXX-0006应为你的激活码。

为Nessus Web界面创建账户:

代码语言:javascript复制
/opt/nessus/sbin/nessus-adduser

为了启动Nessus服务器,我们只需要执行下列命令:

代码语言:javascript复制
/etc/init.d/nessusd start

安装Squid:

代码语言:javascript复制
apt-get install squid3 

阻止Squid在启动时自动运行:

代码语言:javascript复制
update-rc.d -f squid3 remove

为了在仓库中找到特定的包,我们可以在apt-get update之后使用下列命令: apt-cache search <keyword> 其中<keyword>是包名称或者正则表达式。

2.6 配置ProxyChains

这个章节中,我们会强制指定应用的网络连接使用用户定义的代理列表,来打破接受者和发送者之间的直接连接。

操作步骤

打开ProxyChains的配置文件:

代码语言:javascript复制
vim /etc/proxychains.conf 

解除我们打算使用的链接类型的注释,这里是dynamic_chain

向列表中添加一些代理服务器:

使用我们的链式代理来解析目标主机:

代码语言:javascript复制
proxyresolv www.targethost.com 

现在可以在我们打算使用的应用上运行ProxyChains,例如msfconsole

代码语言:javascript复制
proxychains msfconsole

2.7 目录加密

这一章的最后一个秘籍关于信息隐私。我们会使用TrueCrypt通过密钥来隐藏重要和私密的数字信息,远离公众的眼睛。

操作步骤

  1. 通过访问Applications Menu | Kali | Forensics | Digital Anti Forensics | install truecrypt来安装TrueCrypt。

点击Install TrueCrypt(安装TrueCrypt)并且遵循屏幕上的指导。

  1. Applications Menu | Kali Linux | Forensics | Digital Anti Forensics | truecrypt运行TrueCrypt,你会看到下面的窗口:
  2. 点击Create Volume(新建卷)来启动TrueCrypt Volume Creation Wizard(TrueCrypt卷创建向导)。
  3. 保留默认选项并点击Next
  4. 选择Standard TrueCrypt(标准TrueCrypt)模式并点击Next
  5. 点击Select File…(选择文件)按钮并为新的TrueCrypt卷指定名称和路径。完成后点击Save(保存)。
  6. 点击Next按钮并选择打算使用的加密和哈希算法。
  7. 在下个屏幕中,我们会为容器指定空间总量。
  8. 现在我们需要为我们的卷键入密码。点击Next
  9. 选择文件系统类型。
  10. 按需选择Cross-Platform Support(跨平台支持)。
  11. 在下个屏幕中,向导会让我们在窗口内移动鼠标,来增加加密密钥的密码强度。完成后点击Format(格式化)按钮。
  12. 格式化会开始,完成时TrueCrypt的卷就创建好了。按下OKExit(退出)。
  13. 我们现在回到TrupCrypt窗口。
  14. 从列表中选择一个Slot(槽)来解密我们的卷,点击Select File…(选择文件),并打开我们创建的卷。
  15. 点击Mount(挂载)并键入我们的密码,完成后点击OK
  16. 我们现在可以通过在槽上双击或通过挂载目录来访问卷,以及在里面保存文件。当我们完成之后,只需要点击Dismount All(解除所有挂载)。

工作原理

这个秘籍中,我们配置了 Truecrypt,创建了保护卷,之后挂载了它。这是个用于保护数据安全性的实用工具。

0 人点赞