GNU/Linux >> Linux Esercitazione >  >> Linux

Perfetto Fluxbox Desktop su Kali Linux

Questo tutorial è stato testato su Kali Linux 2017.1

Per il mio lavoro, ho bisogno di un ambiente Linux portatile per eseguire i test, quindi mi ritrovo spesso a usare Kali Linux da una macchina virtuale con poche risorse o avviato da un'unità flash. In questo caso, avere un desktop leggero è importante quanto gli strumenti stessi.

Considerazioni

Si presume che:

  • Hai installato un ambiente Kali Linux (la versione 2017.1 è la versione testata)
  • Hai una connessione Internet funzionante
  • Sei loggato come root (poiché questa è l'impostazione predefinita per Kali)

Installa Fluxbox

apt-get update 
apt-get install fluxbox

Installa LightDM

L'installazione di lightDM non solo imposta una schermata di accesso molto più leggera, ma otterresti anche il comando di blocco per la sezione delle chiavi Fluxbox.

apt-get install lightdm 
dpkg-reconfigure lightdm

Imposta LightDM come desktop manager predefinito:

Alcuni strumenti aggiuntivi

Fluxbox è un gestore di finestre molto leggero, potremmo utilizzare alcuni strumenti aggiuntivi per creare un ambiente più amichevole. Questi sono solo alcuni consigli:

apt-get install xfce4-screenshooter shutter gnome-do terminator
  • Xfce4-screenshooter e Shutter sono strumenti per fare screenshot, ne ho molto bisogno per documentare il mio lavoro. L'otturatore richiede più risorse, ma lo preferisco.
  • Gnome-Do è un programma di avvio, molto utile, specialmente su Fluxbox, per eseguire applicazioni senza toccare il mouse.
  • Terminator è un terminale ricco di funzionalità, fantastico se hai bisogno di programmi terminali in esecuzione insieme

Nota quando avvii gnome-do per la prima volta imposta la preferenza su "Nascondi finestra al primo avvio" in modo da non vederlo ogni volta che accedi. Quindi eseguilo con il tasto Windows + spazio:

Passa a Fluxbox

In questo momento dovresti effettuare il logout e quindi accedere a fluxbox, per questo dovresti selezionare la sessione sul gestore degli accessi, nel caso in cui hai installato LightDM si troverà nell'angolo in alto a destra:

Dopo il primo accesso, verranno generati i file di configurazione.

Aprire un terminale per continuare con la configurazione. Per fare ciò, fai clic con il pulsante destro del desktop e vai su "Applicazioni", "Emulatori di terminale" e seleziona un Terminale, oppure puoi premere Alt+F2 ed eseguire il comando per il tuo terminale preferito.

Backup dei file di configurazione

Eseguiamo il backup, come dovresti sempre fare, dei file di configurazione che stiamo per modificare:

cp ~/.fluxbox/{,bkp.}menu 
cp ~/.fluxbox/{,bkp.}init
cp ~/.fluxbox/{,bkp.}keys
cp ~/.fluxbox/{,bkp.}overlay
cp ~/.fluxbox/{,bkp.}startup

Configura il menu Fluxbox

Se è la prima volta che accedi a fluxbox, noterai a prima vista che non hai alcun menu su cui andare, ma è lì, devi fare clic con il pulsante destro del mouse sul desktop per implementarlo

A questo punto dovresti avere il menu fluxbox predefinito, che non sarà molto utile, ecco perché questo capitolo...

Cambiamo la posizione del file di menu predefinito (~/.fluxbox/menu), questa è una buona pratica perché, a seconda della distribuzione, a volte potresti sovrascrivere questo file:

sed -i 's/\/menu/\/custommenu/1' ~/.fluxbox/init

Puoi modificare manualmente il menu in qualsiasi momento modificando il file ~/.fluxbox/custommenu. Nota che custommenu è il nome che ho scelto per il file nel comando precedente

Il file di menu stesso è molto autoesplicativo, quindi non è necessario essere molto dettagliati sul formato. Come preferenza personale cambio il titolo e metto al primo posto le mie applicazioni preferite, ad esempio:

Configurazione manuale

[begin] (Kali Fluxbox!)
[encoding] {UTF-8}
	  [exec] (Screenshot) {xfce4-screenshooter -r}
[separator]
#Favorites
	  [exec] (Terminator) {terminator}
	  [exec] (Files) {nautilus --no-desktop}
	  [exec] (Firefox) {firefox} <>
	  [exec] (Chrome) {google-chrome} <>
	  [exec] (Burp Suite) {burpsuite} <>
	  [exec] (Metasploit) {gnome-terminal -e msfconsole} <>
	  [exec] (Run...) {fbrun}
[separator]
#...

Nota che il file ha uno stile formattato con tag, per menzionare l'estrazione del file precedente:

  • [inizio]:avvia il menu e specifica il titolo del menu
  • [separatore]:una barra organizzativa per separare i menu in base alle tue preferenze
  • [exec]:precede ogni voce di menu da eseguire nella forma [exec] (nome visualizzato) {comando}

Altre possibilità sono:

  • [sottomenu]:una voce di menu comprimibile
  • [include]:include un file separato

Mi piace anche avere uno spegnimento, un riavvio, una sospensione e un blocco, quindi aggiungerò un sottomenu alla fine:

#...
[separator]
      [submenu] (Exit...)
          [exec] (Power Off) {poweroff}
          [exec] (Reboot) {reboot}
          [exec] (Suspend) {systemctl suspend}
          [exec] (Lock) {dm-tool lock}
      [end]
#...

Anche se non è l'impostazione predefinita per Kali Linux, se usi un utente non root, potresti dover impostare il file sudoers in modo che sudo non richieda una password sull'utilizzo di questi programmi specifici, quindi chiama sudo nel menu comando.

Menu Kali con script

Kali Linux viene fornito con un menu molto ben organizzato e classificato, questo non sarà disponibile per impostazione predefinita in Fluxbox. Quindi ho scritto uno script bash per raccogliere il software e imitare il menu di Kali per Gnome Shell nel menu fluxbox:

#!/bin/bash
# Script to generate Fluxbox Menu for Kali based on XDG menu settings from the distribution

#    This program is free software: you can redistribute it and/or modify it under the terms
# of the GNU General Public License as published by the Free Software Foundation, either
# version 3 of the License, or (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
# without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU General Public License for more details.
#
#    Please, see http://www.gnu.org/licenses/.

kaliXDG="/usr/share/applications/kali-*.desktop"
tmpMenu=$(mktemp /tmp/fbm.XXXXX) || { echo "Error creating temp"; exit 1; }
fbMenu="$HOME/.fluxbox/kalimenu"

for category in $(grep "^Categories" $kaliXDG | cut -d"=" -f2 | cut -d";" -f1 | sort | uniq | grep -vE "^[0-9][0-9]-[0-9][0-9]"); do
	echo "[submenu] ($(echo $category | sed 's/-/ /g;s/\b\(.\)/\u\1/g'))" >> $tmpMenu
	for app in $(grep "^Categories=${category:0:2}" $kaliXDG | cut -d":" -f1); do
		appTerm=`grep "^Terminal" $app | cut -d"=" -f 2`
		appCat=`grep "^Categories" $app | cut -d"=" -f 2 | cut -d";" -f 1`
		appExec=`grep "^Exec" $app | cut -d"=" -f 2`
		appName=`grep "^Name" $app | cut -d"=" -f 2`
		if [ "$appTerm" == "false" ]; then
			echo "   [exec] ($appName) {$appExec}" >> $tmpMenu
		else
			appExec=$(echo $appExec | cut -d'"' -f2 | cut -d";" -f1)
			echo "   [exec] ($appName) {xterm -bg black -fa 'Monospace' -fs 11 -e '$appExec ; bash'}" >> $tmpMenu
		fi
	done
	echo "[end]" >> $tmpMenu
done

cp $tmpMenu $fbMenu
exit 0

Copia il testo in un file eseguibile ed eseguilo

Dopo aver eseguito lo script, otterrai un nuovo file in ~/.fluxbox/kalimenu

Ho appena incluso quel file generato nel mio file del menu personalizzato in questo modo:

[separator]
	[submenu] (Kali)
	  [include] (~/.fluxbox/kalimenu)
	[end]
[separator]

File del menu finale

Dopo le modifiche precedenti, i file di configurazione terminavano in questo modo:

~/.fluxbox/custommenu:

[begin] (Kali Fluxbox!)
[encoding] {UTF-8}
      [exec] (Screenshot) {xfce4-screenshooter -r} 
[separator]
#Favorites
      [exec] (Terminator) {terminator} 
      [exec] (Files) {nautilus --no-desktop} 
      [exec] (Firefox) {firefox} <>
      [exec] (Chrome) {google-chrome} <>
      [exec] (Burp Suite) {burpsuite} <>
      [exec] (Metasploit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'msfconsole ; bash'} <>
      [exec] (Run...) {fbrun} 

[separator]
    [submenu] (Kali)
	[include] (~/.fluxbox/kalimenu)
    [end]
[separator]
    [submenu] (fluxbox menu)
        [config] (Configure)
            [submenu] (System Styles) {Choose a style...}
                [stylesdir] (/usr/share/fluxbox/styles)
            [end]
            [submenu] (User Styles) {Choose a style...}
                [stylesdir] (~/.fluxbox/styles)
            [end]
            [workspaces] (Workspace List)
            [submenu] (Tools)
                [exec] (Window name) {xprop WM_CLASS|cut -d \" -f 2|xmessage -file - -center}
            [end]
            [commanddialog] (Fluxbox Command)
            [reconfig] (Reload config)
            [restart] (Restart)
            [exec] (About) {(fluxbox -v; fluxbox -info | sed 1d) \
            2> /dev/null | xmessage -file - -center}
            [separator]
            [exit] (Exit)
    [end]

[separator]
      [submenu] (Exit...)
          [exec] (Power Off) {poweroff}
          [exec] (Reboot) {reboot}
          [exec] (Suspend) {systemctl suspend}
          [exec] (Lock) {dm-tool lock}
      [end]

[end]

~/.fluxbox/kalimenu:

[submenu] (01 Info Gathering)
   [exec] (0trace) {xterm -bg black -fa 'Monospace' -fs 11 -e '0trace.sh ; bash'}
   [exec] (acccheck) {xterm -bg black -fa 'Monospace' -fs 11 -e 'acccheck ; bash'}
   [exec] (automater) {xterm -bg black -fa 'Monospace' -fs 11 -e 'automater -h ; bash'}
   [exec] (braa) {xterm -bg black -fa 'Monospace' -fs 11 -e 'braa -h ; bash'}
   [exec] (casefile) {sh -c "casefile"}
   [exec] (cdpsnarf) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cdpsnarf -h ; bash'}
   [exec] (dmitry) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dmitry ; bash'}
   [exec] (dnmap-client) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnmap_client ; bash'}
   [exec] (dnmap-server) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnmap_server ; bash'}
   [exec] (dnsenum) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnsenum -h ; bash'}
   [exec] (dnsmap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnsmap ; bash'}
   [exec] (dnsrecon) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnsrecon -h ; bash'}
   [exec] (dnstracer) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnstracer ; bash'}
   [exec] (dnswalk) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnswalk --help ; bash'}
   [exec] (enum4linux) {xterm -bg black -fa 'Monospace' -fs 11 -e 'enum4linux ; bash'}
   [exec] (fierce) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fierce -h ; bash'}
   [exec] (fping) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fping -h ; bash'}
   [exec] (fragroute) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fragroute -h ; bash'}
   [exec] (fragrouter) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fragrouter -h ; bash'}
   [exec] (ftest) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ftest ; bash'}
   [exec] (hping3) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hping3 -h ; bash'}
   [exec] (ike-scan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ike-scan -h ; bash'}
   [exec] (intrace) {xterm -bg black -fa 'Monospace' -fs 11 -e 'intrace ; bash'}
   [exec] (iputils-arping) {xterm -bg black -fa 'Monospace' -fs 11 -e 'arping ; bash'}
   [exec] (irpas-ass) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ass -h ; bash'}
   [exec] (irpass-cdp) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cdp ; bash'}
   [exec] (lbd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'lbd ; bash'}
   [exec] (maltegoce) {sh -c "maltegoce"}
   [exec] (masscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'masscan --help ; bash'}
   [exec] (miranda) {xterm -bg black -fa 'Monospace' -fs 11 -e 'miranda -h ; bash'}
   [exec] (nbtscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'nbtscan -h ; bash'}
   [exec] (ncat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ncat -h ; bash'}
   [exec] (netdiscover) {xterm -bg black -fa 'Monospace' -fs 11 -e 'netdiscover -h ; bash'}
   [exec] (netmask) {xterm -bg black -fa 'Monospace' -fs 11 -e 'netmask -h ; bash'}
   [exec] (nmap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'nmap ; bash'}
   [exec] (onesixtyone) {xterm -bg black -fa 'Monospace' -fs 11 -e 'onesixtyone ; bash'}
   [exec] (p0f) {xterm -bg black -fa 'Monospace' -fs 11 -e 'p0f -h ; bash'}
   [exec] (recon-ng) {xterm -bg black -fa 'Monospace' -fs 11 -e 'recon-ng ; bash'}
   [exec] (smbmap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'smbmap -h ; bash'}
   [exec] (smtp-user-enum) {xterm -bg black -fa 'Monospace' -fs 11 -e 'smtp-user-enum -h ; bash'}
   [exec] (snmp-check) {xterm -bg black -fa 'Monospace' -fs 11 -e 'snmp-check -h ; bash'}
   [exec] (sparta) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sparta ; bash'}
   [exec] (sslcaudit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslcaudit -h ; bash'}
   [exec] (ssldump) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ssldump -h ; bash'}
   [exec] (sslh) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslh -h ; bash'}
   [exec] (sslscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslscan ; bash'}
   [exec] (sslyze) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslyze -h ; bash'}
   [exec] (swaks) {xterm -bg black -fa 'Monospace' -fs 11 -e 'swaks --help ; bash'}
   [exec] (thcping6) {xterm -bg black -fa 'Monospace' -fs 11 -e 'thcping6 ; bash'}
   [exec] (theharvester) {xterm -bg black -fa 'Monospace' -fs 11 -e 'theharvester ; bash'}
   [exec] (tlssled) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tlssled ; bash'}
   [exec] (twofi) {xterm -bg black -fa 'Monospace' -fs 11 -e 'twofi -h ; bash'}
   [exec] (unicornscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'us -h ; bash'}
   [exec] (urlcrazy) {xterm -bg black -fa 'Monospace' -fs 11 -e 'urlcrazy -h ; bash'}
   [exec] (wafw00f) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wafw00f -h ; bash'}
   [exec] (wol-e) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wol-e -h ; bash'}
   [exec] (xprobe2) {xterm -bg black -fa 'Monospace' -fs 11 -e 'xprobe2 -h ; bash'}
   [exec] (zenmap) {sh -c "zenmap;${SHELL:-bash}"}
[end]
[submenu] (02 Vulnerability Analysis)
   [exec] (bed) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bed ; bash'}
   [exec] (cisco-global-exploiter) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cge.pl ; bash'}
   [exec] (cisco-ocs) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cisco-ocs ; bash'}
   [exec] (copy-router-config) {xterm -bg black -fa 'Monospace' -fs 11 -e 'copy-router-config.pl ; bash'}
   [exec] (dhcpig) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pig.py -h ; bash'}
   [exec] (enumiax) {xterm -bg black -fa 'Monospace' -fs 11 -e 'enumiax -h ; bash'}
   [exec] (golismero) {xterm -bg black -fa 'Monospace' -fs 11 -e 'golismero -h ; bash'}
   [exec] (iaxflood) {xterm -bg black -fa 'Monospace' -fs 11 -e 'iaxflood ; bash'}
   [exec] (inviteflood) {xterm -bg black -fa 'Monospace' -fs 11 -e 'inviteflood -h ; bash'}
   [exec] (lynis) {xterm -bg black -fa 'Monospace' -fs 11 -e 'lynis -h ; bash'}
   [exec] (merge-router-config) {xterm -bg black -fa 'Monospace' -fs 11 -e 'merge-router-config.pl ; bash'}
   [exec] (nikto) {xterm -bg black -fa 'Monospace' -fs 11 -e 'nikto -h ; bash'}
   [exec] (ohrwurm) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ohrwurm ; bash'}
   [exec] (openvas initial setup) {xterm -bg black -fa 'Monospace' -fs 11 -e 'openvas-setup ; bash'}
   [exec] (openvas start) {xterm -bg black -fa 'Monospace' -fs 11 -e 'openvas-start ; bash'}
   [exec] (openvas stop) {xterm -bg black -fa 'Monospace' -fs 11 -e 'openvas-stop ; bash'}
   [exec] (powerfuzzer) {sh -c "powerfuzzer;${SHELL:-bash}"}
   [exec] (protos-sip) {xterm -bg black -fa 'Monospace' -fs 11 -e 'protos-sip -help ; bash'}
   [exec] (rtpbreak) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rtpbreak -h ; bash'}
   [exec] (rtpflood) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rtpflood ; bash'}
   [exec] (rtpinsertsound) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rtpinsertsound -h ; bash'}
   [exec] (rtpmixsound) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rtpmixsound -h ; bash'}
   [exec] (sctpscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sctpscan ; bash'}
   [exec] (sfuzz) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sfuzz -h ; bash'}
   [exec] (siege) {xterm -bg black -fa 'Monospace' -fs 11 -e 'siege -h ; bash'}
   [exec] (siparmyknife) {xterm -bg black -fa 'Monospace' -fs 11 -e 'siparmyknife ; bash'}
   [exec] (sipp) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sipp -h ; bash'}
   [exec] (spike-generic_chunked) {xterm -bg black -fa 'Monospace' -fs 11 -e 'generic_chunked ; bash'}
   [exec] (spike-generic_listen_tcp) {xterm -bg black -fa 'Monospace' -fs 11 -e 'generic_listen_tcp ; bash'}
   [exec] (spike-generic_send_tcp) {xterm -bg black -fa 'Monospace' -fs 11 -e 'generic_send_tcp ; bash'}
   [exec] (spike-generic_send_udp) {xterm -bg black -fa 'Monospace' -fs 11 -e 'generic_send_udp ; bash'}
   [exec] (svcrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'svcrack -h ; bash'}
   [exec] (svcrash) {xterm -bg black -fa 'Monospace' -fs 11 -e 'svcrash -h ; bash'}
   [exec] (svmap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'svmap -h ; bash'}
   [exec] (svreport) {xterm -bg black -fa 'Monospace' -fs 11 -e 'svreport -h ; bash'}
   [exec] (svwar) {xterm -bg black -fa 'Monospace' -fs 11 -e 'svwar -h ; bash'}
   [exec] (t50) {xterm -bg black -fa 'Monospace' -fs 11 -e 't50 --help ; bash'}
   [exec] (thc-ssl-dos) {xterm -bg black -fa 'Monospace' -fs 11 -e 'thc-ssl-dos -h ; bash'}
   [exec] (unix-privesc-check) {xterm -bg black -fa 'Monospace' -fs 11 -e 'unix-privesc-check ; bash'}
   [exec] (voiphopper) {xterm -bg black -fa 'Monospace' -fs 11 -e 'voiphopper ; bash'}
   [exec] (yersinia) {xterm -bg black -fa 'Monospace' -fs 11 -e 'yersinia --help ; bash'}
[end]
[submenu] (03 Webapp Analysis)
   [exec] (apache-users) {xterm -bg black -fa 'Monospace' -fs 11 -e 'apache-users ; bash'}
   [exec] (blindelephant) {xterm -bg black -fa 'Monospace' -fs 11 -e 'BlindElephant.py -h ; bash'}
   [exec] (burpsuite) {sh -c "java -jar /usr/bin/burpsuite"}
   [exec] (cadaver) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cadaver ; bash'}
   [exec] (clusterd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'clusterd -h ; bash'}
   [exec] (commix) {xterm -bg black -fa 'Monospace' -fs 11 -e 'commix ; bash'}
   [exec] (cutycapt) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cutycapt --help ; bash'}
   [exec] (davtest) {xterm -bg black -fa 'Monospace' -fs 11 -e 'davtest ; bash'}
   [exec] (deblaze) {xterm -bg black -fa 'Monospace' -fs 11 -e 'deblaze.py -h ; bash'}
   [exec] (dirb) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dirb ; bash'}
   [exec] (dirbuster) {sh -c "dirbuster;${SHELL:-bash}"}
   [exec] (fimap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fimap -h ; bash'}
   [exec] (grabber) {xterm -bg black -fa 'Monospace' -fs 11 -e 'grabber -h ; bash'}
   [exec] (httrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'httrack -h ; bash'}
   [exec] (jboss-autopwn-linux) {xterm -bg black -fa 'Monospace' -fs 11 -e 'jboss-linux ; bash'}
   [exec] (jboss-autopwn-win) {xterm -bg black -fa 'Monospace' -fs 11 -e 'jboss-win ; bash'}
   [exec] (joomscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'joomscan ; bash'}
   [exec] (padbuster) {xterm -bg black -fa 'Monospace' -fs 11 -e 'padbuster ; bash'}
   [exec] (paros) {sh -c "paros"}
   [exec] (plecost) {xterm -bg black -fa 'Monospace' -fs 11 -e 'plecost -h ; bash'}
   [exec] (proxystrike) {sh -c "proxystrike"}
   [exec] (skipfish) {xterm -bg black -fa 'Monospace' -fs 11 -e 'skipfish -h ; bash'}
   [exec] (sqlmap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sqlmap -h ; bash'}
   [exec] (ua-tester) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ua-tester ; bash'}
   [exec] (uniscan-gui) {sh -c "uniscan-gui"}
   [exec] (vega) {sh -c "vega"}
   [exec] (wapiti) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wapiti -h ; bash'}
   [exec] (webscarab) {sh -c "webscarab"}
   [exec] (wfuzz) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wfuzz ; bash'}
   [exec] (whatweb) {xterm -bg black -fa 'Monospace' -fs 11 -e 'whatweb -h ; bash'}
   [exec] (wpscan) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wpscan --help ; bash'}
   [exec] (xsser) {xterm -bg black -fa 'Monospace' -fs 11 -e 'xsser -h ; bash'}
   [exec] (owasp-zap) {sh -c "zaproxy"}
[end]
[submenu] (04 Database Assessment)
   [exec] (bbqsql) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bbqsql ; bash'}
   [exec] (hexorbase) {sh -c "hexorbase"}
   [exec] (mdb-sql) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mdb-sql -h ; bash'}
   [exec] (oscanner) {xterm -bg black -fa 'Monospace' -fs 11 -e 'oscanner ; bash'}
   [exec] (sidguesser) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sidguess ; bash'}
   [exec] (sqldict) {sh -c "sqldict"}
   [exec] (sqlninja) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sqlninja ; bash'}
   [exec] (sqlsus) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sqlsus -h ; bash'}
   [exec] (tnscmd10g) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tnscmd10g ; bash'}
[end]
[submenu] (05 Password Attacks)
   [exec] (cachedump) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cachedump -h ; bash'}
   [exec] (cewl) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cewl --help ; bash'}
   [exec] (chntpw) {xterm -bg black -fa 'Monospace' -fs 11 -e 'chntpw -h ; bash'}
   [exec] (cmospwd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cmospwd ; bash'}
   [exec] (crunch) {xterm -bg black -fa 'Monospace' -fs 11 -e 'crunch ; bash'}
   [exec] (fcrackzip) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fcrackzip --help ; bash'}
   [exec] (findmyhash) {xterm -bg black -fa 'Monospace' -fs 11 -e 'findmyhash ; bash'}
   [exec] (hashcat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hashcat --help ; bash'}
   [exec] (hashid) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hashid -h ; bash'}
   [exec] (hash-identifier) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hash-identifier ; bash'}
   [exec] (hydra) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hydra -h ; bash'}
   [exec] (john) {xterm -bg black -fa 'Monospace' -fs 11 -e 'john ; bash'}
   [exec] (johnny) {sh -c "johnny;${SHELL:-bash}"}
   [exec] (keimpx) {xterm -bg black -fa 'Monospace' -fs 11 -e 'keimpx -h ; bash'}
   [exec] (lsadump) {xterm -bg black -fa 'Monospace' -fs 11 -e 'lsadump -h ; bash'}
   [exec] (maskgen) {xterm -bg black -fa 'Monospace' -fs 11 -e 'maskgen -h ; bash'}
   [exec] (medusa) {xterm -bg black -fa 'Monospace' -fs 11 -e 'medusa -h ; bash'}
   [exec] (ncrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ncrack -h ; bash'}
   [exec] (ophcrack-cli) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ophcrack-cli ; bash'}
   [exec] (ophcrack) {sh -c "ophcrack"}
   [exec] (patator) {xterm -bg black -fa 'Monospace' -fs 11 -e 'patator -h ; bash'}
   [exec] (policygen) {xterm -bg black -fa 'Monospace' -fs 11 -e 'policygen -h ; bash'}
   [exec] (pth-curl) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-curl -h ; bash'}
   [exec] (pth-net) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-net help ; bash'}
   [exec] (pth-openchangeclient) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-openchangeclient --help ; bash'}
   [exec] (pth-rpcclient) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-rpcclient -h ; bash'}
   [exec] (pth-smbclient) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-smbclient -h ; bash'}
   [exec] (pth-smbget) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-smbget --help ; bash'}
   [exec] (pth-sqsh) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-sqsh --help ; bash'}
   [exec] (pth-winexe) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-winexe -h ; bash'}
   [exec] (pth-wmic) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-wmic -h ; bash'}
   [exec] (pth-wmis) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pth-wmis -h ; bash'}
   [exec] (pwdump) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pwdump -h ; bash'}
   [exec] (pyrit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pyrit -h ; bash'}
   [exec] (rainbowcrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rcrack ; bash'}
   [exec] (rcracki_mt) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rcracki_mt ; bash'}
   [exec] (rsmangler) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rsmangler -h ; bash'}
   [exec] (samdump2) {xterm -bg black -fa 'Monospace' -fs 11 -e 'samdump2 -h ; bash'}
   [exec] (sipcrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sipcrack -h ; bash'}
   [exec] (statsgen) {xterm -bg black -fa 'Monospace' -fs 11 -e 'statsgen -h ; bash'}
   [exec] (sucrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'man sucrack ; bash'}
   [exec] (thc-pptp-bruter) {xterm -bg black -fa 'Monospace' -fs 11 -e 'thc-pptp-bruter ; bash'}
   [exec] (truecrack) {xterm -bg black -fa 'Monospace' -fs 11 -e 'truecrack -h ; bash'}
   [exec] (wordlists) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cd /usr/share/wordlists && ls -l ; bash'}
[end]
[submenu] (06 Wireless Attacks)
   [exec] (aircrack-ng) {xterm -bg black -fa 'Monospace' -fs 11 -e 'aircrack-ng --help ; bash'}
   [exec] (asleap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'asleap -h ; bash'}
   [exec] (bluelog) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bluelog -h ; bash'}
   [exec] (blueranger) {xterm -bg black -fa 'Monospace' -fs 11 -e 'blueranger.sh ; bash'}
   [exec] (bluesnarfer) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bluesnarfer ; bash'}
   [exec] (btscanner) {xterm -bg black -fa 'Monospace' -fs 11 -e 'btscanner -h ; bash'}
   [exec] (bully) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bully ; bash'}
   [exec] (cisco-auditing-tool) {xterm -bg black -fa 'Monospace' -fs 11 -e 'CAT ; bash'}
   [exec] (cisco-torch) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cisco-torch ; bash'}
   [exec] (cowpatty) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cowpatty ; bash'}
   [exec] (eapmd5pass) {xterm -bg black -fa 'Monospace' -fs 11 -e 'eapmd5pass -h ; bash'}
   [exec] (fern wifi cracker) {sh -c "fern-wifi-cracker"}
   [exec] (ghost phisher) {sh -c "ghost-phisher"}
   [exec] (giskismet) {xterm -bg black -fa 'Monospace' -fs 11 -e 'giskismet -h ; bash'}
   [exec] (hackrf_info) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hackrf_info -h ; bash'}
   [exec] (mdk3) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mdk3 --help ; bash'}
   [exec] (mfcuk) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mfcuk -h ; bash'}
   [exec] (mfoc) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mfoc -h ; bash'}
   [exec] (mfterm) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mfterm -h ; bash'}
   [exec] (mifare-classic-format) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mifare-classic-format -h ; bash'}
   [exec] (nfc-list) {xterm -bg black -fa 'Monospace' -fs 11 -e 'nfc-list -h ; bash'}
   [exec] (nfc-mfclassic) {xterm -bg black -fa 'Monospace' -fs 11 -e 'nfc-mfclassic -h ; bash'}
   [exec] (pixiewps) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pixiewps -h ; bash'}
   [exec] (reaver) {xterm -bg black -fa 'Monospace' -fs 11 -e 'reaver -h ; bash'}
   [exec] (redfang) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fang -h ; bash'}
   [exec] (spooftooph) {xterm -bg black -fa 'Monospace' -fs 11 -e 'spooftooph -h ; bash'}
   [exec] (wifiarp) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wifiarp -h ; bash'}
   [exec] (wifidns) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wifidns -h ; bash'}
   [exec] (wifi-honey) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wifi-honey -h ; bash'}
   [exec] (wifiping) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wifiping -h ; bash'}
   [exec] (wifitap) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wifitap -h ; bash'}
   [exec] (wifite) {xterm -bg black -fa 'Monospace' -fs 11 -e 'wifite --help ; bash'}
   [exec] (zbassocflood) {xterm -bg black -fa 'Monospace' -fs 11 -e 'zbassocflood -h ; bash'}
   [exec] (zbdsniff) {xterm -bg black -fa 'Monospace' -fs 11 -e 'zbdsniff ; bash'}
   [exec] (zbdump) {xterm -bg black -fa 'Monospace' -fs 11 -e 'zbdump -h ; bash'}
   [exec] (zbfind) {sh -c "zbfind"}
   [exec] (zbgoodfind) {xterm -bg black -fa 'Monospace' -fs 11 -e 'zbgoodfind -h ; bash'}
   [exec] (zbreplay) {xterm -bg black -fa 'Monospace' -fs 11 -e 'zbreplay -h ; bash'}
   [exec] (zbstumbler) {xterm -bg black -fa 'Monospace' -fs 11 -e 'zbstumbler -h ; bash'}
[end]
[submenu] (07 Reverseengineer)
   [exec] (apktool) {xterm -bg black -fa 'Monospace' -fs 11 -e 'apktool ; bash'}
   [exec] (clang) {xterm -bg black -fa 'Monospace' -fs 11 -e 'clang --help ; bash'}
   [exec] (clang++) {xterm -bg black -fa 'Monospace' -fs 11 -e 'clang++ --help ; bash'}
   [exec] (edb-debugger) {sh -c "edb;${SHELL:-bash}"}
   [exec] (flasm) {xterm -bg black -fa 'Monospace' -fs 11 -e 'flasm ; bash'}
   [exec] (jad) {xterm -bg black -fa 'Monospace' -fs 11 -e 'jad ; bash'}
   [exec] (javasnoop) {sh -c "javasnoop"}
   [exec] (NASM shell) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cd /usr/share/metasploit-framework/tools/exploit && ./nasm_shell.rb ; bash'}
   [exec] (ollydbg) {sh -c "ollydbg"}
   [exec] (radare2) {xterm -bg black -fa 'Monospace' -fs 11 -e 'radare2 -h ; bash'}
[end]
[submenu] (08 Exploitation Tools)
   [exec] (armitage) {sh -c "armitage;${SHELL:-bash}"}
   [exec] (beef xss framework) {xterm -bg black -fa 'Monospace' -fs 11 -e 'beef-xss ; bash'}
   [exec] (metasploit framework) {xterm -bg black -fa 'Monospace' -fs 11 -e 'service postgresql start && msfdb init && msfconsole ; bash'}
   [exec] (msf payload creator) {xterm -bg black -fa 'Monospace' -fs 11 -e 'msfpc ; bash'}
   [exec] (searchsploit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'searchsploit ; bash'}
   [exec] (social engineering toolkit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'setoolkit ; bash'}
   [exec] (termineter) {xterm -bg black -fa 'Monospace' -fs 11 -e 'termineter -h ; bash'}
[end]
[submenu] (09 Sniffing Spoofing)
   [exec] (bdfproxy) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bdfproxy ; bash'}
   [exec] (darkstat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'darkstat ; bash'}
   [exec] (dnschef) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dnschef -h ; bash'}
   [exec] (dsniff) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dsniff -h ; bash'}
   [exec] (ettercap-graphical) {sh -c "ettercap -G"}
   [exec] (fiked) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fiked -h ; bash'}
   [exec] (hamster) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hamster ; bash'}
   [exec] (hexinject) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hexinject -h ; bash'}
   [exec] (macchanger) {xterm -bg black -fa 'Monospace' -fs 11 -e 'macchanger -h ; bash'}
   [exec] (mitmproxy) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mitmproxy -h ; bash'}
   [exec] (netsniff-ng) {xterm -bg black -fa 'Monospace' -fs 11 -e 'netsniff-ng -h ; bash'}
   [exec] (nfspy) {xterm -bg black -fa 'Monospace' -fs 11 -e 'nfspy -h ; bash'}
   [exec] (rebind) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dns-rebind ; bash'}
   [exec] (responder) {xterm -bg black -fa 'Monospace' -fs 11 -e 'responder -h ; bash'}
   [exec] (sniffjoke) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sniffjoke --help ; bash'}
   [exec] (sslsniff) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslsniff ; bash'}
   [exec] (sslsplit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslsplit -h ; bash'}
   [exec] (sslstrip) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sslstrip -h ; bash'}
   [exec] (tcpflow) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tcpflow -h ; bash'}
   [exec] (tcpreplay) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tcpreplay -h ; bash'}
   [exec] (wireshark) {sh -c "wireshark"}
[end]
[submenu] (10 Maintaining Access)
   [exec] (backdoor-factory) {xterm -bg black -fa 'Monospace' -fs 11 -e 'backdoor-factory -h ; bash'}
   [exec] (cymothoa) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cymothoa -h ; bash'}
   [exec] (dbd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dbd -h ; bash'}
   [exec] (dns2tcpc) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dns2tcpc ; bash'}
   [exec] (dns2tcpd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dns2tcpd ; bash'}
   [exec] (exe2hex) {xterm -bg black -fa 'Monospace' -fs 11 -e 'exe2hex ; bash'}
   [exec] (intersect) {xterm -bg black -fa 'Monospace' -fs 11 -e 'intersect ; bash'}
   [exec] (iodine) {xterm -bg black -fa 'Monospace' -fs 11 -e 'iodine-client-start -h ; bash'}
   [exec] (laudanum) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ls -l /usr/share/laudanum ; bash'}
   [exec] (mimikatz) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cd /usr/share/mimikatz/ && ls -l ; bash'}
   [exec] (miredo) {xterm -bg black -fa 'Monospace' -fs 11 -e 'miredo -h ; bash'}
   [exec] (nishang) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cd /usr/share/nishang && ls -l ; bash'}
   [exec] (powersploit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'cd /usr/share/powersploit/ && ls -l ; bash'}
   [exec] (proxychains) {xterm -bg black -fa 'Monospace' -fs 11 -e 'proxychains ; bash'}
   [exec] (proxytunnel) {xterm -bg black -fa 'Monospace' -fs 11 -e 'proxytunnel -h ; bash'}
   [exec] (ptunnel) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ptunnel -h ; bash'}
   [exec] (pwnat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pwnat -h ; bash'}
   [exec] (sbd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sbd -h ; bash'}
   [exec] (stunnel4) {xterm -bg black -fa 'Monospace' -fs 11 -e 'stunnel4 -help ; bash'}
   [exec] (u3-pwn) {xterm -bg black -fa 'Monospace' -fs 11 -e 'u3-pwn ; bash'}
   [exec] (udptunnel) {xterm -bg black -fa 'Monospace' -fs 11 -e 'udptunnel -h ; bash'}
   [exec] (webacoo) {xterm -bg black -fa 'Monospace' -fs 11 -e 'webacoo -h ; bash'}
   [exec] (weevely) {xterm -bg black -fa 'Monospace' -fs 11 -e 'weevely ; bash'}
[end]
[submenu] (11 Forensics)
   [exec] (affcat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'affcat -h ; bash'}
   [exec] (autopsy) {xterm -bg black -fa 'Monospace' -fs 11 -e 'autopsy ; bash'}
   [exec] (binwalk) {xterm -bg black -fa 'Monospace' -fs 11 -e 'binwalk -h ; bash'}
   [exec] (blkcalc) {xterm -bg black -fa 'Monospace' -fs 11 -e 'blkcalc ; bash'}
   [exec] (blkcat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'blkcat ; bash'}
   [exec] (blkls) {xterm -bg black -fa 'Monospace' -fs 11 -e 'blkls ; bash'}
   [exec] (blkstat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'blkstat ; bash'}
   [exec] (bulk_extractor) {xterm -bg black -fa 'Monospace' -fs 11 -e 'bulk_extractor -h ; bash'}
   [exec] (chkrootkit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'chkrootkit -h ; bash'}
   [exec] (dc3dd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dc3dd --help ; bash'}
   [exec] (dcfldd) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dcfldd --help ; bash'}
   [exec] (ddrescue) {xterm -bg black -fa 'Monospace' -fs 11 -e 'dd_rescue -h ; bash'}
   [exec] (dex2jar) {xterm -bg black -fa 'Monospace' -fs 11 -e 'd2j-dex2jar -h ; bash'}
   [exec] (ewfacquire) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ewfacquire -h ; bash'}
   [exec] (extundelete) {xterm -bg black -fa 'Monospace' -fs 11 -e 'extundelete --help ; bash'}
   [exec] (ffind) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ffind ; bash'}
   [exec] (fls) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fls ; bash'}
   [exec] (foremost) {xterm -bg black -fa 'Monospace' -fs 11 -e 'foremost -h ; bash'}
   [exec] (fsstat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'fsstat ; bash'}
   [exec] (galleta) {xterm -bg black -fa 'Monospace' -fs 11 -e 'galleta ; bash'}
   [exec] (guymager) {sh -c "guymager"}
   [exec] (hashdeep) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hashdeep -h ; bash'}
   [exec] (hfind) {xterm -bg black -fa 'Monospace' -fs 11 -e 'hfind ; bash'}
   [exec] (icat-sleuthkit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'icat ; bash'}
   [exec] (ifind) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ifind ; bash'}
   [exec] (ils-sleuthkit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'ils ; bash'}
   [exec] (img_cat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'img_cat ; bash'}
   [exec] (img_stat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'img_stat ; bash'}
   [exec] (istat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'istat ; bash'}
   [exec] (jcat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'jcat ; bash'}
   [exec] (jls) {xterm -bg black -fa 'Monospace' -fs 11 -e 'jls ; bash'}
   [exec] (mactime-sleuthkit) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mactime ; bash'}
   [exec] (magicrescue) {xterm -bg black -fa 'Monospace' -fs 11 -e 'magicrescue ; bash'}
   [exec] (missidentify) {xterm -bg black -fa 'Monospace' -fs 11 -e 'missidentify -h ; bash'}
   [exec] (mmcat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mmcat ; bash'}
   [exec] (mmls) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mmls ; bash'}
   [exec] (mmstat) {xterm -bg black -fa 'Monospace' -fs 11 -e 'mmstat ; bash'}
   [exec] (pasco) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pasco ; bash'}
   [exec] (pdfid) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pdfid -h ; bash'}
   [exec] (pdf-parser) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pdf-parser -h ; bash'}
   [exec] (pdgmail) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pdgmail -h ; bash'}
   [exec] (peepdf) {xterm -bg black -fa 'Monospace' -fs 11 -e 'peepdf -h ; bash'}
   [exec] (pev) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pev -h ; bash'}
   [exec] (readpst) {xterm -bg black -fa 'Monospace' -fs 11 -e 'readpst -h ; bash'}
   [exec] (recoverjpeg) {xterm -bg black -fa 'Monospace' -fs 11 -e 'recoverjpeg -h ; bash'}
   [exec] (reglookup) {xterm -bg black -fa 'Monospace' -fs 11 -e 'reglookup ; bash'}
   [exec] (regripper) {sh -c "regripper"}
   [exec] (rifiuti2) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rifiuti2 -h ; bash'}
   [exec] (rifiuti) {xterm -bg black -fa 'Monospace' -fs 11 -e 'rifiuti ; bash'}
   [exec] (safecopy) {xterm -bg black -fa 'Monospace' -fs 11 -e 'safecopy -h ; bash'}
   [exec] (scalpel) {xterm -bg black -fa 'Monospace' -fs 11 -e 'scalpel -h ; bash'}
   [exec] (scrounge-ntfs) {xterm -bg black -fa 'Monospace' -fs 11 -e 'scrounge-ntfs -h ; bash'}
   [exec] (sigfind) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sigfind ; bash'}
   [exec] (sorter) {xterm -bg black -fa 'Monospace' -fs 11 -e 'sorter ; bash'}
   [exec] (srch_strings) {xterm -bg black -fa 'Monospace' -fs 11 -e 'srch_strings -h ; bash'}
   [exec] (tsk_comparedir) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tsk_comparedir ; bash'}
   [exec] (tsk_gettimes) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tsk_gettimes -h ; bash'}
   [exec] (tsk_loaddb) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tsk_loaddb ; bash'}
   [exec] (tsk_recover) {xterm -bg black -fa 'Monospace' -fs 11 -e 'tsk_recover ; bash'}
   [exec] (vinetto) {xterm -bg black -fa 'Monospace' -fs 11 -e 'vinetto -h ; bash'}
   [exec] (volafox) {xterm -bg black -fa 'Monospace' -fs 11 -e 'volafox ; bash'}
   [exec] (volatility) {xterm -bg black -fa 'Monospace' -fs 11 -e 'volatility -h ; bash'}
[end]
[submenu] (12 Reporting)
   [exec] (dradis) {sh -c "service dradis start; xdg-open http://127.0.0.1:3000"}
   [exec] (faraday IDE) {xterm -bg black -fa 'Monospace' -fs 11 -e 'python-faraday ; bash'}
   [exec] (keepnote) {sh -c "keepnote"}
   [exec] (magictree) {sh -c "magictree"}
   [exec] (pipal) {xterm -bg black -fa 'Monospace' -fs 11 -e 'pipal -h ; bash'}
   [exec] (recordmydesktop) {xterm -bg black -fa 'Monospace' -fs 11 -e 'recordmydesktop -h ; bash'}
[end]

Right-click the desktop to run the menu and hit restart to apply all the changes.

Fluxbox Key Bindings

Edit ~/.fluxbox/keys to configure keyboard shortcuts, I tried to set a typical Desktop for myself, you can configure it to your preference, here is an example of what I've added to the ending of the file:

################### Customized #######################
# Notes:
# Mod1 is Alt, Mod4 is Windows key, Mouse1 is left click and Mouse3 is right click
# Arrows are 113 114 111 116 (left, right, up, down)

# Screenshots (Skip these if using shutter instead)
None Print	:ExecCommand xfce4-screenshooter -f
Mod1 Print	:ExecCommand xfce4-screenshooter -w
Mod4 Print	:ExecCommand xfce4-screenshooter -r

# Windows-Like
Mod4 r		:Exec fbrun
Mod4 e		:Exec nautilus --no-desktop
Mod4 d		:ToggleCmd {ShowDesktop} {DeIconify all originquiet}
Mod4 m		:ToggleCmd {ShowDesktop} {DeIconify all originquiet}
Mod4 l		:Exec dm-tool lock
Mod4 Shift d	:DeIconify all

# Gnome-Like
Control Mod1 113		:PrevWorkspace
Control Mod1 114		:NextWorkspace
OnTitlebar Double Mouse1	:Maximize
# Note: To use this last one you should comment the previously existing "OnTitlebar Double Mouse1" line

# Launchers
Control Mod1 c	:ExecCommand wmctrl -a chromium-browser || chromium-browser
Control Mod1 t	:ExecCommand wmctrl -a gnome-terminal || gnome-terminal
Control Mod1 p	:ExecCommand wmctrl -a pidgin || pidgin
Control Mod1 m	:ExecCommand wmctrl -a thunderbird || thunderbird

# Comparing panels (Set considering resolution on ResizeTo clause)
OnTitlebar Mod4 Mouse3	:MacroCmd {ResizeTo 720 850} {MoveTo 0 0 Right}
OnTitlebar Mod4 Mouse1	:MacroCmd {ResizeTo 720 850} {MoveTo 0 0 Left}

Navigate the file and get familiar with it because having this ability to set shortcuts is very important, and the actions that can be taken on a shortcut are almost unlimited

Startup

On every start, Fluxbox will run a shell script located in ~/.fluxbox/startup, it's a good place to run applications that we may like to run automatically. To my preference, I use the Gnome network manager to easily connect Wi-Fi networks, and also use a lot Gnome-Do. So I will add them after the section "Applications you want to run with fluxbox:"

# Applications you want to run with fluxbox.
# MAKE SURE THAT APPS THAT KEEP RUNNING HAVE AN ''&'' AT THE END.
#
# unclutter -idle 2 &
# wmnd &
# wmsmixer -w &
# idesk &
gnome-do &
nm-applet & 

Note that the commented lines are there in the default startup file.

Style

Open fluxbox and from the Fluxbox menu, select styles and choose your preference, I like "Debian Dark" but that's a very personal preference.

Right click the toolbar in the bottom to set the toolbar preferences.

This is also a personal preference, but I would strongly recommend setting "Toolbar Placement" to "Bottom Right" and "Toolbar width percentage" to 95 so that you have a little space remaining to deploy the menu with the right click when you have maximized windows.

In the init file (~/.fluxbox/init) look for the line starting with "session.screen0.toolbar.tools", in that setting you will find the order of the tools in the toolbar, I like to set it with the clock to the right like this:

session.screen0.toolbar.tools:	workspacename, prevworkspace, nextworkspace, iconbar, systemtray, prevwindow, nextwindow, clock

And I also like to shorten the clock format like this:

session.screen0.strftimeFormat:	%d %b, %k:%M

At this point you should be restarting fluxbox (not rebooting the system) to apply changes, go to Fluxbox menu / Restart

Wallpaper

This is only a look and feel setting, but may help to have a comfortable desktop

Edit the ~/.fluxbox/overlay file to override the style settings, I copied my wallpaper to ~/.fluxbox/pixmax/kali.png and then set the overlay file like this:

! The following line will prevent styles from setting the background.
! background: none
background: 		aspect
background.pixmap:	~/.fluxbox/pixmaps/kali.png

Workspaces

Fluxbox also supports multi-workspace, by default you get four workspaces to work, you can check on the keys file for further information on how to use them. Nonetheless, I've set the Gnome-like setting to use Ctrl+Alt+Arrow to move in between them.

If you are a very tidy and procedural person, you may want to rename your workspaces in the init file setting the session.screen0.workspaceNames value, for instance:

session.screen0.workspaceNames:	Terminals, Web, Wifi, Scanning,

Conclusione

After following these steps you will get a lightweight desktop for Kali. By default, Kali comes with Gnome Shell as a desktop environment and GDM3 for the login screen, which are unsuitable for computers with limited resources, virtual machines that have no good graphical acceleration, or for running Kali as a live persistent USB.

The configuration files that were covered in this howto are very self-explanatory, and many of the configurations done are based entirely on my personal preference or experience, so feel free to use the information presented here as a leverage to set your Fluxbox desktop to better suit your needs.


Linux
  1. Korembi 2 – Un perfetto gestore di desktop e sfondi per Linux

  2. Miglioramenti all'accessibilità di Kali Linux

  3. Conseguenze del rilascio di Kali Linux

  4. Versione Kali Linux 1.0.7

  5. Versione Kali Linux 1.0.6

Kali Linux vs Parrot

Come installare il desktop GNOME su Kali Linux

Il desktop perfetto - Linux Mint 17.1 (Rebecca)

Il desktop perfetto - Linux Mint 16 (Petra)

Spazi di lavoro desktop in Linux

5 Ambienti desktop Linux leggeri