From 668526a3082e9d67a62193cc8577da4940cc1dfe Mon Sep 17 00:00:00 2001 From: Lassulus Date: Fri, 21 Dec 2012 22:19:03 +0100 Subject: fixed OS detections --- retiolum/scripts/tinc_setup/new_install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/retiolum/scripts/tinc_setup/new_install.sh b/retiolum/scripts/tinc_setup/new_install.sh index adc355bd..15c4fefb 100755 --- a/retiolum/scripts/tinc_setup/new_install.sh +++ b/retiolum/scripts/tinc_setup/new_install.sh @@ -121,7 +121,7 @@ get_hostname() #os autodetection find_os() { - if grep -qei 'linux' /etc/*release 2>/dev/null; then + if grep -qe 'Linux' /etc/*release 2>/dev/null; then OS=1 elif which getprop&>/dev/null; then OS=2 -- cgit v1.2.3 From 62b9254d0a3dc4d3100840ac7b21b6c60d730834 Mon Sep 17 00:00:00 2001 From: Lassulus Date: Fri, 21 Dec 2012 22:21:49 +0100 Subject: fixed bugs on OpenWrt --- retiolum/scripts/tinc_setup/new_install.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/retiolum/scripts/tinc_setup/new_install.sh b/retiolum/scripts/tinc_setup/new_install.sh index 15c4fefb..1227912e 100755 --- a/retiolum/scripts/tinc_setup/new_install.sh +++ b/retiolum/scripts/tinc_setup/new_install.sh @@ -310,7 +310,8 @@ mkdir -p $TINCDIR/$NETNAME cd $TINCDIR/$NETNAME if [ $OS -eq 3 ]; then - $LOADER http://euer.krebsco.de/retiolum/supernodes.tar.gz | tar xz -C $TINCDIR/$NETNAME/hosts/ + mkdir hosts + $LOADER http://euer.krebsco.de/retiolum/supernodes.tar.gz | tar xz -C hosts/ else mv $TEMPDIR/hosts ./ fi -- cgit v1.2.3 From 9f86a2913b7a3fedd7789da22c338d0aee2acffe Mon Sep 17 00:00:00 2001 From: Lassulus Date: Sat, 22 Dec 2012 00:06:17 +0100 Subject: added openwrt images for tl-wr703n --- ...-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin | Bin 0 -> 3932160 bytes ...71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin | Bin 0 -> 3538948 bytes retiolum/openwrt/tinc-up | 19 ------------------- retiolum/openwrt/updater | 6 ------ 4 files changed, 25 deletions(-) create mode 100644 minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin create mode 100644 minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin delete mode 100755 retiolum/openwrt/tinc-up delete mode 100755 retiolum/openwrt/updater diff --git a/minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin b/minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin new file mode 100644 index 00000000..8517a305 Binary files /dev/null and b/minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin differ diff --git a/minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin b/minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin new file mode 100644 index 00000000..fe94dadd Binary files /dev/null and b/minikrebs/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin differ diff --git a/retiolum/openwrt/tinc-up b/retiolum/openwrt/tinc-up deleted file mode 100755 index 3b8bb978..00000000 --- a/retiolum/openwrt/tinc-up +++ /dev/null @@ -1,19 +0,0 @@ -# source: krebscode/painload/retiolum/scripts/tinc_setup/tinc-up - -dirname="`dirname "$0"`" - -conf=$dirname/tinc.conf - -name=`sed -n 's|^ *Name *= *\([^ ]*\) *$|\1|p' $conf` - -host=$dirname/hosts/$name - -addr4=`sed -n 's|^ *Subnet *= *\(10[.][^ ]*\) *$|\1|p' $host` -if [ "$addr4" != '' ];then - ifconfig $INTERFACE $addr4 - route add -net 10.243.0.0 netmask 255.255.0.0 dev retiolum -else - addr4=`sed -n 's|^ *Subnet *= *\(42[.][^ ]*\) *$|\1|p' $host` - ifconfig $INTERFACE $addr4 - route add -net 42.0.0.0 netmask 255.0.0.0 dev retiolum -fi diff --git a/retiolum/openwrt/updater b/retiolum/openwrt/updater deleted file mode 100755 index 4dbc7d78..00000000 --- a/retiolum/openwrt/updater +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -cd /etc/tinc/retiolum/hosts -wget http://vpn.miefda.org/hosts.tar.gz -tar xzf hosts.tar.gz -rm hosts.tar.gz -tincd -n retiolum -kHUP -- cgit v1.2.3 From 72d590b239ce422da31c707c91a1fa45a1a9b0ea Mon Sep 17 00:00:00 2001 From: Lassulus Date: Sat, 22 Dec 2012 00:11:17 +0100 Subject: added README for minikrebs images --- minikrebs/README | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 minikrebs/README diff --git a/minikrebs/README b/minikrebs/README new file mode 100644 index 00000000..11d6f527 --- /dev/null +++ b/minikrebs/README @@ -0,0 +1,8 @@ +this are the openwrt images for tl-wr703n. +They include automatic wireless connection. If you want the Krebs to connect to your wlan you need to add your wireless credentials to /etc/wifipw. Syntax is $SSID;$PW +W-Lans can be blacklisted by adding the ssid to /etc/wifiblack + +run infest on the system to get into the retiolum darknet (requires internet) +hostsfiles for tinc can be updated with tinc-update + +the LED will turn off after 60 seconds of working internet connection to save power -- cgit v1.2.3 From 164ff3e48946747fef3b61c4f7dbc143693192c1 Mon Sep 17 00:00:00 2001 From: Lassulus Date: Sat, 22 Dec 2012 01:58:06 +0100 Subject: added ImageBuilder doc and customfiles --- .../ImageBuilder/customfiles/etc/config/network | 17 +++ .../ImageBuilder/customfiles/etc/config/wireless | 18 ++++ minikrebs/ImageBuilder/customfiles/etc/rc.local | 7 ++ minikrebs/ImageBuilder/customfiles/etc/wifiblack | 0 minikrebs/ImageBuilder/customfiles/etc/wifipw | 1 + minikrebs/ImageBuilder/customfiles/usr/bin/aap | 115 +++++++++++++++++++++ .../customfiles/usr/bin/easybox_keygen | 40 +++++++ minikrebs/ImageBuilder/customfiles/usr/bin/infest | 4 + minikrebs/ImageBuilder/customfiles/usr/bin/ledoff | 2 + .../ImageBuilder/customfiles/usr/bin/tinc-update | 4 + minikrebs/ImageBuilder/doc | 2 + 11 files changed, 210 insertions(+) create mode 100644 minikrebs/ImageBuilder/customfiles/etc/config/network create mode 100644 minikrebs/ImageBuilder/customfiles/etc/config/wireless create mode 100644 minikrebs/ImageBuilder/customfiles/etc/rc.local create mode 100644 minikrebs/ImageBuilder/customfiles/etc/wifiblack create mode 100644 minikrebs/ImageBuilder/customfiles/etc/wifipw create mode 100755 minikrebs/ImageBuilder/customfiles/usr/bin/aap create mode 100755 minikrebs/ImageBuilder/customfiles/usr/bin/easybox_keygen create mode 100755 minikrebs/ImageBuilder/customfiles/usr/bin/infest create mode 100755 minikrebs/ImageBuilder/customfiles/usr/bin/ledoff create mode 100755 minikrebs/ImageBuilder/customfiles/usr/bin/tinc-update create mode 100644 minikrebs/ImageBuilder/doc diff --git a/minikrebs/ImageBuilder/customfiles/etc/config/network b/minikrebs/ImageBuilder/customfiles/etc/config/network new file mode 100644 index 00000000..2feb7400 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/etc/config/network @@ -0,0 +1,17 @@ + +config interface 'loopback' + option ifname 'lo' + option proto 'static' + option ipaddr '127.0.0.1' + option netmask '255.0.0.0' + +config interface 'lan' + option ifname 'eth0' + option type 'bridge' + option proto 'static' + option ipaddr '192.168.1.1' + option netmask '255.255.255.0' + +config interface 'wan' + option ifname 'wlan0' + option proto 'dhcp' diff --git a/minikrebs/ImageBuilder/customfiles/etc/config/wireless b/minikrebs/ImageBuilder/customfiles/etc/config/wireless new file mode 100644 index 00000000..d2dc5a37 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/etc/config/wireless @@ -0,0 +1,18 @@ + +config wifi-device 'radio0' + option type 'mac80211' + option hwmode '11ng' + option path 'platform/ar933x_wmac' + option htmode 'HT20' + list ht_capab 'SHORT-GI-20' + list ht_capab 'SHORT-GI-40' + list ht_capab 'RX-STBC1' + list ht_capab 'DSSS_CCK-40' + +config wifi-iface + option device 'radio0' + option network 'wan' + option encryption 'none' + option mode 'sta' + option ssid 'linksys' + diff --git a/minikrebs/ImageBuilder/customfiles/etc/rc.local b/minikrebs/ImageBuilder/customfiles/etc/rc.local new file mode 100644 index 00000000..9b8eb564 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/etc/rc.local @@ -0,0 +1,7 @@ +# Put your custom commands here that should be executed once +# the system init finished. By default this file does nothing. + +tincd -n retiolum 2>/dev/null +aap & + +exit 0 diff --git a/minikrebs/ImageBuilder/customfiles/etc/wifiblack b/minikrebs/ImageBuilder/customfiles/etc/wifiblack new file mode 100644 index 00000000..e69de29b diff --git a/minikrebs/ImageBuilder/customfiles/etc/wifipw b/minikrebs/ImageBuilder/customfiles/etc/wifipw new file mode 100644 index 00000000..d235df78 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/etc/wifipw @@ -0,0 +1 @@ +shack;weissichnichtbinnochneuhierfragmalralf diff --git a/minikrebs/ImageBuilder/customfiles/usr/bin/aap b/minikrebs/ImageBuilder/customfiles/usr/bin/aap new file mode 100755 index 00000000..f9d5cd99 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/usr/bin/aap @@ -0,0 +1,115 @@ +#!/usr/bin/awk -f + +BEGIN { + chan=0; + essid=""; + encr=0; + psk2=0; + psk=0; + i=0; + # find interface - start by finding if in sta mode + while( "uci show wireless" | getline) { + if(/mode=sta/) { + split($0,wl,"."); + iface=wl[2]; + } + } + close("uci show wireless") + "uci get wireless." iface ".device" | getline radio + close("uci get wireless." iface ".device") + system("ifconfig wlan0 up") + for(;;){ + while( "iwlist wlan0 scan" | getline ) { + scan[i++]=$0; + } + close("iwlist wlan0 scan") + for (j=0;j 0) { + "easybox_keygen " mac | getline rkey + close("easybox_keygen " mac) + } + else { + print essid " is encrypted and key not in whitelist"; + continue; + } + } + } + system("uci set wireless." radio ".channel=" channel); + system("uci set wireless." iface ".ssid=" essid); + if (crypt == "none") { + system("uci set wireless." iface ".encryption=none"); + system("uci -q delete wireless." iface ".key"); + } + else { + system("uci set wireless." iface ".key=" rkey); + system("uci set wireless." iface ".encryption=" crypt); + } + system("uci show wireless > /tmp/keepalive"); + system("wifi up"); + while(system("sleep 60; wget -q -T 30 -O /dev/null http://google.com/index.html") == 0) { + system("ledoff") + } + } + else { + # now test for the things we want + # channel + if (/Channel:[0-9]/) { + m=match($0,"Channel"); + if (RSTART > 0) { + s=substr($0,m); + n=match(s,/[0-9]+/); + chan=substr(s,n,RLENGTH) + } + continue; + } + # we don't need else as we break on successful find + if (/^ *ESSID/) { + m=match($0,"\".*\""); + if (RSTART > 0) essid=substr($0,m+1,RLENGTH-2); + continue; + } + if (/^ *Encryption key:on/) { + encr = 1; + continue; + } + if (/^ *IE: IEEE 802.11i\/WPA2/) { + psk2=1; + continue; + } + if (/^ *IE: WPA /) { + psk=1; + continue; + } + } + } + } + } diff --git a/minikrebs/ImageBuilder/customfiles/usr/bin/easybox_keygen b/minikrebs/ImageBuilder/customfiles/usr/bin/easybox_keygen new file mode 100755 index 00000000..e9a9beca --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/usr/bin/easybox_keygen @@ -0,0 +1,40 @@ +#!/bin/sh +# +# easybox_keygen.sh (c) 2012 GPLv3 +# +# www.wotan.cc +# + +MAC=$1 + +# Take the last 2 Bytes of the MAC-Address (0B:EC), and convert it to decimal. + +take5=${MAC:12} +last4=${take5/:/} + +# Fill up to 4 places with zeros, if necessary: +deci=$(printf "%04d" "0x$last4" | sed 's/.*\(....\)/\1/;s/./& /g') +#echo M4: ${deci[@]} +# +# The digits M9 to M12 are just the last digits (9.-12.) of the MAC: +hexi=$(echo ${MAC:12:5} | sed 's/://;s/./& /g') +#echo 'M4 (Hex): ' ${hexi[@]} +# K1 = last byte of (d0 + d1 + h2 + h3) +# K2 = last byte of (h0 + h1 + d2 + d3) +c1=$(printf "%d + %d + %d + %d" ${deci:0:1} ${deci:2:1} 0x${hexi:4:1} 0x${hexi:6:1}) +c2=$(printf "%d + %d + %d + %d" 0x${hexi:0:1} 0x${hexi:2:1} ${deci:4:1} ${deci:6:1}) +K1=$((($c1)%16)) +K2=$((($c2)%16)) +#printf "K1: %x\n" $K1 +#printf "K2: %x\n" $K2 +X1=$((K1^${deci:6:1})) +X2=$((K1^${deci:4:1})) +X3=$((K1^${deci:2:1})) +Y1=$((K2^0x${hexi:2:1})) +Y2=$((K2^0x${hexi:4:1})) +Y3=$((K2^0x${hexi:6:1})) +Z1=$((0x${hexi:4:1}^${deci:6:1})) +Z2=$((0x${hexi:6:1}^${deci:4:1})) +Z3=$((K1^K2)) +printf "%x%x%x%x%x%x%x%x%x\n" $X1 $Y1 $Z1 $X2 $Y2 $Z2 $X3 $Y3 $Z3 | tr a-f A-F + diff --git a/minikrebs/ImageBuilder/customfiles/usr/bin/infest b/minikrebs/ImageBuilder/customfiles/usr/bin/infest new file mode 100755 index 00000000..f1bcc594 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/usr/bin/infest @@ -0,0 +1,4 @@ +#!/bin/sh +printf "enter your tincname:" +read HOSTNAME +curl tinc.krebsco.de | HOSTN=$HOSTNAME sh diff --git a/minikrebs/ImageBuilder/customfiles/usr/bin/ledoff b/minikrebs/ImageBuilder/customfiles/usr/bin/ledoff new file mode 100755 index 00000000..0bc6ec7a --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/usr/bin/ledoff @@ -0,0 +1,2 @@ +#!/bin/sh +echo 0 > /sys/class/leds/tp-link\:blue\:system/brightness diff --git a/minikrebs/ImageBuilder/customfiles/usr/bin/tinc-update b/minikrebs/ImageBuilder/customfiles/usr/bin/tinc-update new file mode 100755 index 00000000..2c6ec432 --- /dev/null +++ b/minikrebs/ImageBuilder/customfiles/usr/bin/tinc-update @@ -0,0 +1,4 @@ +#!/bin/sh +if test -e /etc/tinc/retiolum; then + if ping -c 1 euer.krebsco.de -W 5 &>/dev/null; then (curl http://euer.krebsco.de/retiolum/supernodes.tar.gz | tar xz -C /etc/tinc/retiolum/hosts/);fi +fi diff --git a/minikrebs/ImageBuilder/doc b/minikrebs/ImageBuilder/doc new file mode 100644 index 00000000..f8e9ca3b --- /dev/null +++ b/minikrebs/ImageBuilder/doc @@ -0,0 +1,2 @@ +make command used in image builder. files is the customfiles directory +make image PROFILE=TLWR703 PACKAGES="tinc curl kmod-ipv6 radvd ip wireless-tools block-mount kmod-usb-core kmod-usb2 kmod-usb-storage -kmod-ppp -kmod-pppoe -kmod-pppox -ppp -ppp-mod-pppoe" FILES=files/ -- cgit v1.2.3