mirror of
https://github.com/h3xduck/TripleCross.git
synced 2025-12-16 07:13:07 +08:00
96 lines
2.2 KiB
Bash
Executable File
96 lines
2.2 KiB
Bash
Executable File
#!/bin/bash
|
|
#set -x
|
|
|
|
## Constants declaration
|
|
#The current directory full path
|
|
declare -r DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
|
#The location of the file where to write the full rootkit package
|
|
declare -r OUTPUTDIR="/home/osboxes/TFG/apps/"
|
|
#A variable to determine whether to silence output of internal commands
|
|
declare firstvar=$1
|
|
|
|
RED='\033[0;31m'
|
|
BLU='\033[0;34m'
|
|
GRN='\033[0;32m'
|
|
NC='\033[0m' # No Color
|
|
|
|
## A simple function to wait for input
|
|
waitForInput(){
|
|
if [ "$press_key_to_continue" = true ]; then
|
|
echo "Completed. Press any key to continue"
|
|
while [ true ] ;
|
|
do
|
|
read -t 3 -n 1
|
|
if [ $? = 0 ] ; then
|
|
return ;
|
|
fi
|
|
done
|
|
fi
|
|
}
|
|
|
|
#A simple function to silence output
|
|
quiet(){
|
|
if [ "$firstvar" == "quiet" ]; then
|
|
"$@" > /dev/null
|
|
else
|
|
"$@"
|
|
fi
|
|
}
|
|
|
|
#Start of script
|
|
echo "*******************************************************\n"
|
|
echo "************************* TFG *************************\n"
|
|
echo "*******************************************************\n"
|
|
echo "***************** Marcos Sánchez Bajo *****************\n"
|
|
echo "*******************************************************\n"
|
|
echo ""
|
|
|
|
if [ "${PWD##*/}" != "helpers" ]; then
|
|
echo -e "${RED}This file should be launched from the /helpers directory${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
#First compile helpers
|
|
echo -e "${BLU}Compiling helper programs${NC}"
|
|
sleep 1
|
|
quiet make clean
|
|
quiet make
|
|
echo -e "${GRN}Finished${NC}"
|
|
|
|
#Next compile client
|
|
echo -e "${BLU}Compiling client programs${NC}"
|
|
sleep 1
|
|
cd ../client
|
|
quiet make clean
|
|
quiet make
|
|
echo -e "${GRN}Finished${NC}"
|
|
|
|
echo -e "${BLU}Compiling rootkit${NC}"
|
|
sleep 1
|
|
cd ../
|
|
quiet make clean
|
|
quiet make
|
|
echo -e "${GRN}Finished${NC}"
|
|
|
|
echo -e "${BLU}Compiling TC hook${NC}"
|
|
sleep 1
|
|
quiet make tckit
|
|
echo -e "${GRN}Finished${NC}"
|
|
|
|
echo -e "${BLU}Packaging binary results${NC}"
|
|
rm $OUTPUTDIR/*
|
|
cp -a bin/kit $OUTPUTDIR
|
|
cp -a client/injector $OUTPUTDIR
|
|
cp -a helpers/simple_open $OUTPUTDIR
|
|
cp -a helpers/simple_timer $OUTPUTDIR
|
|
cp -a helpers/execve_hijack $OUTPUTDIR
|
|
cp -a helpers/injection_lib.so $OUTPUTDIR
|
|
cp -a tc.o $OUTPUTDIR
|
|
cp -a client/mycert.pem $OUTPUTDIR
|
|
cp -a helpers/deployer.sh $OUTPUTDIR
|
|
echo -e "${GRN}Finished${NC}"
|
|
|
|
|
|
|
|
|