2013-10-17 341 views
-1

我試圖編譯下面的攻擊:http://code.google.com/p/rootkit-for-linux/source/browse/trunk/vmsplice.c?spec=svn2&r=2C代碼編譯錯誤

然而,在CentOS編譯時,我得到以下錯誤5.4版(最終)

$ GCC local.c /tmp目錄/ccOO1kwW.o:在功能main': local.c:(.text+0x21a): undefined reference to loader_end ' local.c :(文字+ 0x21f):未定義的引用loader_start' local.c:(.text+0x264): undefined reference to loader_start' collect2:LD返回1退出狀態

+0

如果你看一下樹幹,有一個彙編文件,可能定義了'loader_start'功能。 – 2013-10-17 00:32:22

回答

1

我的猜測是你試圖編譯文件本身。嘗試下載整個源代碼列表,並使用這個Makefile他們提供:

http://code.google.com/p/rootkit-for-linux/source/browse/trunk/Makefile?r=2

obj-m := test.o 
test-y = main.o 


KERNELDIR ?= /lib/modules/`uname -r`/build 
PWD := $(shell pwd) 


default: 
     $(MAKE) -C $(KERNELDIR) M=$(PWD) modules 

r3: clean 
     gcc -o rookit -g -D_DEBUG_ vmsplice.c asm.S 
     objdump -d rookit > rookit.s 

test: clean 
     gcc -o test -g -D_TEST_ asm.S test.c 
     objdump -d test > test.s 

clean: 
     rm -rf *.o *.ko 
+0

是的,那裏有一些你可能需要鏈接的彙編文件。 – SevenBits