查看: 9916|回复: 1

不用CMD,直接调用EXP溢出提权及原理分析过程

[复制链接]
  • TA的每日心情
    开心
    2015-9-8 13:06
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2012-6-11 08:09:29 | 显示全部楼层 |阅读模式
    1.提权时遇到的问题

    2.程序运行与参数的调用
    3.跳过限制的方法
    1.提权时遇到的问题
    想必大家在提权时遇到过这种问题,就是找到一个可读可写目录,上传个CMD调用CMD可以执行一些DOS命令,例如ver ,whoami ,systeminfo .如果net ,netstat ,tasklist等没有限制也可执行例如net user,net start,netstat -ano等命令。
    这时我们可能第一个想到的是上传PR,IIS等提权杀器本地溢出提权,于是乎就上传杀器到上传CMD的目录准备提权,我们以经典的ASP.NET木马(ASPXSpy2)举例,假设C:\RECYCLER\为一个可读可写目录.
    我们使用shell的CMD命令功能,需要填两个地方,一个是CMD的路径,这个填在上面的文本输入的地方,下面我们看到的是/c set可以看到是一个set命令。

    于是我们在上面CMD路径那里填写C:\RECYCLER\CMD.exe,在下面将set改为ver点击执行即可看到回显,表明系统的版本.于是我们再把ver换成EXP的路径进行溢出,例如PR,我们在下面把ver改成C:\RECYCLER\pr.exe,然后点击运行,情况发生了,没有回显。即使再改成C:\RECYCLER\pr.exe “net user 90sec 90sec /add”执行还是没有回显,为什么呢???难道是打补丁了???我们使用systeminfo命令发现并没有KB952004这个补丁啊.说明PR是可以溢出的啊,为什么没有回显呢???我们使用net user命令发现并没有加上90sec这个账号。这是为什么呢???可能有人会说这个目录没有可执行权限,但是我们的CMD可以运行啊,说明不是没有可执行权限的问题.这时可能大家就会换巴西烤肉,IIS等进行尝试,但是还是一样的情况。可能大家还会说是net删了或者限制权限了,我们用自己上传的net进行加账号,还是没回显,用netuser查看,表明没有加上账号。我们再使用ver命令,还是没有回显,将结果回显到一个文本发现没有产生这个文本,说明连最简单的ver命令都无法执行.
    问题产生了:可读可写可执行目录不能运行程序!
    (具体问题应该是第三方软件的捣乱)


    2.程序运行与参数的调用
    我们来看下CMD是如何运行参数的,以SU本地提权为例我们可以发现在下面有 命 令:cmd /c net user hacker$ hacker /add & net localgroup administrators hacker$ /add
    我们分析下这条命令,可以发现cmd 是system32目录下的cmd,而net user hacker$ hacker /add & net localgroup administrators hacker$ /add则为我们的命令,我们可以发现中间多了个/c和一些空格,这是为什么呢?其实才cmd /c “命令”即是cmd运行的参数的调用方式,我们使用ASPXSpy是在cmd命令执行那里可以发现命令那里我们通常是改了那个set作为命令,却忽略了前面的/c和空格,按照系统执行命令的参数原理可以想到是上面的cmd路径+空格+我们下面的命令即C:\RECYCLER\cmd.exe /c set,这样是符合运行机理的.我们在分析下pr的运行方式pr.exe “命令”可以发现pr和命令之间没有/c,但是中间有个空格.这样我们就可以想办法直接调用PR进行带参数溢出.
    3.跳过限制的方法



    分析一下,CMD执行一条命令,即程序(CMD)的路径+空格(ASPXSpy2会帮你补上这个空格)+/c “命令”,也就是说我们不需要输入程序与命令之间的空格.然后我们这样做一下,在CMD路径那里输入PR的路径C:\RECYCLER\pr.exe,然后再命令那里把/c set都清除掉输入”net user 90sec 90sec /add”。我们来分析下ASPXSpy2的运行。它会以C:\RECYCLER\pr.exe “net user 90sec 90sec /add”来运行,因为它会把上面CMD的路径后面加上一个空格然后加上我们下面的参数带入系统运行.这样我们C:\RECYCLER\pr.exe后面的空格就不需要输入就可以,因为ASPXSpy2会帮我们补上这个空格我们可以直接在CMD路径那里输入EXP的路径,在命令那里输入”参数”即可运行EXP.这样就可以跳过某些第三方方软件的限制(即我们第一部分遇到的问题).
    思路扩展:我们同样可以使用此方法跳过限制运行其他EXP,以及lcx,nc等程序.
    回复

    使用道具 举报

    该用户从未签到

    发表于 2012-7-14 20:00:05 | 显示全部楼层
    网站只支持asp,使用上面的方法依然没有回显 ,该如何继续  求助
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    指导单位

    江苏省公安厅

    江苏省通信管理局

    浙江省台州刑侦支队

    DEFCON GROUP 86025

    旗下站点

    邮箱系统

    应急响应中心

    红盟安全

    联系我们

    官方QQ群:112851260

    官方邮箱:security#ihonker.org(#改成@)

    官方核心成员

    Archiver|手机版|小黑屋| ( 苏ICP备2021031567号 )

    GMT+8, 2024-11-1 08:34 , Processed in 0.025131 second(s), 12 queries , Gzip On, MemCache On.

    Powered by ihonker.com

    Copyright © 2015-现在.

  • 返回顶部