近期在处理接口越权漏洞的问题,在前期漏洞测试、调研的时候发现部分“list”的查询功能的越权漏洞可通过一些特殊技巧来获取更多的数据、扩大漏洞影响。
打码比较严重,请见谅。
首先访问接口发现可越权获取数据。OK,今日KPI稳了。
看着群里大佬又再聊在上海哪哪哪买了房子,不禁眼睛一酸。又重新审视了下这个漏洞,好像只有10条,怎么扩大下漏洞危害呢?
仔细看了下数据包,一个total字段告诉我并不简单。
开始考虑“list”页面的Fuzz手段。
Fuzz的通用手段,那就是猜参数了,响应包中的字段可能就是参数,那就补上试试。
发现响应包中存在id字段,通过添加参数成功获取到对应的数据。
但是有个问题,假如ID是UUID格式,无法遍历,那这样的话影响并没有变大。
继续看
发现数据包中存在pages字段,看这数字大概率是这个接口功能设计时如下:
没毛病,可通过多种途径获取全量数据,明天的KPI也稳了。
通过上面的例子思考了下“list”这种页面的套路,举一反三。
在日常中做Django开发做分页的时候,一般分为两种:
pages、pageNo、pageNum、page_num、size、length、total、totalRowNum、totalPage、page_size、pageSize、pageCount、pageIndex、pageSizestartIndex 、limitSize、prePage、nextPage、isFirstPage、isLastPage、currentPage、hasPreviousPage、hasNextPage、navigatePages、navigatepageNums、navigateFirstPage、navigateLastPage
具体形式可常规 id=1
类型也可json类型,根据实际情况变通。
{"pages":2, "pageNo":2, "pageNum":20, "page_num":20, "size":20, "length":20, "total":100, "totalRowNum":100, "totalPage":5, "page_size":2, "pageSize":2, "pageCount":20, "pageIndex":2, "pageSizestartIndex":2, "prePage":2, "nextPage":3, "isFirstPage":false, "isLastPage":false, "currentPage":2, "hasPreviousPage":true, "hasNextPage":true, "navigatePages":[2,3], "navigatepageNums":[2,3], "navigateFirstPage":2, "navigateLastPage":10}
limit、limitSize、startRow、endRow、currentIndex、offSet
具体形式
{"limit":10, "limitSize":20, "startRow":2, "endRow":5, "currentIndex":2, "offSet":5}
byId、byid、by_id、byOrderId、ById、ByUserId、id、number
具体形式
常规形式:
byId=1、byid=1、by_id=1、byOrderId=1、ById=1、ByUserId=1、id=1、number=1
Json形式:
{"byId":1, "byid":1, "by_id":1, "byOrderId":1, "ById":1, "ByUserId":1, "id":1, "number":1}
apiVersion、version、channel、type
具体形式
apiVersion=1.0.0、version=1.0、channel=H5、type=wx
以上只是列举一些常用的,自己可私下收集作为字典使用。
说完参数,那说下接口的问题。如果接口找不到,那参数自然也是没啥用武之地了。
我这里列举下常见的,大家自行收集。
这个也需要根据实际场景来,比如有个接口为 api/user/list
,那么可进行的变形:
- api/user/query
- api/user/info
- api/admin/userQuery
- api/admin/userList
# 至于命名是驼峰还是下划线还是其他,根据实际场景变通。
- api/user/listV1
- api/user/listV2
- api/user/listv1
- api/user/listv2
- api/user/listOne
- api/user/listTwo
在我写完文章,准备上传到图床时,我大意了啊,没有闪开。
原本添加ssl是为了安全,现在却让本不富裕的我雪上加霜,可能不久的将来blog就关站了。(疯狂暗示富二代赶紧打赏)
七某云,我劝你耗子尾汁,好好反省,尽快把我的账单清掉!!!