#!/usr/bin/python # This is a update script for Backtrack 5. # Rewritten by: bl4ck5w4n aka MaXFX in BT Forum # Mail: bl4ck5w4n5@gmail.com # Blog: http://bl4ck5w4n.tk # Original autor Sickness http://sickness.tor.hu import os, time, inspect,sys,fileinput import smtplib, getopt from email.MIMEText import MIMEText global tsleep tsleep = 2 def get_version(): curversion = 1.1 return curversion def backtrack_update(): print("\033[1;31m [>]\033[1;m Updating and cleaning Backtrack, please wait.") time.sleep(tsleep) if(os.system("apt-get update && apt-get -y dist-upgrade && apt-get autoremove -y && apt-get -y autoclean") == 0): print("\033[1;31m [>]\033[1;m Backtrack updated and cleaned successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Backtrack.") time.sleep(tsleep) def exploit_db(): print("\033[1;31m [>]\033[1;m Updating Exploit-db, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/exploits/exploitdb/platforms/ && svn up") == 0): print("\033[1;31m [>]\033[1;m Exploit-db updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Exploit-db.") time.sleep(tsleep) def Set(): print("\033[1;31m [>]\033[1;m Updating SET, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/exploits/set/ && svn up") == 0): print("\033[1;31m [>]\033[1;m SET updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update SET.") time.sleep(tsleep) def warvox(): print("\033[1;31m [>]\033[1;m Updating Warvox, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/telephony/warvox/ && svn up") == 0): print("\033[1;31m [>]\033[1;m Warvox updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Warvox") time.sleep(tsleep) def aircrack(): print("\033[1;31m [>]\033[1;m Updating Aircrack-NG and Airodump, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/wireless/aircrack-ng/ && svn up") == 0): os.system("cd /pentest/wireless/aircrack-ng/scripts/ && chmod a+x airodump-ng-oui-update && ./airodump-ng-oui-update") print("\033[1;31m [>]\033[1;m Aircrack-NG and Airodump updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Aircrack-ng.") time.sleep(tsleep) def feedingbottle(): print("\033[1;31m [>]\033[1;m Checking to see if FeedingBottle is installed.") time.sleep(tsleep) if os.path.exists("/bin/feedingbottle"): print("\033[1;31m [>]\033[1;m FeedingBottle installed!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Installing FeddingBottle, please wait.") os.system("wget http://www.ibeini.com/beini_system/others/feedingbottle/feedingbottle3.2-backtrack5-gnome.zip") os.system("unzip feedingbottle3.2-backtrack5-gnome.zip") if (os.system("dpkg -i feedingbottle3.2-backtrack5-gnome.deb")==0): print("\033[1;31m [>]\033[1;m FeddingBottle installed successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to install FeddingBottle.") time.sleep(tsleep) os.system("rm feedingbottle3.2*") def giskismet(): print("\033[1;31m [>]\033[1;m Updating Giskismet, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/wireless/giskismet/ && svn up") == 0): print("\033[1;31m [>]\033[1;m Giskismet updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Giskismet.") time.sleep(tsleep) def msf(): print("\033[1;31m [>]\033[1;m Updating Metasploit, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/exploits/framework/ && svn up") == 0): print("\033[1;31m [>]\033[1;m Metasploit updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Metasploit.") time.sleep(tsleep) def openvas(): print("\033[1;31m [>]\033[1;m Updating OpenVAS, please wait.") if (os.system("openvas-nvt-sync")== 0): print("\033[1;31m [>]\033[1;m OpenVAS updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update OpenVAS!") time.sleep(tsleep) def sslstrip(): print("\033[1;31m [>]\033[1;m Updating SSLStrip, please wait.") if (os.system("cd /tmp && wget http://www.thoughtcrime.org/software/sslstrip/sslstrip-0.9.tar.gz") == 0): os.system("apt-get purge sslstrip -y") os.system("rm -Rf /pentest/web/sslstrip") os.system("tar -C /pentest/web/ -xvf /tmp/sslstrip-0.9.tar.gz") os.system("mv /pentest/web/sslstrip-0.9 /pentest/web/sslstrip") os.system("cd /pentest/web/sslstrip && python ./setup.py install") os.system("chmod +x /pentest/web/sslstrip/sslstrip.py") print("\033[1;31m [>]\033[1;m SSLStrip updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update SSLStrip!") time.sleep(tsleep) def nessus(): if(os.system("which nessus > /dev/null") == 0): print("\033[1;31m [>]\033[1;m Updating Nessus plugins, please wait.") time.sleep(tsleep) if(os.system("cd /opt/nessus/sbin/ && ./nessus-update-plugins") == 0): print("\033[1;31m [>]\033[1;m Nessus plugins updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Nessus.") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Nessus is not installed.") time.sleep(tsleep) def install_nessus(): if(os.system("which nessus > /dev/null") == 0): print("\033[1;31m [>]\033[1;m Nessus is already installed!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Installing Nessus!") os.system("apt-get install nessus") print("\033[1;31m [>]\033[1;m You need to register nessus to get the activation code:") browser_nessus = raw_input("\033[1;31m [>]\033[1;m Would you like me to open Firefox for you? [n/Y] : ") if(browser_nessus.upper()=="Y"): os.system("firefox http://tenable.com/products/nessus/nessus-homefeed&") auth_key="" while(auth_key == ""): auth_key = raw_input("\033[1;31m [>]\033[1;m Enter Activation Code that was sent to your Email: ") os.system("/opt/nessus/bin/nessus-fetch --register " + auth_key) print("\033[1;31m [>]\033[1;m Adding user") os.system("/opt/nessus/sbin/nessus-adduser") print("\033[1;31m [>]\033[1;m Staring Nessus service") os.system("/etc/init.d/nessusd start") print("\033[1;31m [>]\033[1;m To access Nessus Web Interface: https://127.0.0.1:8834") def hexorbase(): if (os.path.isfile('/opt/HexorBase/execute.py')): print("\033[1;31m [>]\033[1;m HexorBase already installed!") time.sleep(tsleep) else: if (os.system("apt-get install python-mysqldb python-psycopg2 python-pymssql python-qscintilla2 python-qt4 -y")==0): if (os.system("cd /tmp && wget http://hexorbase.googlecode.com/files/hexorbase_1.0_all.deb")==0): os.system("cd /tmp && dpkg -i hexorbase_1.0_all.deb") os.system("sed -i.bak 's/Categories.*/Categories = bt-web-assessment-vulnerability-scanner;bt-web-exploitation-scanners;bt-db-mysql-assessment;bt-db-mssql-assessment;bt-db-oracle-assessment;bt-db-mysql-analysis;bt-db-mssql-analysis;bt-db-oracle-analysis;bt-db-mysql-exploit;bt-db-mssql-exploit;bt-db-oracle-exploit;/g' /usr/share/applications/hexorbase.desktop") print("\033[1;31m [>]\033[1;m To install Oracle API please read: /opt/HexorBase/Oracle-API-installation.txt") print("\033[1;31m [>]\033[1;m HexorBase installed successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to install HexorBase!") def w3af(): print("\033[1;31m [>]\033[1;m Updating W3AF, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/web/w3af/ && svn up") == 0): print("\033[1;31m [>]\033[1;m W3AF updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update W3AF.") time.sleep(tsleep) def nikto(): print("\033[1;31m [>]\033[1;m Updating Nikto, please wait.") time.sleep(tsleep) if(os.system("cd /pentest/web/nikto/ && ./nikto.pl -update") == 0): print("\033[1;31m [>]\033[1;m Nikto updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Nikto.") time.sleep(tsleep) def sqlmap(): print("\033[1;31m [>]\033[1;m Updating Sqlmap, please wait.") time.sleep(tsleep) if(os.system("svn checkout https://svn.sqlmap.org/sqlmap/trunk/sqlmap /pentest/database/sqlmap") == 0): print("\033[1;31m [>]\033[1;m Sqlmap updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update SQLmap.") time.sleep(tsleep) def pyrit(): print("\033[1;31m [>]\033[1;m Checking to see if pyrit is installed.") time.sleep(tsleep) if(os.system("pyrit > /dev/null") == 0): print("\033[1;31m [>]\033[1;m Pyrit installed!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Installing Pyrit, please wait.") time.sleep(tsleep) os.system("apt-get -y install libssl-dev scapy python-dev") os.system("svn checkout http://pyrit.googlecode.com/svn/trunk/ pyrit_svn") os.system("cd pyrit_svn/pyrit && python setup.py build && python setup.py install") os.system("rm -Rf pyrit_svn") print("\033[1;31m [>]\033[1;m Pyrit installed successfully!") def fimap(): print("\033[1;31m [>]\033[1;m Updating Fimap and installing MSF plugin, please wait.") time.sleep(tsleep) os.system("rm -Rf /pentest/web/fimap") if(os.system("svn checkout http://fimap.googlecode.com/svn/trunk/src/ /pentest/web/fimap")==0): print("\033[1;31m [>]\033[1;m Fimap updated successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to update Fimap!") time.sleep(tsleep) def wireshark(): wr=raw_input("\033[1;31m [>]\033[1;m Wireshark takes time to compile do you wish to wait [y/N]:") if(wr=="y"): print("\033[1;31m [>]\033[1;m Updating Wireshark, please wait.") time.sleep(tsleep) os.system("apt-get install autoconf libgtk2.0-dev libglib2.0-dev libgeoip-dev libpcre3-dev libpcap0.8-dev libtool byacc flex -y") if (os.system("cd /tmp && svn co http://anonsvn.wireshark.org/wireshark/trunk/ wireshark")==0): print("\033[1;31m [>]\033[1;m Files downloaded successfully! Now the painful part... Be patient") time.sleep(tsleep) os.system("cd /tmp/wireshark && ./autogen.sh") os.system("cd /tmp/wireshark && ./configure") os.system("cd /tmp/wireshark && make") if (os.system("cd /tmp/wireshark && make install")==0): os.system("ldconfig") os.system("rm -Rf /tmp/wireshark") if (os.path.isfile('/usr/local/share/wireshark/init.lua')): print("\033[1;31m [>]\033[1;m Changeging init.lua file..") time.sleep(tsleep) for lines in fileinput.FileInput("/usr/local/share/wireshark/init.lua", inplace=1): lines = lines.replace("disable_lua = false","disable_lua = true") print("\033[1;31m [>]\033[1;m Wireshark installed successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Wireshark failed to install!") time.sleep(tsleep) def update(): print("\033[1;31m [>]\033[1;m Updating bt5update script.") os.system("cd /tmp && wget http://bl4ck5w4n.tk/wp-content/uploads/2011/07/bt5up.tar -c -q") if os.path.isfile("/tmp/bt5up.tar"): os.system("tar -xvf /tmp/bt5up.tar -C /tmp/ > /dev/null") curfile = inspect.getfile(inspect.currentframe()) pwd = os.getcwd() + str(curfile) os.system("rm -Rf " + pwd) os.system("mv /tmp/bt5up.py " + str(curfile)) os.system("chmod +x " + str(curfile)) print("\033[1;31m [>]\033[1;m Update successfully! bt5up will restart, please wait...") time.sleep(tsleep) python = sys.executable os.execl(python, python, * sys.argv) def bugs_fixs(): header() print(" Section: Fix BT5 Bugs/Customize BT5") print("\033[1;31m [>]\033[1;m 1. Startx after login.") print("\033[1;31m [>]\033[1;m 2. Change Login message.") print("\033[1;31m [>]\033[1;m 3. Install Flash Player 64Bits.") print("\033[1;31m [>]\033[1;m 4. Back.") bugs = raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(bugs=="1"): startx() bugs_fixs() if(bugs=="2"): login_msg() bugs_fixs() if(bugs=="3"): flashplayer() bugs_fixs() if(bugs=="4"): main() def startx(): print("\033[1;31m [>]\033[1;m Make startx as default...") os.system('echo \'if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ];\n then \nstartx \nfi\' >> /root/.bash_profile') print("\033[1;31m [>]\033[1;m Done. Next time you reboot startx will start...") time.sleep(tsleep) def login_msg(): print("\033[1;31m [>]\033[1;m Edit the login message using nano") time.sleep(tsleep) os.system("nano /etc/update-motd.d/10-help-text") os.system("sh /etc/update-motd.d/10-help-text") print("\033[1;31m [>]\033[1;m Next time you boot your message will be like that") time.sleep(tsleep) os.system("nano /etc/update-motd.d/10-help-text") os.system("sh /etc/update-motd.d/10-help-text") print("\033[1;31m [>]\033[1;m Next time you boot your message will be like that") time.sleep(tsleep) def flashplayer(): print("\n\033[1;31m [>]\033[1;m Installing FlashPlayer 64Bits") print("\033[1;31m [>]\033[1;m This will close your FireFox...") time.sleep(tsleep) os.system("killall -9 firefox-bin") if(os.system("cd / && wget -c http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_10_linux.tar.gz")==0): os.system("cd / && tar -xvf install_flash_player_10_linux.tar.gz") os.system("mkdir -p ~/.mozilla/plugins") os.system("cd / && mv libflashplayer.so ~/.mozilla/plugins/") os.system("cd / && rm -Rf install_flash_player_10_linux.tar.gz") print("\033[1;31m [>]\033[1;m FlashPlayer 64Bits installed successfully!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Failed to install FlashPlayer 64Bits") time.sleep(tsleep) def latest_version(): i=0 lversion = 0 os.system("cd /tmp && wget http://bl4ck5w4n.tk/wp-content/uploads/2011/07/version.txt -c -q") if os.path.isfile("/tmp/version.txt"): ofile=open("/tmp/version.txt","r") lversion=ofile.readline() return lversion; def clean_exit(): print("\033[1;31m [>]\033[1;m Cleaning temporary files and leaving...") if os.path.isfile("/tmp/version.txt"): os.system("rm /tmp/version.txt") if os.path.isfile("/tmp/bt5up.tar"): os.system("rm /tmp/bt5up.tar") if os.path.isfile("/tmp/bt5up.py"): os.system("rm /tmp/bt5up.py") print("\033[1;31m [>]\033[1;m Thanks for using bt5up dont forget to visit: http://bl4ck5w4n.tk") print("\033[1;31m [>]\033[1;m For automated updates you can use bt5up -u\n") def header(): os.system("clear") print('\033[1;31m , ,') print(' $, $, ,') print(' "ss.$ss. .s') print(' , .ss$$$$$$$$$$s,') print(' $. s$$$$$$$$$$$$$$`$$Ss') print(' "$$$$$$$$$$$$$$$$$$o$$$ ,') print(' s$$$$$$$$$$$$$$$$$$$$$$$$s, ,s') print(' s$$$$$$$$$"$$$$$$""""$$$$$$"$$$$$,') print(' s$$$$$$$$$$s""$$$$ssssss"$$$$$$$$"') print(' s$$$$$$$$$$ `"""ss"$"$s""') print(' s$$$$$$$$$$, `"""""$ ') print(' s$$$$$$$$$$$$s,... ') print("------------------------------------------------------------------------------\033[1;m") print("\033[1;37m [Back||Track 5 R1 Update]\033[1;m") print(" Author: Bl4ck5w4n") print(" Feedback/Bugs : bl4ck5w4n5@gmail.com || http://bl4ck5w4n.tk") if (float(get_version()) < float(latest_version())): print(" Installed Version: \033[1;31m" + str(get_version()) + "\033[1;m Latest Version:\033[1;37m" + str(latest_version()) +"\033[1;m") else: print(" Installed Version: \033[1;32m" + str(get_version()) + "\033[1;m Latest Version:\033[1;37m" + str(latest_version()) +"\033[1;m") print("\033[1;31m------------------------------------------------------------------------------\033[1;m") def changelog(): os.system("cd /tmp && wget http://bl4ck5w4n.tk/wp-content/uploads/2011/07/changelog.txt -o /dev/null") os.system("less /tmp/changelog.txt") os.remove("/tmp/changelog.txt") def gmail(): print("\033[1;31m [>]\033[1;m Send me some feeback/bugs/requests (Please NO spam)...\n If you wanna go back just leave the email or pass in blank\n") gmailLogin = raw_input('\033[1;31m [>]\033[1;m Your GMail login (eg. someone@gmail.com): ') gmailPass = raw_input('\033[1;31m [>]\033[1;m Your GMail Password: ') if (gmailLogin!="" or gmailPass != ""): msg = raw_input('\033[1;31m [>]\033[1;m Your Message: ') msg = MIMEText(msg) msg['Subject'] = "BT5UP " +str(get_version()) +" FeedBack" msg['From'] = gmailLogin msg['To'] = "bl4ck5w4n5@gmail.com" server = smtplib.SMTP('smtp.gmail.com',587) server.ehlo() server.starttls() server.ehlo() server.login(gmailLogin,gmailPass) server.sendmail(gmailLogin, "bl4ck5w4n5@gmail.com", msg.as_string()) server.close() print("\033[1;31m [>]\033[1;m Thank you for your time...") time.sleep(tsleep) def menu_exploit(): header() print(" Section: EXPLOIT TOOLS") print("\033[1;31m [>]\033[1;m 1. Metasploit Framework.") print("\033[1;31m [>]\033[1;m 2. Exploit-db.") print("\033[1;31m [>]\033[1;m 3. SET - Social Engineering Toolkit.") print("\033[1;31m [>]\033[1;m 4. Update all.") print("\033[1;31m [>]\033[1;m 5. Back.") ex_var = raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(ex_var=="1"): msf() menu_exploit() if(ex_var=="2"): exploit_db() menu_exploit() if(ex_var=="3"): Set() menu_exploit() if(ex_var=="4"): msf() exploit_db() Set() menu_exploit() if(ex_var=="1"): main() def menu_wireless(): header() print(" Section: WIRELESS & TELEPHONY") print("\033[1;31m [>]\033[1;m 1. Aircrack-ng and Airdrop.") print("\033[1;31m [>]\033[1;m 2. WarVox.") print("\033[1;31m [>]\033[1;m 3. Giskismet.") print("\033[1;31m [>]\033[1;m 4. Update all.") print("\033[1;31m [>]\033[1;m 5. Back.") w_var = raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(w_var=="1"): aircrack() menu_wireless() if(w_var=="2"): warvox() menu_wireless() if(w_var=="3"): giskismet() menu_wireless() if(w_var=="4"): aircrack() warvox() giskismet() menu_wireless() if(w_var=="5"): main() def menu_web_db(): header() print(" Section: WEB & DATABASE") print("\033[1;31m [>]\033[1;m 1. W3AF.") print("\033[1;31m [>]\033[1;m 2. Nikto.") print("\033[1;31m [>]\033[1;m 3. Sqlmap.") print("\033[1;31m [>]\033[1;m 4. Fimap.") print("\033[1;31m [>]\033[1;m 5. Update all.") print("\033[1;31m [>]\033[1;m 6. Back.") wd_war=raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(wd_war=="1"): w3af() menu_web_db() if(wd_war=="2"): nikto() menu_web_db() if(wd_war=="3"): sqlmap() wr=raw_input("\033[1;31m [>]\033[1;m Wireshark takes time to compile do you wish to wait [y/N]:") if(wr=="y"): menu_web_db() if(wd_war=="4"): fimap() menu_web_db() if(wd_war=="5"): w3af() nikto() sqlmap() fimap() menu_web_db() if(wd_war=="6"): main() def update_aptfast(): print("\033[1;31m [>]\033[1;m Updating apt-fast, please wait.") if (os.system("wget -U 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4' http://www.mattparnell.com/linux/apt-fast/apt-fast.sh -c")==0): os.system("mv apt-fast.sh /usr/bin/apt-fast") os.system("chmod +x /usr/bin/apt-fast") print("\033[1;31m [>]\033[1;m Updating apt-fast successfully") else: print("\033[1;31m [>]\033[1;m Failed to update apt-fast") def aptfast(): print("\033[1;31m [>]\033[1;m Checking to see if Axel is installed.") time.sleep(tsleep) if(os.system("axel > /dev/null") == 0): print("\033[1;31m [>]\033[1;m Axel is installed!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Installing Axel, please wait.") os.system("apt-get install axel") print("\033[1;31m [>]\033[1;m Checking to see if apt-fast is installed.") time.sleep(tsleep) if(os.system("apt-fast > /dev/null") == 0): print("\033[1;31m [>]\033[1;m apt-fast is installed!") time.sleep(tsleep) else: print("\033[1;31m [>]\033[1;m Installing apt-fast, please wait.") os.system("wget -U 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4' http://www.mattparnell.com/linux/apt-fast/apt-fast.sh -c") os.system("mv apt-fast.sh /usr/bin/apt-fast") os.system("chmod +x /usr/bin/apt-fast") choice=raw_input("Would you like to use apt-fast instead of apt-get?[y/n]") if (choice =="y"): os.system("echo alias apt-get='apt-fast' >> /root/.bashrc") def menu_other(): header() print(" Section: OTHER") print("\033[1;31m [>]\033[1;m 1. Nessus.") print("\033[1;31m [>]\033[1;m 2. Pyrit.") print("\033[1;31m [>]\033[1;m 3. Wireshark.") print("\033[1;31m [>]\033[1;m 4. OpenVAS.") print("\033[1;31m [>]\033[1;m 5. SSLStrip.") print("\033[1;31m [>]\033[1;m 6. Update all.") print("\033[1;31m [>]\033[1;m 7. Back.") c_var = raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(c_var=="1"): nessus() menu_other() if(c_var=="2"): pyrit() menu_other() if(c_var=="3"): wireshark() menu_other() if(c_var=="4"): openvas() menu_other() if(c_var=="5"): sslstrip() menu_other() if(c_var=="6"): wireshark() nessus() pyrit() update_aptfast() openvas() sslstrip() menu_other() if(c_var=="7"): main() def additional_tools(): header() print(" Section: Additional Tools") print("\033[1;31m [>]\033[1;m 1. Axel & apt-fast.") print("\033[1;31m [>]\033[1;m 2. Nessus.") print("\033[1;31m [>]\033[1;m 3. FeedingBottle.") print("\033[1;31m [>]\033[1;m 4. HexorBase.") print("\033[1;31m [>]\033[1;m 5. Install All.") print("\033[1;31m [>]\033[1;m 6. Back.") choice_var=raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(choice_var=="1"): aptfast() additional_tools()() if(choice_var=="2"): install_nessus() additional_tools() if(choice_var=="3"): feedingbottle() additional_tools() if(choice_var=="4"): hexorbase() additional_tools() if(choice_var=="5"): aptfast() install_nessus() feedingbottle() hexorbase() additional_tools() if(choice_var=="6"): main() def main(): header() print(" Section: MAIN") print("\033[1;31m [>]\033[1;m 1. Update and clean Backtrack.") print("\033[1;31m [>]\033[1;m 2. Exploit tools.") print("\033[1;31m [>]\033[1;m 3. Wireless & Telephony.") print("\033[1;31m [>]\033[1;m 4. Web & Database.") print("\033[1;31m [>]\033[1;m 5. Others.") print("\033[1;31m [>]\033[1;m 6. Update all.") print("\033[1;31m [>]\033[1;m 7. Update script.") print("\033[1;31m [>]\033[1;m 8. Changelog.") print("\033[1;31m [>]\033[1;m 9. Feedback (GMail).") print("\033[1;31m [>]\033[1;m 10. Fix BT5 Bugs/Customize BT5.") print("\033[1;31m [>]\033[1;m 11. Additional Tools") print("\033[1;31m [>]\033[1;m 12. Exit.") choice_var=raw_input("\033[1;31m [>]\033[1;m Enter your choice: ") if(choice_var=="1"): backtrack_update() main() if(choice_var=="2"): menu_exploit() main() if(choice_var=="3"): menu_wireless() main() if(choice_var=="4"): menu_web_db() main() if(choice_var=="5"): menu_other() main() if(choice_var=="6"): wireshark() backtrack_update() exploit_db() Set() warvox() aircrack() giskismet() msf() sslstrip() nessus() w3af() nikto() sqlmap() fimap() pyrit() update_aptfast() openvas() main() if(choice_var=="7"): update() if(choice_var=="8"): changelog() main() if(choice_var=="9"): gmail() main() if(choice_var=="10"): bugs_fixs() main() if(choice_var=="11"): additional_tools() main() if(choice_var=="12"): clean_exit() exit(0) def automated(): try: opts, args = getopt.getopt(sys.argv[1:], "hvu", ["help", "version","update"]) except getopt.GetoptError, err: print str(err) sys.exit(2) for o, a in opts: if o in("-v","--version"): print(" \nBT5UP Version: " + str(get_version()) + "\n Author: Bl4ck5w4n (coded in Python)") print(" Feedback/Bugs: bl4ck5w4n5@gmail.com || http://bl4ck5w4n.tk\n") elif o in ("-h", "--help"): print("\n ================OPTIONS================") print(" -v --version VERSION") print(" -u --update Update All\n") sys.exit() elif o in ("-u", "--update"): wireshark() backtrack_update() exploit_db() Set() warvox() aircrack() giskismet() msf() sslstrip() nessus() w3af() nikto() sqlmap() fimap() pyrit() openvas() update_aptfast() os.system("clear") print("\033[1;31m [>]\033[1;m Thanks for using bt5up dont forget to visit: http://bl4ck5w4n.tk\n") if __name__=="__main__": if (len(sys.argv) > 1): automated() else: main()