挖洞一定要去实战,不能只在漏洞环境复现漏洞,实战和环境是不一样的。实战环境的选择:
漏洞盒子:新人建议首先去寻找漏洞和挖洞,漏洞盒子接受大多数互联网漏洞,无论该单位是否在盒子上面注册过,漏洞审核相对容易通过。
补天:分为公益SRC和专属SRC,补天的审核较为严格,且通常只接受在补天注册的厂商的漏洞好大中型厂商漏洞,其他小站漏洞通常审核不通过。再熟悉漏洞盒子挖洞后,建议去补天挖洞,先挖公益SRC,再去挖专属SRC(给现金奖励)
各大互联网SRC,能够在补天专属SRC挖洞,基本可以去各个互联网SRC挖洞了,无论大小厂的SRC都可以尝试。
掌握利用简单、危害高的逻辑漏洞 常见的简单高危漏洞,提交漏洞要制造出高伤害:
竞争条件漏洞(并发抽奖、领取、提现等)
水平越权:当一个公司用户量越大,越权造成的用户数据泄露越多,对甲方的危害极大。注意提交漏洞时,可以遍历一下泄露用户数量的上线,有时候一个简单的越权,泄露几百万用户信息,但切不可拖数据(犯罪),遍历统计上限和样本即可。
各种刷量的逻辑漏洞:例如电商的抢优惠卷,社区的刷点赞、人气、视频的刷播放量等。
测试逻辑漏洞是,注意Response
返回包中的信息,有些Response
返回包的参数被篡改后,会进入下一步逻辑流程,并使用被篡改的参数在下一步流程提交。
学习前端跨域漏洞:JSONP劫持、CORS、CSP等 面试过不少年轻的白帽子,不熟悉前端跨域漏洞。在不少互联网公司JSONP劫持是常见的漏洞,建议大家要学会前端漏洞挖掘和基础知识。
提交漏洞要做出高危害 几个例子:
SSRF:内网应用越多,危害越大。提交漏洞不要只扫描一下内网访问多个系统就提交了,建议拿下一个内网应用的权限,内网应用通常漏洞多,弱口令多,造成高危害后提交。
水平越权:上面说过了,遍历出影响的用户量,如造成用户数据泄露或篡改,遍历泄露的用户数据量、可篡改量。
XSS:能打到几个账号的Cookie并登录最好,或接收到后台的cookie登录后台,将漏洞尽可能升级其影响范围。
其他漏洞类似,尽可能做出高危害和对业务的影响。
要多挖APP漏洞,移动互联网时代,很多互联网公司90%以上的流量在APP端。
渗透人员要学会代码层如果修复漏洞,尽量细化到用哪个函数(会攻击也会防御) 例如:指导研发修复要细化到修复漏洞的函数和示例代码,后端用函数,前端过滤为了减少后端服务器的计算压力。
代码层如何修复xss漏洞:后端:在html输出用哪个函数过滤,在JavaScript中输出,用哪个函数过滤等;前端对输入做哪些过滤。
代码层如何修复SQL注入漏洞:后端PHP代码用哪个函数,JAVA代码怎么做。前端对用户输入做哪些过滤。
水平越权的修复:校验用户Session,不能只校验uid等等。
其他漏洞修复类似,不要只提一句话修复文字,最好能够细化到代码层的实现,或者逻辑的设计,针对逻辑漏洞,说明逻辑,或者能画出逻辑流程图和文字更好,方便产品经理和开发理解。
甲方安全人员必须知道公司是怎么赚钱的、怎么赢利的,这样才能够知道直接影响公司利益的业务系统、部门人员,知道这些才是重要的,提交漏洞要优先和能够赢利的业务挂钩,这样安全需求和修复漏洞更能够受到重视。可惜不少甲方安全工程师,不熟悉公司业务,不知道公司利润的来源,支持业务的生产系统和各个部门人员。
三、熟悉渗透之后的4个技术方向
熟悉渗透之后的4个技术方向:安全开发、Android逆向、安全产品运维、业务风控。建议:优先安全开发和Android逆向。
当熟悉渗透之后,比较容易上手的两个技术方向是:安全开发、Android逆向。建议渗透人员不能只会挖Web漏洞,熟悉之后,学习Python开发、PHP开发(含代码审计)。也可以学Android逆向,能够逆向、修改、分析Android APP。做到:渗透+安全开发,或者 渗透+Android逆向。
安全运维和业务风控(风控引擎、大数据、AI、机器学习、黑灰产羊毛党对抗等)这些需要有生产环境才能够实战,建议工作之后找机会学习。在有足够的用户量、流量、黑灰产对抗环境中,才能够实战成长。
好文推荐