Skip to content

Commit

Permalink
Initial Push
Browse files Browse the repository at this point in the history
  • Loading branch information
A'mmer Almadani authored and A'mmer Almadani committed Nov 4, 2013
0 parents commit 621cded
Show file tree
Hide file tree
Showing 63 changed files with 9,992 additions and 0 deletions.
61 changes: 61 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@

The project was hosted on https://sourceforge.net/projects/penbang/

The repo is up, however it is not functioning.

Here is a summary:

OLD

penbang_install_script.py ---> Request script from server(penbang.sysbase.org)
| |
| |
| Get install_tool.sh ---> Run install_tool.sh
| |
| Deploy in penbang/netkit/tool
|
for every tool; create penbang/netkit/tool dir


NEW "GIT REPO" (not implemented)

penbang_install_script.py ---> call script from install_tools/install_tool.sh
|
|
for every tool; create penbang/netkit/tool dir

This way we only need to change where to get the scripts, rather than changing the paths in install_tool.sh



NOTES:

Scripts.py and bigfig.py will always be to the latest version

TODO::

Rewrite install_penbang_update.sh ----> is is needed??? there is a repo.

Rewrite penbang_install_script.py ----> must include the initial install.py(irpas, dsniff....)

add missing tools in bigfig.py ----> or the hell with it!!!

Write a seperate script for the menu --- Thank you ryan

Rewrite Readme.txt

::

I included a netkit dir in the repo; it has the following:

