Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #__________________________________________________________
- # Authors: noes!s (blaksark@gmail.com)
- # phillips321 (forum.gnacktrack.co.uk)
- # License: CC BY-SA 3.0
- # Use: Update several applications on GnackTrack
- # Released: www.gnacktrack.co.uk
- #__________________________________________________________
- version="0.5" #March/2011
- changes="Beef and Armitage has been fixed; bugged updates are on yellow."
- # Changelog:
- # v0.5 - Added Dradis svn update
- # v0.4 - Beef, Armitage fixed; bugged updates on yellow, news and tips msgs.
- # v0.3 - Formatted layout with indentation and function names
- # v0.2 - Fixed Armitage updater
- #
- # - Add new APPs to this list. DONT USE spaces for the names.
- # - You can add up to 25 APPs/Updates in this version.
- # - Update the full_updates_list (at the end of this list).
- LIST(){
- n1=Framework3 ; upd1() { svn up /pentest/exploits/framework3/ ;}
- n2=w3af ; upd2() { svn up /pentest/web/w3af/ ;}
- n3=OpenVAS ; upd3() { openvas-nvt-sync ;}
- n4=SET ; upd4() { cd /pentest/exploits/SET/ ; ./set-update ;}
- n5=FastTrack ; upd5() { cd /pentest/exploits/fasttrack/ ; ./fast-track.py -c 1 1 ;}
- n6=BlindElephant ; upd6() { cd /pentest/web/blindelephant/ ; svn up; cd src; python setup.py install ;}
- n7=SQLMap ; upd7() { svn up /pentest/database/sqlmap/ ;}
- n8=Beef ; upd8() { cd /var/www/beef/ ; svn up; ruby1.8 install.rb ;}
- n9=Middler ; upd9() { svn up /pentest/spoofing/middler/ ;}
- n10=PentBox ; upd10() { svn up /pentest/exploits/pentbox/ ;}
- n11=Nikto ; upd11() { cd /pentest/web/nikto/ ; svn up ; ./nikto.pl -update ;}
- n12=Arachni ; upd12() { cd /pentest/scanners/arachni/ ; git pull; rake install ;}
- n13=Framework2 ; upd13() { svn up /pentest/exploits/framework2/ ;}
- n14=Wifite ; upd14() { /pentest/wireless/wifite.py --update ;}
- n15=Kismet ; upd15() { cd /pentest/wireless/kismet-newcore/ ; svn up ; ./configure && make dep && make && make install ;}
- n16=Armitage ; upd16() { cd /pentest/exploits/armitage; rm release/armitage-unix/armitage; svn up; ./package.sh ;}
- n17=`echo -e '\e[33mHostmap\e[m'` ; upd17() { svn up /pentest/enumeration/dns/hostmap/ ;}
- n18=`echo -e '\e[33mExploitDB\e[m'` ; upd18() { svn up /pentest/exploits/exploitdb ;}
- n19=`echo -e '\e[33mNessus\e[m'` ; upd19() { /opt/nessus/sbin/nessus-update-plugins ;}
- n20=Dradis ; upd20() { cd /pentest/misc/dradis/ ; svn up ; bundle install ; thor dradis:reset ;}
- ### IF YOU ADD SOMETHING THEN ADD IT TO THE FULL_UPDATES_LIST section below
- }
- FULL_UPDATES_LIST(){ upd1; upd2; upd3; upd4; upd5; upd6; upd7; upd8; upd9; upd10; upd11; upd12; upd13; upd14; upd15; upd16; upd17; upd18; upd19; upd20; }
- pause() { # [1:timeout] [2:prompt]
- local P T
- [[ $1 =~ ^[0-9]+$ ]] && { T=$1; shift; }
- P=${1:echo -e "\e[1;32m-Hit any key...\e[m\n"}
- echo -n "$P " >&2
- if ((T))
- then for ((P=$T; P>0; P--))
- do read -sn 1 -p "($P) " -t 1 && break
- tput cub $((${#P}+3))
- done
- else
- read -sn 1
- fi
- echo >&2
- return
- }
- UPD_MENU(){
- # UPD Functions
- cfgmsg() { echo; echo -e "\e[1;32m Updating $upd...\e[m\n";}
- okmsg() { intromsg ; echo -e "\e[1;32m $upd \e[1;32mupdated!\e[m" ; $line; upd_menu ; break; }
- X=`echo -e '\e[37m<< \e[m'`
- ALL=`echo -e '\e[37mALL\e[m'`
- upd_list=("$X" $n1 $n2 $n3 $n4 $n5 $n6 $n7 $n8 $n9 $n10 "$ALL" $n11 $n12 $n13 $n14 $n15 $n16 $n17 $n18 $n19 $n20 $n21 $n22 $n23 $n24 $n25 )
- upd_menu() {
- select upd in "${upd_list[@]}"
- do
- case $upd in
- "$X") intromsg; tips; opt_menu; break;;
- "$ALL") cfgmsg; FULL_UPDATES_LIST; pause 3 ; okmsg;;
- "$n1") check; cfgmsg; upd1; pause 3 ; okmsg;;
- "$n2") check; cfgmsg; upd2; pause 3 ; okmsg;;
- "$n3") check; cfgmsg; upd3; pause 3 ; okmsg;;
- "$n4") check; cfgmsg; upd4; pause 3 ; okmsg;;
- "$n5") check; cfgmsg; upd5; pause 3 ; okmsg;;
- "$n6") check; cfgmsg; upd6; pause 3 ; okmsg;;
- "$n7") check; cfgmsg; upd7; pause 3 ; okmsg;;
- "$n8") check; cfgmsg; upd8; pause 3 ; okmsg;;
- "$n9") check; cfgmsg; upd9; pause 3 ; okmsg;;
- "$n10") check; cfgmsg; upd10; pause 3 ; okmsg;;
- "$n11") check; cfgmsg; upd11; pause 3 ; okmsg;;
- "$n12") check; cfgmsg; upd12; pause 3 ; okmsg;;
- "$n13") check; cfgmsg; upd13; pause 3 ; okmsg;;
- "$n14") check; cfgmsg; upd14; pause 3 ; okmsg;;
- "$n15") check; cfgmsg; upd15; pause 3 ; okmsg;;
- "$n16") check; cfgmsg; upd16; pause 3 ; okmsg;;
- "$n17") check; cfgmsg; upd17; pause 3 ; okmsg;;
- "$n18") check; cfgmsg; upd18; pause 3 ; okmsg;;
- "$n19") check; cfgmsg; upd19; pause 3 ; okmsg;;
- "$n20") check; cfgmsg; upd20; pause 3 ; okmsg;;
- "$n21") check; cfgmsg; upd21; pause 3 ; okmsg;;
- "$n22") check; cfgmsg; upd22; pause 3 ; okmsg;;
- "$n23") check; cfgmsg; upd23; pause 3 ; okmsg;;
- "$n24") check; cfgmsg; upd24; pause 3 ; okmsg;;
- "$n25") check; cfgmsg; upd25; pause 3 ; okmsg;;
- *) upd_invalid;;
- esac
- done
- }
- }
- OPT_MENU(){
- Amsg() { $news1; news1=$news2; $line;}
- opt1=`echo -e '\e[0;38mUpdate applications\e[m'`
- XX=`echo -e '\e[37m<< \e[m'`
- OPTS=("$XX" "$opt1")
- opt_menu() {
- select opt in "${OPTS[@]}"
- do
- case $opt in
- "$XX") cd $startdir; break;;
- "$opt1") intromsg; Amsg; upd_menu; break;;
- *) invalid; opt_menu; break;;
- esac
- done
- }
- }
- VARIABLES(){
- startdir=`pwd`
- line="echo -e \e[1;30m________________________________________\e[m"
- news1="echo -e \e[36m $changes\e[m"
- news2="echo -e \e[36m SVN/Git updates:\e[m"
- user=who wants beer? | awk '{ print $1 }'
- tip1="echo -e \e[36m Welcome\e[m"
- tip2="echo -e \e[36m Welcome $user\e[m"
- tip3="echo -e \e[36m Come visit us at forum.gnacktrack.co.uk\e[m"
- }
- FUNCTIONS(){
- intromsg() { clear; echo -e "\e[1;37mGnacktrack\e[31mR6\e[0;34m Updater\e[34m $version\e[m\n";}
- invalid() { clear; intromsg; echo -e "\e[1;33m Invalid Option!\e[m"; $line;}
- upd_invalid() { clear; intromsg; echo -e "\e[1;33m Invalid Option!\e[m"; $line; upd_menu; break;}
- check() { if [ "$upd" = "" ]; then \ ;upd_invalid; fi;}
- tips() { if [ "$user" = "root" ] ; then \ ; $tip1; else $tip2; fi
- $line; tip1=$tip3; tip2=$tip3; }
- }
- main(){
- # Check root permissions
- if [ ${UID} -ne 0 ]
- then
- intromsg
- echo -e \ "\e[1;31m ERROR: This script has to be run with root permissions.\e[m\n"
- exit 1
- fi
- # Check/install dependencies
- depmsg () { intromsg; echo -e '\e[1;33m Installing dependencies...\e[m\n'; }
- if [ "$(which svn)" = "" ] ; then \ ;depmsg; apt-get install -y -qq subversion
- elif [ "$(which git)" = "" ] ; then \ ;depmsg; apt-get install -y -qq git; fi
- # Intro menu
- intromsg; tips
- PS3=`echo -e '\e[0;30mChoose an option: \e[m'`
- opt_menu
- }
- VARIABLES
- FUNCTIONS
- LIST
- OPT_MENU
- UPD_MENU
- main
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement