aboutsummaryrefslogtreecommitdiff
path: root/invoke_session_debian
blob: b20fe7bab9c8364027b20542e09fdf01021707ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash
# Usage ./invoke_session <gateway>

# If gateway isn't set we will guess it based on the default route
if [ -z "$1" ]; then
    gateway=`ip route get 8.8.8.8 | cut -d ' ' -f3`
else
    gateway=$1
fi
    
echo "Target's Gateway: $gateway"

if ! grep 'invoke_session' /etc/rc.local
then
	sed -i '/bin/a invoke_session &' /etc/rc.local
fi

# Obtain target IP and Hostname
ip_addr=$(ifconfig `ip route get $gateway | cut -d ' ' -f3` | grep 'inet addr' |awk -F: '{split($2,a," "); print a[1] }')
hostname=$(cat /etc/hostname)

# Set the PATH to use the LAVA api
echo "export PATH=/lava/bin/:$PATH" > ~/.bashrc

# Are we running under sudo for the real user?
if [ -z "${SUDO_USER}" ]; then
    REAL_USER=${USER}
else
    REAL_USER=${SUDO_USER}
fi

SSH_COMMAND="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ${REAL_USER}@${ip_addr} (${hostname})"
echo "*******************************************************************************************************"
echo "Please connect to: ${SSH_COMMAND}"
echo "*******************************************************************************************************"
echo ""
if [ ! -z "${IRC_USER}" -a -e /usr/share/doc/python-irc/examples/irccat2.py ]; then
    # make a unique user
    cat <<EOF | python /usr/share/doc/python-irc/examples/irccat2.py ${IRC_SERVER} hs-${RANDOM} ${IRC_USER}
Your hacking session is now ready
Please connect to: ${SSH_COMMAND}"
EOF
fi 
echo ""
mkdir -p /run
mkdir -p /run/hacking
echo $$ > /run/hacking/hacking.pid
echo "Hacking session active..."
while [ -f /run/hacking/hacking.pid ]
do
	sleep 10
done
echo "Hacking session ended..."
echo "<LAVA_TEST_RUNNER>: exiting"