/pimpmykali

Kali Linux Fixes for Newly Imported VM's

Primary LanguageShell

pimpmykali.sh

pmk132tkab.png

Fixes for new imported Kali Linux virtual machines

  • Author assumes zero liability for any data loss or misuse of pimpmykali
  • Can be used on a bare metal machines, but thats on you
  • Menu breakdown added below revision history

Github index updated added +x permission:

  • Script is now be executable upon clone (perms: 755 rwxr-xr-x added to github)
  • There is no need to chmod +x pimpmykali.sh upon git clone

Installation script:

Special Thanks to Pimpmykali-Mirrors Testers!!

Code Contributors

Writeups / Honorable Mentions

Revision 1.6.1 - $pyver variable

  • removed single quotes

Revision 1.6.0 - Atom removed + misc fixes/updates

  • Corrected the non-interactive shell being opened for:

    • Menu option K - Reconfigure Keyboard
    • Menu option T - Reconfigure Timezone
    • shell is now interactive and functions properly
  • Added $archtype variable for potential upcoming arm64 specific support ( Mac m1, rasberry pi, etc )

  • Added $pyver variable for detection of version of python3

    • corrects error with installing python'$pyver'-venv and other various python required installations
  • Atom

    • has been deprecated/sunset and the installation of atom has been removed
    • menu option 7 - Install atom removed
  • Seclists

    • changed seclists to be pulled from github, to be more verbose about what is taking place on screen
  • gowitness function updated to detect amd64 or arm64 installations, still installs from github

  • httprobe, assetfinder, amass are now installed from the kali repo instead of github

  • Misc Fixes

    • corrected if statement on line 1240 MPP Course Setup
    • added function for apt_fixbroken and apt_fixbroken_complete
    • removed functions: fix_bloodhound, ask_python39, fix_python39, fix_resopnder
    • addded -o Dpkg::Progress-Fancy="1" to all apt operations for fancy progress bars
    • moved virt-what to be installed much earlier in the script
    • general code cleanup
  • Menu option B restored to BlindPenTesters - TheEssentials

  • older revision history moved to changelog.txt

Menu Breakdown of Pimpmykali

  • Menu option N (New Users/New VM's Should start here!)

    • executes menu option 0 fix all ( options 1 thru 8 )
    • executes menu opiion 9 (pimpmyupgrade)
  • Menu option = Pimpmykali-Mirrors (rev 1.3.2)

    • obtain kali mirror list and process
      • round-trip-time ping test to all mirrors, select top 10 with shortest rtt
      • small download >1MB from the top 10 mirrors, select top 5 fastest transfers
      • large download 10MB test the final 5 mirrors, select fastest transfer
      • generate new /etc/apt/sources.list with the new selected mirror
      • prompt Y or N to write new changes to /etc/apt/sources.list
        • Y writes changes /etc/apt/sources.list
        • create backup of original sources.list in /etc/apt/sources.list_date_time
        • write new deb and deb-src lines with new mirror to /etc/apt/sources.list
        • N exits and makes no change to /etc/apt/sources.list
  • Menu Option ! - Nuke Impacket (yes its literally the ! character)

    • removes any prior installation of impacket (gracefully and forcefully)
    • installs impacket-0.9.19
  • Menu Option 1 - Fix missing

    • fix_sources
      • uncomment #deb-src from /etc/apt/sources.list
    • python-pip installation via curl
    • python3-pip installed
    • seclists installed
    • gedit installed (feature request)
    • flameshot installed (feature request)
    • locate installed (feature request)
    • fix_rockyou function
      • gunzip /usr/share/wordlists/rockyou.gz to /usr/share/wordlists/rockyou.txt
    • fix_golang function
      • installs golang
      • adds golang GOPATH to .bashrc and .zshrc
    • installs htop
    • installs python requests
    • installs python xlrd==1.2.0
    • disables xfce power management
    • blacklists pcspkr kernel module /etc/modprobe.d/nobeep.conf
    • intalls python pyftpdlib
  • Menu Option 2 - Fix smb.conf

    • adds below [global] in /etc/samba/smb.conf
      • client min protocol = CORE below [global]
      • client max protocol = SMB3 below [global]
  • Menu Option 3 - Fix Golang

    • Installs golang
      • checks for GOPATH in .bashrc and .zshrc
      • if GOPATH is found, adds nothing
      • if not found, adds GOPATH statements to both .zshrc and .bashrc
  • Menu Option 4 - Fix Grub

    • adds mitigations=off to GRUB_CMDLINE_LINUX_DEFAULT
  • Menu Option 5

    • installs Impacket-0.9.19
  • Menu Option 6 - Enable root login

    • installs kali-root-login
      • prompts for root password
      • copy /home/kali/* to /root prompt (1.1.2)
      • prompt are you sure? to copy /home/kali to /root prompt (1.1.3)
  • Menu Option 7

    • removed from the menu
  • Menu Option 8 - Fix Nmap

    • wget nmap script fixes
      • clamav-exec.nse
      • http-shellshock.nse (Thank you Alek!)
  • Menu Option 9 - Pimpmyupgrade

    • additional notes will be added
    • fix : Hypervisor detection (vmware, virtualbox, qemu/libvirt)
      • add additional details here
    • fix : virtualbox shared folder fix applied
  • Menu Option 0 - Fix all (1-8)

    • Executes ONLY Menu options 1 thru 8
  • Menu Option B ( Changed 01.15.2023 )
    Previous Function: (will be moved elsewhere in Pimpmykali)

    • BlindPentesters The_Essentials tools and utilities collection
    • Install all of BlindPentesters favorite tools and utilities to /opt (aprox 8GB)
    • Click the link below for a full list of the_essentials.sh script and its inner workings
    • https://github.com/blindpentester/the-essentials
  • Menu Option C

    • Install Google-Chrome
  • Menu Option F

    • Fixes XFCE Broken Icons "TerminalEmulator" Not Found
    • Fixes XFCE Open Catfish instead of Thunar when double clicking Home or FileSystem Icon
    • this fix is a temporary fix and will be removed once xfce has been corrected
  • Menu Option G

    • Apply gedit unable to open display as root fix
  • Menu Option K

    • Reconfigure Keyboard, Language and Layout + Variant
  • Menu Option M

    • Kali linux setup for Mayors Movement Pivoting and Persistance Course
      • installs covenant
  • Menu Option O

    • Fix SSH Function

      • checks for /etc/ssh/ssh_config.d/kali-wide-compat.conf
      • if file exists, no changes are made and exists
      • if file does not exist, it is created and legacy ciphers added
      • restarts ssh service
    • Disable Power Management function moved to Menu options 0, N or 1

      • Based upon detection disable power management for that environment
        • Detect desktop environment
          • XFCE
          • Gnome
  • Menu Option S - Fix Spike

    • Fixes undefined symbol error thrown when using generic_send_tcp
    • this fix is temporary and will be removed once a corrected version is available
  • Menu Option T

    • Reconfigure Timezone
  • Menu Option V

    • Install MS VSCode
  • Menu Option W

    • Install GoWitness precompiled binary

TODO

  • clean up todo list :)