源码地址:https://files.cnblogs.com/files/ssooking/60cms.zip

运行60cms目录下的Netbox.exe即可开启Asp Web服务,默认端口80

环境搭建完毕之后即可访问主页

1.漏洞分析

首先,我们分析 login.asp

  在admin目录下找到login.asp,可以发现登录页面的两个Cookies字段名分别为 cmsname 和 cmsid

继续往下看

  可以看到,网页会把输入的管理员帐号和管理员ID分别赋值给cmsname和cmsid这两个cookies值,如果密码正确就会跳转到后台首页,并添加上述的两个cookies值.

  我们再来看一下后台首页(index.asp)的源代码,发现头部引用了check.asp文件

  这个文件的作用应该就是对登陆操作进行验证,我们跟踪分析其中的代码。

<!--#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为1

  因此我们只要根据这两个信息伪造Cookies,即可实现越权访问后台。

2.漏洞利用

在firebug中分别添加两个cookie:cmsname,cmsid。

注意这里的日期一定要修改超过当前时间,否则Cookies无法添加

这样就添加好了cookie

此时我们访问http://localhost/admin则可以直接以admin身份进入管理后台

参考文章:

http://www.freebuf.com/articles/web/149232.html

最新文章

  1. 利用wikipedia 的API实现对其内容的查询
  2. swift 构建类
  3. CURL函数的GET和POST方式的两种写法(实现ajax跨域调用)
  4. springmvc 表单字段list提交问题
  5. chrome(谷歌浏览器)老是提示此文件可能损害计算机
  6. Script 语言的简单练习题 乘法口诀
  7. fancybox iframe 刷新父页面(项目经验)
  8. 阿里云产品介绍(一):云服务器ECS
  9. BZOJ 2115 Xor(抑或值最大路径)
  10. NGUI中的Tween的委托使用
  11. 多态 与 鸭子类型 duck duck duck
  12. [译]ABP vNext微服务演示,项目状态和路线图
  13. Linux定时器crontab的使用
  14. 价值 1500 美元的 iPhone 值得买吗
  15. Sql Server 统计当天数据
  16. 127.0.0.1和0.0.0.0和本机IP的区别
  17. Python - TypeError: unicode argument expected, got &#39;str&#39;
  18. HDU 4508 湫湫系列故事——减肥记I
  19. 海量数据处理面试题(2) 将用户的query按出现频度排序
  20. Python模块之: configobj(转)

热门文章

  1. UVA 1592 DataBase
  2. Django之路由
  3. SQL Server中的标识列
  4. 纯几何题 --- UVA - 11646 Athletics Track
  5. 主机ssh升级到6.7以上版本后,使用jsch jar包ssh连接不上报Algorithm negotiation fail问题的解决办法
  6. SpringMVC框架简介
  7. vue使用element-ui的el-input监听不了回车事件
  8. Selenium Java环境配置
  9. 6、js初识
  10. Linux压力测试工具stress的参数详解