

我们可以对这个应用开端进行一些简单的┞缝查,包含:
- 寻找已经被爆出的马脚
- 用burp爬取应用
- 列举常见的路径
- 查看可获取的页面的源码
荣幸的是,我在主页的源码中发清楚明了 一个包含资产目次清单的链接。

Oracle Advanced Support体系SQL注入马脚分析
对于像如许一个未知的应用,目次列表是很有效的,它给我们了一些欲望去发明一些很有趣 但不该该被拜访到的器械 。不雅不其然的在搜寻每个目次之后,我有时发清楚明了以下的javascript文件:

让它变得更合适浏览一皓

在Web渗入渗出测试中,个一一个我爱好的并且经常忽视的工作是查找应用中的javascript文件, 并且看看他们是否支撑任何POST 或者是GET请求。
我们已经发清楚明了一个叫做sql-service.js的javascript文件,这让我急地点脑海中进步起警醒来。这个文件包含4个匿名函数个中三个t.getJSON办法的GET要乞降一个t.post办法的POST请求。这些函数包含如下一些变量:
- getSqlData
- createNamedSql
- getNamedSqlList
- getSqlNameList
在这篇文┞仿的残剩部分,我将说起匿名函数中的变量。
每个函数的根节点都位于/rest/data路径下。
接下来是将他们拆分之后的请求:
固然我之前大年夜没听过Oracle Advanced Support,然则当我很快的google完之后,我懂得到它似乎是一个许可oracle的技巧支撑在外部登入,并且在oracle体系情况下进行任何技巧支撑须要的操作的办事。有了这个信息之后, 我们可以将现有的web应用测试与它结合起来。
- GET /rest/data/sql
- POST /rest/data/sql
- GET /rest/data/sql_list
- GET /rest/data/sql_name_list
有了这些之后,开端拿出我最爱好的代劳对象:burp,看看会产生什么!
犁庭扫穴
我起首测验测验的昵啻自于getSqlData函数路径是/rest/data/sql的GET请求。我们也经由过程不雅察javascript发明这个请求须要附加一个参数,让我们在结尾加上”test”.
- HTTP Request:
- GET /rest/data/sql/test HTTP/1.1 Host: host Connection: close Accept: application/json;charset=UTF-8 Accept-Encoding: gzip, deflate, sdch Accept-Language: en-US,en;q=0.8 Content-Type: application/json Content-Length: 0
- HTTP Response:
- HTTP/1.1 404 Not Found Content-Type: application/json Content-Length: 20 Connection: close Named SQL not found.
当我们把”test”加到请求url的末尾,办事器返回了404。同时办事器也返回了如许一个信息:Named SQL not found。如不雅我们测验测验”test”之外的其他字符串,获得了同样的返回信息。我们把这个请求发到Burp 的 intruder模块,计算试图过一个目次列表字典来列举潜在的参数名,看看是否能获得除了404之外的返回。然则有一个更简单的办法来找到合适的参数名。如不雅我们再次查看javascript,你会发明函数的名称给我们一些有价值的信息。我们在以下函数中发清楚明了两个GET请求:getNamedSqlList 和 getSqlNameList.。我们刚才的请求返回的缺点信息是 Named SQL not found error。让我们测验测验针对getNamedSqlList函数的GET请求。
- HTTP Request:
- GET /rest/data/sql_list HTTP/1.1
- Host: host
- Connection: close
推荐阅读
跟着科技的进步,大年夜数据大年夜科学前沿逐渐深刻到各行业。2017年中国的大年夜数据行业有什么新动态?大年夜数据行颐魅整体市场范围若何?大年夜数据行业前景若何?若何助力企业成长?今日的比格数据,我们来一路解读>>>详细阅读
本文标题:Oracle Advanced Support系统SQL注入漏洞挖掘经验分享
地址:http://www.17bianji.com/lsqh/37236.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示