GNU/Linux >> Tutoriels Linux >  >> Linux

Bureau Fluxbox parfait sur Kali Linux

Ce tutoriel a été testé sur Kali Linux 2017.1

Pour mon travail, j'ai besoin d'un environnement Linux portable pour exécuter des tests. Je me retrouve donc souvent à utiliser Kali Linux à partir d'une machine virtuelle à faibles ressources ou à démarrer à partir d'un lecteur flash. Dans ce cas de figure, disposer d'un ordinateur de bureau léger est aussi important que les outils eux-mêmes.

Considérations

On suppose que :

  • Vous avez installé un environnement Kali Linux (la version 2017.1 est la version testée)
  • Vous disposez d'une connexion Internet fonctionnelle
  • Vous êtes connecté en tant que root (car il s'agit du paramètre par défaut pour Kali)

Installer Fluxbox

apt-get update 
apt-get install fluxbox

Installer LightDM

L'installation de lightDM définit non seulement un écran de connexion beaucoup plus léger, mais vous obtiendrez également la commande de verrouillage pour la section des clés Fluxbox.

apt-get install lightdm 
dpkg-reconfigure lightdm

Définissez LightDM comme gestionnaire de bureau par défaut :

Quelques outils supplémentaires

Fluxbox est un gestionnaire de fenêtres très léger, nous pouvons utiliser des outils supplémentaires pour créer un environnement plus convivial. Ce ne sont que quelques recommandations :

apt-get install xfce4-screenshooter shutter gnome-do terminator
  • Xfce4-screenshooter et Shutter sont des outils pour prendre des captures d'écran, j'en ai beaucoup besoin pour documenter mon travail. L'obturateur consomme plus de ressources, mais pourtant je le préfère.
  • Gnome-Do est un lanceur de programme, très pratique, spécialement sur Fluxbox, pour lancer des applications sans toucher la souris.
  • Terminator est un terminal riche en fonctionnalités, génial si vous avez besoin que des programmes de terminal fonctionnent ensemble

Notez que lors du premier lancement de gnome-do, définissez la préférence sur "Masquer la fenêtre au premier lancement" afin que vous ne la voyiez pas à chaque fois que vous vous connectez. Ensuite, vous l'exécutez avec la touche Windows + espace :

Passer à Fluxbox

À ce moment, vous devez vous déconnecter puis vous connecter à fluxbox, pour cela, vous devez sélectionner la session sur le gestionnaire de connexion, dans le cas où vous avez installé LightDM, il sera situé dans le coin supérieur droit :

Après la première connexion, les fichiers de configuration seront générés.

Ouvrez un terminal pour continuer la configuration. Pour ce faire, cliquez avec le bouton droit sur le bureau et accédez à "Applications", "Émulateurs de terminaux" et sélectionnez un terminal, ou vous pouvez appuyer sur Alt + F2 et exécuter la commande pour votre terminal préféré.

Sauvegarder les fichiers de configuration

Sauvegardez, comme vous devriez toujours le faire, les fichiers de configuration que nous sommes sur le point de modifier :

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

Configurer le menu Fluxbox

Si c'est la première fois que vous entrez dans fluxbox, vous remarquerez au premier coup d'œil que vous n'avez pas de menu à parcourir, mais il est là, vous devez faire un clic droit sur le bureau pour le déployer

A présent, vous devriez avoir le menu fluxbox par défaut, qui ne sera pas très utile, c'est pourquoi ce chapitre...

Modifions l'emplacement du fichier de menu par défaut (~/.fluxbox/menu), c'est une bonne pratique car, selon la distribution, vous pouvez parfois écraser ce fichier :

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

Vous pouvez modifier manuellement le menu à tout moment en éditant le fichier ~/.fluxbox/custommenu. Notez que custommenu est le nom que j'ai choisi pour le fichier dans la commande précédente

Le fichier de menu lui-même est très explicite, il n'est donc pas nécessaire d'être très détaillé sur le format. Par préférence personnelle, je change le titre et mets mes applications préférées en premier, par exemple :

Configuration manuelle

[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]
#...

Notez que le fichier a un style au format tag, à mentionner à propos de l'extrait de fichier précédent :

  • [begin] :démarre le menu et spécifie le titre du menu
  • [séparateur] :une barre d'organisation pour séparer les menus selon vos préférences
  • [exec] :précède chaque élément de menu à exécuter sous la forme [exec] (nom d'affichage) {command}

Les autres possibilités sont :

  • [sous-menu] :une entrée de menu réductible
  • [include] :inclut un fichier séparé

J'aime aussi avoir une mise hors tension, un redémarrage, une suspension et un verrouillage, je vais donc ajouter un sous-menu à la fin :

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

Même s'il ne s'agit pas du paramètre par défaut pour Kali Linux, si vous utilisez un utilisateur non root, vous devrez peut-être définir le fichier sudoers afin que sudo ne demande pas de mot de passe lors de l'utilisation de ces programmes spécifiques, puis appelez sudo dans le menu commande.

Menu Kali scripté

Kali Linux est livré avec un menu très bien organisé et catégorisé, celui-ci ne sera pas disponible par défaut dans Fluxbox. J'ai donc écrit un script bash pour collecter le logiciel et imiter le menu de Kali pour Gnome Shell dans le 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

Copiez le texte dans un fichier exécutable et exécutez-le

Après avoir exécuté le script, vous obtiendrez un nouveau fichier dans ~/.fluxbox/kalimenu

Je viens d'inclure ce fichier généré dans mon fichier de menu personnalisé comme ceci :

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

Fichiers du menu final

Après les modifications précédentes, les fichiers de configuration se terminaient ainsi :

~/.fluxbox/menupersonnalisé :

[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

Démarrage

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,

Conclusion

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. Comprendre le bureau Linux ?

  2. Améliorations de l'accessibilité de Kali Linux

  3. Conséquences de la sortie de Kali Linux

  4. Version Kali Linux 1.0.7

  5. Version Kali Linux 1.0.6

Kali Linux contre Parrot

Comment installer le bureau GNOME sur Kali Linux

Le bureau parfait - Linux Mint 17.1 (Rebecca)

Le bureau parfait - Linux Mint 16 (Petra)

Espaces de travail de bureau sous Linux

5 environnements de bureau Linux légers