! - spike/pen_spkie ---> a spike launcher I wrote
! - SMITM ---> Silent Man In The Middle (https://sourceforge.net/p/penbang/wiki/Home/)
! - openvas-check-script
! - Hash_ID
! - crunch
! - armitage source and armitage_path(mad_dev is hard coded?????)
! - common.mak (a fix for aircrack)

Hopefully within the next 2-3 days everthing will up and running.

For the life of me, I have no idea why I didn't start a repo
258 changes: 258 additions & 0 deletions install.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,258 @@
#!/usr/bin/env python

# Penbang Installer (install.py)
# Copyright (C) <2013> mad_dev(A'mmer Almadani)
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of the <organization> nor the
# names of its contributors may be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

# Report any issues with this script to <[email protected]>

# Tested on crunchbang waldorf(openbox)

# 3rd party DISCLAIMER
#
# pingCommunication Class {
# Description: This module tests a ping return
# Author: Thiago de Freitas Oliveira Araujo
#
# <http://thiagodefreitas.com>
#
# <[email protected]> }
#
# EODISCLAIMER


# This entire script must be rewritten

def pychk(name, downloadFile, downloadCommand, search):
try:
return __import__(name)
import name
except ImportError, e:
if downloadFile != ' ':
print name + ' does not exist\nFind our more here: ' + downloadFile
else:
print '%s usually comes with python' %name
print 'Link: https://duckduckgo.com/?q=%s' %search
if downloadCommand != ' ':
x = raw_input("Download %s? Y/N " %name)
if x == 'y':
os.system(downloadCommand)
elif x == 'n':
print 'Command %s' %downloadCommand
a = input('Hit enter to exit')

import os
pychk('urllib2', ' ', ' ', 'urllib2')
import urllib2
pychk('subprocess', ' ', ' ', 'subprocess')
import subprocess
pychk('threading', ' ', ' ', 'threading')
import threading
pychk('sys', ' ', ' ', 'sys') #not needed, unless python is running on a banana
import sys
pychk('time', ' ', ' ', 'time')
import time
pychk('datetime', ' ', ' ', 'datetime')
import datetime
pychk('itertools', ' ', ' ', 'itertools')
import itertools
pychk('getpass', ' ', ' ', 'getpass')
import getpass

version="0.0.2"

class clr:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKGREEN = '\033[92m'
YEL = '\033[93m'
RED = '\033[91m'
ENDC = '\033[0m'
MOV = '\033[96m'

def disable(self):
self.HEADER = ''
self.OKBLUE = ''
self.OKGREEN = ''
self.WARNING = ''
self.FAIL = ''
self.ENDC = ''
self.MOV = ''


class pingCommunication():

def __init__(self, ipToPing):
self.ipToPing = ipToPing
self.pingQuantity = "5" #seems enough

def pingProcess(self):
pingTest = "ping -c "+ self.pingQuantity + ' ' + self.ipToPing
print "Checking if you are connected by " + pingTest
process = subprocess.Popen(pingTest, shell=True, stdout=subprocess.PIPE)
process.wait()
returnCodeTotal = process.returncode
while 1:
if returnCodeTotal < 1:
pass
time.sleep(0.1)
print "\nConnection Test Passed\n"
time.sleep(0.1)
print 'Penbang %s\n' %version
print clr.HEADER
print '''To install yamas, cd to its dir and run it from the root terminal.
Dont run sudo yamas, run sudo su, then yamas.\n'''
print clr.ENDC
print clr.OKGREEN
awoken = raw_input('Do you want me to download AwOken Icons? Y/N ')
print clr.YEL
if awoken == 'y':
os.system('wget -P /home/$(whoami)/penbang/awoken_icons/zip https://dl.dropbox.com/u/8029324/AwOken-2.5.zip')
os.system('unzip -n /home/$(whoami)/penbang/awoken_icons/zip/AwOken-2.5.zip -d /home/$(whoami)/penbang/awoken_icons/zip/')
os.system('tar -xvf /home/$(whoami)/penbang/awoken_icons/zip/AwOken-2.5/AwOken.tar.gz -C /home/$(whoami)/penbang/awoken_icons/zip/AwOken-2.5/')
os.system('mv /home/$(whoami)/penbang/awoken_icons/zip/AwOken-2.5/AwOken /home/$(whoami)/.icons/')
elif awoken == 'n':
print 'pass'
pass
else:
print 'Wrong input'
awoken
print clr.HEADER
print '''Initial installation:\033[93m
terminator \033[94m#Just in case\033[93m
irpas
dsniff
nmap
wireshark
tshark
zenmap
sslstrip
sslsniff
reaver
tcpdump
scapy
john
gdebi \033[94m#Just in case'''
print clr.OKGREEN
root=raw_input('Shall I proceed with the initial installation? Y/N ')
print clr.YEL
if root == 'y':
os.system('sudo apt-get update')
os.system('sudo apt-get install terminator') #Everything will be launched using terminator
os.system('sudo apt-get install irpas')
os.system('sudo apt-get install dsniff')
os.system('sudo apt-get install nmap')
os.system('sudo apt-get install wireshark')
os.system('sudo apt-get install tshark')
os.system('sudo apt-get install zenmap')
os.system('sudo apt-get install sslstrip')
os.system('sudo apt-get install sslsniff')
os.system('sudo apt-get install reaver')
os.system('sudo apt-get install tcpdump')
os.system('sudo apt-get install scapy')
os.system('sudo apt-get install john')
os.system('sudo apt-get install gdebi') #Needed for .deb
elif root == 'n':
print 'Passing inital'
pass
break
else:
print clr.RED
print "You are not connected to the Internet"
print "Killing process...Bye"
raise SystemError("Failed to connect")


if __name__ == "__main__":
print clr.RED
print 'DO NOT RUN THIS AS ROOT\nASSUMES AN i386 SYSTEM'
print clr.OKBLUE
print 'You will be prompted at several points to enter your root password.\n'
print clr.ENDC
#Ipadd = "173.194.40.17" #Google.com
Ipadd = "72.14.179.38" #Crunchbang.com
comunicate = pingCommunication(Ipadd)
comunicate.pingProcess()
os.system('exit') #WHY???????
print clr.RED
#print 'This version includes openvas 6.\nThere have been some reports that\n\033[93mGreenbone Security Desktop (GSD) 1.2.2\n\033[91mDoes not build on newer systems\nPlease read the *) note on\n\033[93mhttp://www.openvas.org/install-source.html'

print clr.ENDC
print "I need to change menu.xml\nDon't worry. Your old config will be renamed menu_orig.xml?"
print clr.OKGREEN
openbox = raw_input("Shall I change menu.xml Y/N ")
if openbox == 'y':
print clr.YEL
os.system('cp /home/$(whoami)/.config/openbox/menu.xml /home/$(whoami)/.config/openbox/menu_orig.xml')
#os.system('cp /home/$(whoami)/penbang/mod_data/openbox/menu.xml /home/$(whoami)/.config/openbox/menu.xml')
##################Needed for icons in menu###############################
whoami = getpass.getuser()
o = open("/home/"+whoami+"/.config/openbox/menu.xml","w")
for line in open("/home/"+whoami+"/penbang/mod_data/openbox/menu.xml"):
line = line.replace("mad-dev",str(whoami))
o.write(line)
o.close()
########################################################################
elif openbox == 'n':
print clr.RED
print 'pass'
pass
else:
print clr.RED
print 'Wrong input..wrong'
pass

def install_tool(name, path):
print clr.OKGREEN
name = raw_input('Do you want me to install %s? Y/N ' %name)
print clr.YEL
if name == 'y':
os.system(path)
elif name == 'n':
print clr.RED
print 'pass'
pass
else:
print clr.RED
print 'Wrong input...Pass'
pass

install_tool('maltego', '/home/$(whoami)/penbang/social_engineering/maltego_community/install_maltego.sh')
install_tool('aitcrack-ng', '/home/$(whoami)/penbang/netkit/aircrack-ng/source/install_aircrack.sh')
install_tool('ettercap', '/home/$(whoami)/penbang/netkit/ettercap/install_ettercap.sh')
install_tool('kismet', '/home/$(whoami)/penbang/netkit/kismet/install_kismet.sh')
install_tool('metasploit', '/home/$(whoami)/penbang/netkit/metasploit/install_metasploit.sh')
install_tool('armitage', '/home/$(whoami)/penbang/netkit/armitage/install_armitage.sh')
install_tool('sqlninja', '/home/$(whoami)/penbang/netkit/sqlninja/install_sqlninja.sh')
#install_tool('nessus', 'home/$(whoami)/penbang/netkit/nessus/install_nessus.sh')
#install_tool('openvas', '/home/$(whoami)/penbang/netkit/openvas/install_openvas.sh') #Facing some build issues, I will include it in the next release
install_tool('sqlsus', '/home/$(whoami)/penbang/netkit/sqlsus/install_sqlsus.sh')
install_tool('wfuzz', '/home/$(whoami)/penbang/netkit/wfuzz/install_wfuzz.sh')
install_tool('hydra', '/home/$(whoami)/penbang/netkit/hydra/install_hydra.sh')
install_tool('findmyhash', '/home/$(whoami)/penbang/netkit/findmyhash/install_findmyhash.sh')
install_tool('SMITM', '/home/$(whoami)/penbang/netkit/SMITM/install_smitm.sh')
install_tool('subterfuge', '/home/$(whoami)/penbang/netkit/subterfuge/install_subterfuge.sh')



14 changes: 14 additions & 0 deletions install_tools/install_ZAP.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/bash

echo 'Downloading OWASP ZAP'

wget -P /home/$(whoami)/penbang/netkit/ZAP/ https://zaproxy.googlecode.com/files/ZAP_2.2.2_Linux.tar.gz

echo 'Unpacking'

cd /home/$(whoami)/penbang/netkit/ZAP/

tar -xvzf "/home/$(whoami)/penbang/netkit/ZAP/ZAP_2.2.2._Linux.tar.gz"


exit 0
29 changes: 29 additions & 0 deletions install_tools/install_aircrack.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/bin/bash

#Report any issues with this script to <[email protected]>

#Tested on crunchbang waldorf(openbox)

echo 'aircrack-ng installation script'
echo 'Downloading aircrack-ng'
wget -P /home/$(whoami)/penbang/netkit/aircrack-ng/source/ http://download.aircrack-ng.org/aircrack-ng-1.1.tar.gz
echo 'Downloading build dependencies'
sudo apt-get update
sudo apt-get install libpcap-dev
sudo apt-get install libssl-dev
sudo apt-get install build-essential
sudo apt-get install sqlite
sudo apt-get install iw
sudo apt-get install linux-headers-$(uname -r)
sudo apt-get install gcc
sudo apt-get install make
echo 'unpacking'
cd /home/$(whoami)/penbang/netkit/aircrack-ng/source
sudo tar xfvz aircrack-ng-1.1.tar.gz
sudo cp common.mak aircrack-ng-1.1/common.mak
echo 'compiling'
cd /home/$(whoami)/penbang/netkit/aircrack-ng/source/aircrack-ng-1.1 && sudo make && sudo make install
echo 'updating OUI'
sudo airodump-ng-oui-update

exit 0
12 changes: 12 additions & 0 deletions install_tools/install_argus.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/bash

#Report any issues with this script to <[email protected]>

#Tested on crunchbang waldorf(openbox)

# For non-penbang users change the path after -P

echo 'argus installation script'
wget -P /home/$(whoami)/penbang/netkit/argus/ http://http.kali.org/pool/main/a/argus/argus-server_2.0.6.fixes.1-16.3_i386.deb
gdebi-gtk /home/$(whoami)/penbang/netkit/argus/argus-server_2.0.6.fixes.1-16.3_i386.deb
exit 0
14 changes: 14 additions & 0 deletions install_tools/install_armitage.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/bash

#Report any issues with this script to <[email protected]>

#Tested on crunchbang waldorf(openbox)

echo 'Armitage installation script'
echo 'downloading Armitage'
#wget -P /home/$(whoami)/penbang/netkit/armitage/ http://www.fastandeasyhacking.com/download/armitage041013.tgz Wget fails to download. Package included in release
tar xfvz /home/$(whoami)/penbang/netkit/armitage/armitage041013.tgz
cp /home/$(whoami)/penbang/netkit/armitage/armitage_path /home/$(whoami)/penbang/netkit/armitage/armitage/armitage
cd /usr/local/bin/
sudo ln -s /home/$(whoami)/penbang/netkit/armitage/armitage/armitage
exit 0
Loading

0 comments on commit 621cded

Please sign in to comment.