网络安全 频道

Serv-U7 提权的经验精华

    一,su7是提权有几种方式?

    有两种形式去干掉su7。
    1>,登陆管理员控制台的页面
    ==>获取OrganizationId,用于添加用户
    ==>获取全局用户的“下一个新用户ID”
    ==>添加用户 
    ==>添加用户的权限 or 添加全局用户权限
    ==>用户登陆
    ==>执行系统命令添加系统账户。

    2>,登陆管理员控制台页面
    ==>基本WEB客户端
    ==>来到serv-u的目录下--users--Global user目录 
    ==>上传一个你已经定义好的用户文件
    ==>用户登陆
    ==>执行系统命令添加系统账户
    而本文件使用了第一种方法。

    二,提权的原理?

    Su7的管理平台是http的,很先进。
    抓包,分析,发现了以下路程是可以利用的。 
    1.管理员从管理控制台打开web页面时,是不需要验证密码的。
    2.管理员如果用某URL打开web页面时,虽然需要输入密码,但是无论输入什么,都可以进入。“/?   Session=39893&Language=zh,CN&LocalAdmin=1”
    3.管理员可以添加用户有两种,一种是全局用户,一种是某个域下的用户。而权限设置也是两种,一种是全局,一种是针对用户。
    4.管理员添加了用户的这个包和设置权限这个包,是分开的。
    所以,我可以抓包然后转换成php的socket连接post出去。
    最后在用经典的ftp登陆,exec命令。达到提权。
    在写php的过程中,遇到很多问题,比如函数不会用等等(—_—!以前没学过php),感谢“云舒牛”帮忙。。。
    在分析包的流程,发现了一些特征,服务器返回的数据,全是以xml格式发来的。而在数据传输的过程中,设计的很经典。
    Su7也有自己的数据库,他也会自己生成一个id。
    这个ID是随机的,在你创建用户时,会先请求服务器生成一个,生成好后,修改该id的用户名,密码等。
    这很像oracle的insert手段。

    写工具的过程中,遇到很多麻烦,最大的麻烦就是这个ID问题,后来分析出来了。 
    添加权限时,也是可以利用这个ID的。
    于是工具一共连接了6次服务器,这几次分别是:
    1.用来登陆平台,使用那个输入任何密码都可以登陆的页面地址。返回一个sessionid,这个sessionid在以后的包都用到了。
    2.获取OrganizationId,用于添加用户
    3.用来请求一个用户ID。
    4.修改该ID的登陆用户名,密码。
    5.修改该ID的权限,加c盘的写删执行等。
    6.这次连接是做坏事的,使用前面添加的用户执行系统命令。

0
相关文章