源碼地址:https://files.cnblogs.com/files/ssooking/60cms.ziphtml
運行60cms目錄下的Netbox.exe便可開啓Asp Web服務,默認端口80web
環境搭建完畢以後便可訪問主頁數據庫
首先,咱們分析 login.aspbash
在admin目錄下找到login.asp,能夠發現登陸頁面的兩個Cookies字段名分別爲 cmsname 和 cmsidcookie
繼續往下看session
能夠看到,網頁會把輸入的管理員賬號和管理員ID分別賦值給cmsname和cmsid這兩個cookies值,若是密碼正確就會跳轉到後臺首頁,並添加上述的兩個cookies值.spa
咱們再來看一下後臺首頁(index.asp)的源代碼,發現頭部引用了check.asp文件3d
這個文件的做用應該就是對登錄操做進行驗證,咱們跟蹤分析其中的代碼。htm
<!--#include file="../inc/md5.asp"--><% '判斷用戶是否登錄 if session("cmsname")="" and instr(CStr(Request.ServerVariables("SCRIPT_NAME")),site_install&AdminPath&"/login.asp")=0 then if request.Cookies("cmsname")="" then response.Redirect(site_install&AdminPath&"/login.asp") elseif Session("admin_id") =null then Response.Write("<script>alert('登錄超時!');parent.location = '"&site_install&AdminPath&"/login.asp';</script>") else session("cmsname")=request.Cookies("cmsname") session("cmsid")=request.Cookies("cmsid") end if end if %>
這裏能夠看到,網頁雖然有驗證用戶登陸狀態,但只僅僅驗證了Cookies的內容,只要兩個Cookies的內容都對得上,就能訪問後臺首頁。咱們查看data目錄下的數據庫文件,發現60cms的默認管理員爲admin,默認管理員ID爲1blog
所以咱們只要根據這兩個信息僞造Cookies,便可實現越權訪問後臺。
在firebug中分別添加兩個cookie:cmsname,cmsid。
注意這裏的日期必定要修改超過當前時間,不然Cookies沒法添加
這樣就添加好了cookie
此時咱們訪問http://localhost/admin則能夠直接以admin身份進入管理後臺
參考文章:
http://www.freebuf.com/articles/web/149232.html