Kali安裝w3af超級詳細教程
我爲了安裝個w3af花了10個小時,因爲網上能參考的教程比較少,有些報錯的解決方法甚至網上都沒有,特意記錄下來,以供大家參考。整篇教程適合剛裝的kali。
首先,由於kali2.0自帶的w3af在掃描時會自動卡死,而且kali在2019.2發佈的版本中去除了w3af,所以我們需要自己安裝。我們需要準備以下三個環境:
- Git 客戶端:安裝命令
sudo apt-get install git
- Python 2.7, 這個kali是默認安裝的,但是python2.7在2020年1月1日會停止維護,我們下面需要的pip在2020.1.1後不再支持python2.7,建議大家在安裝完w3af後升級python。
- Pip version 1.1:安裝命令
sudo apt-get install python-pip
之後我們進入到w3af的安裝流程
- 首先我們根據官方文檔的建議,把w3af安裝在主目錄上,當然也可以不安裝在這裏。
- 升級一下數據:
apt-get update
。 - 升級pip:
pip install --update pip
。 - 下載w3af源代碼:
git clone https://github.com/andresriancho/w3af.git
這裏可能會花費一下時間 - 進入w3af目錄:
cd /root/w3af
(安裝在哪就去哪)。 - 安裝lxml:
apt-get build-dep python-lxml
(需要先安裝此軟件,官方文檔未提示安裝,但不安裝便會報錯,好坑) - 打開界面:
./w3af_console
(命令行界面);./w3af_gui
(圖形化界面)。 - 打開後會顯示需要安裝很多依賴
那麼我們可以直接複製上方的命令,也可以執行下方的腳本。 - 這是會有報錯的情況,如果沒有報錯請直接跳過這步。
【1】下圖報錯
輸入下列命令,安裝依賴:
sudo apt-get install python-dev
sudo apt-get install build-essential
sudo apt-get install libssl-dev
sudo apt-get install libffi-dev
sudo apt-get install libxml2-dev
sudo apt-get install libxslt1-dev
sudo apt-get install zlib1g-dev
sudo apt-get install python-pip
接下來繼續執行第八步。
【2】下圖報錯
這是由於你的PyYAML版本不對或者沒有安裝。
輸入以下命令:pip install pyyaml==3.12
若還是報錯,那你的版本可能比3.12高,所以需要降級,但是使用
pip uninstall pyyaml
會報錯,由於PyYAML的依賴過多,不能清晰地刪除,所以我們執行以下命令:
sudo pip install pyyaml==3.12 --ignore-installed nibabel
再次執行第8步。
在成功打開地打開命令行界面後,我們打開圖形化界面:
- 圖形化界面會告知繼續安裝依賴。
- 安裝後,運行圖形化界面,會有提示no module named webkit,所以還需要安裝webkit。
- 執行下列命令:
【1】wget http://ftp.br.debian.org/debian/pool/main/p/pywebkitgtk/python-webkit_1.1.8-3_amd64.deb
【2】wget http://ftp.br.debian.org/debian/pool/main/w/webkitgtk/libjavascriptcoregtk-1.0-0_2.4.11-3_amd64.deb
【3】wget http://ftp.br.debian.org/debian/pool/main/p/python-support/python-support_1.0.15_all.deb
【4】wget http://ftp.br.debian.org/debian/pool/main/w/webkitgtk/libwebkitgtk-1.0-0_2.4.11-3_amd64.deb
【5】dpkg -i python-support_1.0.15_all.deb
【6】dpkg -i libjavascriptcoregtk-1.0-0_2.4.11-3_amd64.deb
【7】dpkg -i libwebkitgtk-1.0-0_2.4.11-3_amd64.deb
【8】dpkg -i python-webkit_1.1.8-3_amd64.deb
可能會報錯,依賴libicu57未安裝,不知道什麼原因,截止到我發這篇博客之前網上並沒有正確可以下載libicu57的命令發佈,所以我們自己找鏈接
鏈接點擊這裏
在裏面找到適合自己的libicu57版本,執行命令:
wget http://ftp.de.debian.org/debian/pool/main/i/icu/libicu57_57.1-6+deb9u2_amd64.deb
後安裝:
dpkg -i libicu57_57.1-6+deb9u2_amd64.deb
(你下載的文件)
再次執行【6】到【8】
若再次報錯,則輸入:apt-get install --fix-broken
再次執行【8】
圖形化界面打開成功
——————————安裝成功————————————
【附】創建w3af桌面快捷方式:
-
如果你的kali自帶了w3af,可以使用舊版本的快捷方式,位置一般在w3af目錄下,文件名是w3af.desktop。
-
如果你的kali沒有自帶w3af,那麼我們自己裝,首先在桌面或w3af目錄中創建w3af.desktop文件,可以使用cat命令,直接對文件內容進行修改。
-
輸入命令:
cat >w3af.desktop <<EOF
-
接着輸入文件的內容:
>[Desktop Entry]
>Type=Application
>Name=w3af
>Encoding=UTF-8
>Exec=sh -c "/root/w3af/w3af_gui"
>Icon=/root/w3af/w3af.png
>Terminal=true
>Categories=w3af
>EOF
【拓展】
(1).[Desktop Entry] 每個桌面項文件的第一行和每節的開頭,標識與桌面集成的鍵值對塊,是桌面正確識別文件所必須的。
(2).Type(必填):定義了Desktop Entry文件的類型。常見的Type數值是Application和Link。Application表示當前Desktop Entry文件指向了一個應用程序; Link表示當前Desktop Entry文件指向了一個URL。
(3).Name(必填):定義了應用程序的名稱。
(4).Exec(選填):定義了啓動指定應用程序所要執行的命令,該關鍵字只有在Type=Application時纔有意義。
(5).Icon(選填):定義了當前Desktop Entry文件在應用程序瀏覽器或在文件瀏覽器中所顯示的圖標。w3af圖標如下圖,若文件沒有縮略圖,則可以以png方式保存下圖:
(6).Terminal(選填):布爾類型,該關鍵字只有在Type=Application時纔有意義。其數值指出了是否需要在終端窗口中運行。
(7).Comment(選填):該數值是對當前Desktop Entry的簡單描述。
(8).Categories(選填):該數值指出了相關應用程序在菜單中顯示的類別。只有在Type=Application時纔有意義。 -
然後我們把文件放到桌面上,進入桌面目錄.
-
給予該快捷方式以權限:
chmod +x w3af.desktop。
-
此時若你的快捷方式文件變爲下圖所示,則爲成功
-
若你的快捷方式還是不能運行,則點擊下圖所示的“Allow Launching”。