入门Web安全需要具备哪些基本技能?
2019-04-17 14:32:08 【

截至到2018年底,我国网民规模已达8.02亿人,互联网极度发达衍生的开放性和安全漏洞带来的风险无处不在,黑客攻击行为越加猖狂,组织性更强,作为一名Linux运维小哥,我也是由原来的“受害者”误打误撞进入Web安全领域。下面是我给大家分享的这几年的学习经验。


入门Web安全需要具备哪些基本技能?


想给网站弹个窗,获取cookie?(java script的基本语法要熟悉吧?)

想获取到网站的用户数据?(MySQL、MSSQL、Oracle、PostgrSQL基本操作命令你要懂吧?)

想通过命令执行漏洞获取服务器信息?(Linux的命令、目录文件信息心里得有数吧?)

想搞清楚自己的网站为啥被人挂马了?(webshell执行原理不能不知道吧?)

...

知识面,决定看到的攻击面有多广。 知识链,决定发动的杀伤链有多深。


一个合格的Web安全测试人员应该具备以下技能:


A. 工具使用能力


工具让每个人都有发现漏洞的机会,但真正掌握工具而不是被工具掌握的人才能成为优秀的白帽子。工欲善其事必先利其器,好的安全测试工具可以帮助白帽子快速、有效的定位到漏洞可能存在的点,同时辅助Web安全测试人员完成漏洞利用(exp)和漏洞证明(poc)。所以,作为一名Web安全测试人员,熟练掌握各种安全测试软件是基本功。


目前web安全测试人员常用的工具有:burpsuite、sqlmap、wireshark、fiddler、avws等,其中burpsuite和sqlmap是漏洞挖掘过程中使用最多也是最高效的神器。


B. 编程能力


只有漏洞原理了然于胸,才能做到随手捡洞。只有自己具备编写工具的能力,才能做到不被工具束缚。


另外,虽然CC ++JAVA 这些编程语言在Web安全测试中都可以写出很多强大的工具(比如业内最知名的工具burpsuite就是使用Java语言编写的) ,但是这些语言对于初学者来说并不友好,要达到上手使用的程度往往需要花费大量的时间和精力,所以我并不推荐新手在初学阶段去学习这些语言。


我建议大家学习python,因为相对而言Python代码简洁,学习难度小,而且Python程序小巧、占用系统资源少、可移植性强。


对于Web安全人员来说,Python就像是普罗米修斯手里的火种,它拥有无限可能。


C. 代码审计能力


厂商现在对于安全的重视,使得很多时候仅凭黑盒测试无法做到全方位的安全评估,这个时候就需要我们具备一定的代码审计能力对项目进行白盒测试。通过分析源代码,有针对性的对一些可能存在漏洞的点进行审计,实现高效精准测试。


另外,很多厂商的生产环境都会使用一些开源服务,当挖掘漏洞过程中遇到瓶颈时,审计这些开源服务往往也是一个突破口。


D. 洞察能力


Web安全是一个需要不断学习的技术,Web安全测试人员要与时俱进,时刻关注最新漏洞动态。


很多时候一些影响力大的漏洞都是从国外披露的,所以我们也应该具备随时获取全球Web安全资讯(科学上网和英语基础)的能力。


E. 懂法守法


任何未经授权的渗透测试行为都可以构成犯罪,作为一名Web安全测试人员,必须懂得用法律保护自己,同时也保证不触犯法律。


F. 报告文档编写能力


懂得如何写出一份完整有效的漏洞报告,可以在节省你和厂商的时间同时也提高双方的工作效率。



这里针对上述各种能力,我汇总了一个思维导图,学习资源的具体获取方式都可以在搜索引擎中获取到。当然,要是有一些靠谱的Web安全工程师带是最好的。



】【打印关闭】 【返回顶部
上一篇IDPS是什么?如何部署和操作IDPS? 下一篇如何防御ddos等流量攻击