软件测试与渗透测试那个工作有前途
就个人工作而言,我更倾向 软件测试高级工程师。年薪必须的
其实渗透测试工程师也不是没前途,你要做到资深级别,年薪就来了
但是客观上评价,目前最好的还是软件测试工程师
软件测试工程师这个行业有以下特点
收入差距极大,有月薪四五千的黑盒测试工程师,也有年薪几十万的资深测试工程师
技术差距极大,有只会鼠标点点点的手工测试人员,也有精通程序代码的资深测试人员
工作内容差距极大,有人每天点点鼠标,测测XXX信息管理系统,有人测复杂的金融业务,有人写测试工具,有人测服务器、中间件、测socket、测高并发,有人搭建测试平台
不同岗位间技术壁垒严重,比如你让一个黑盒手工测试人员去看两个安全测试人员做渗透测试,他很可能完全看不懂这些人在干啥。如果你给一个网站手工/自动化测试人员做一份数据库测试人员的笔试题(考具体数据库的SQL、函数、存储过程),很可能他要交白卷。当然反过来说,要从技术型测试岗位转行去做黑盒手工测试人员是毫无壁垒的,但一般不会有人这么转。。。。
入行门槛低,一个其他专业的无关人员通过三个月简单培训,即可掌握普通的黑盒测试方法,成为一名软件测试工程师,拿3-5k薪水
学习渗透测试,最快能多少时间?是自学好点还是报个班?
关于自学好还是报班好?
其实没有好坏,需要根据自己情况选择。
先来说说线下培训班的优势:
1. 能给你提供沉浸式的学习环境;2. 能相对系统的学习渗透知识;3. 遇到问题有老师解惑,有同学探讨;4. 还能推荐就业。
优势很明显,但弊端同样存在:
1. 学费昂贵,动辄一万起;2. 容易遇到坑
如果想参加线下培训,建议慎重选择,最好实地了解。
说完线下培训,我们再来说说“闭门造车”,自学是否行得通。
有人说,1. 自学不系统,容易走弯路;2. 自学时间长,不知道学到什么时候是个头;3. 遇到问题没有交流探讨的人,很容易出现气馁心理,打击自信心。
以上这些情况,知了姐还是比较赞同的,自学需要一定的自制力和意志力,不能三天打鱼两天晒网,要每天坚持不断地学习,还得有效率。
自学的优势还是比较明显的:1. 几乎零成本学习,省钱,你只需要一台能上网的电脑;2. 能按照自己的需求,安排学习路线;3. 时间自由,地点自由,一切凭兴趣驱动。
如果是自学能力强的同学,且对渗透测试充满热情,知了姐倒是建议走自学渗透这条路,但这条路注定充满孤独,一定要挺住。
渗透测试多长时间能学会?
网络安全工程师都要学习什么
网络安全工程师学习内容:
1、计算机应用、计算机网络、通信、信息安全等相关专业本科学历,三年以上网络安全领域工作经验;
2、精通网络安全技术:包括端口、服务漏洞扫描、程序漏洞分析检测、权限管理、入侵和攻击分析追踪、网站渗透、病毒木马防范等。
基本技能和个人品质
1.具备强大的IT技术基础,包括对软件、硬件及网络技术的了解。
2.注重细节,具备分析和识别数据趋势的能力。
3.具备在压力下工作的能力。
4.具备与各种人员进行有效沟通的能力。
5.了解保密的重要性和必要性,清楚与此有关的法律条文。
6.能够运用逻辑推理能力来识别IT系统的优缺点。
7.了解黑客以及网络犯罪的各种手段。
扩展资料:
网络安全工程师的职责一般取决于他的特定职位,总的来说,包括以下几点:
1.在软件系统、网络和数据中心的开发阶段,与其他计算机安全人员合作执行公司内部安全措施。
2.调查公司软件及硬件方面的缺陷及安全风险。
3.找出一个能够保护整个公司IT设施的最佳方案。
4.构建防火墙。
5.不断监测公司网络的攻击和入侵情况。
6.当发现缺陷时,消除网络或系统中存在的漏洞。
7.必要时,查出入侵者并通知执法机构。
如何进行Web渗透测试
什么是渗透测试?
渗透测试,是渗透测试工程师完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标网络、主机、应用的安全作深入的探测,发现系统最脆弱的环节。
如何进行Web渗透测试?
完整web渗透测试框架当需要测试的web应用数以千计,就有必要建立一套完整的安全测试框架,流程的最高目标是要保证交付给客户的安全测试服务质量。
1、立项:项目建立,时间安排,人力分配,目标制定,厂商接口人确定;
系统分析威胁分析:针对具体的web应用,分析系统架构、使用的组件、对外提供的接口等,以STRIDE为威胁模型进行对应的安全威胁分析,输出安全威胁分析表,重点关注top3威胁;
制定测试用例:根据威胁分析的结果制定对应的测试用例,测试用例按照模板输出,具备可执行性;
测试执行漏洞挖掘:测试用例执行发散测试,挖掘对应的安全问题or漏洞;
问题修复回归测试:指导客户应用开发方修复安全问题or漏洞,并进行回归测试,确保安全问题or漏洞得到修复,并且没有引入新的安全问题;
项目总结评审:项目过程总结,输出文档评审,相关文档归档。
2、Web应用的渗透测试流程
主要分为3个阶段,分别是:信息收集→漏洞发现→漏洞利用,下面仔细分析一下各个阶段流程:
一、信息收集
在信息收集阶段,我们需要尽量多的收集关于目标web应用的各种信息,比如:脚本语言的类型、服务器的类型、目录的结构、使用的开源软件、数据库类型、所有链接页面,用到的框架等
脚本语言的类型:常见的脚本语言的类型包括:php、asp、aspx、jsp等
测试方法:
1 爬取网站所有链接,查看后缀
2 直接访问一个不存在页面后面加不同的后缀测试
3 查看robots.txt,查看后缀
服务器的类型:常见的web服务器包括:apache、tomcat、IIS、ngnix等
测试方法:
1 查看header,判断服务器类型
2 根据报错信息判断
3 根据默认页面判断
目录的结构:了解更多的目录,可能发现更多的弱点,如:目录浏览、代码泄漏等。
测试方法
1 使用字典枚举目录
2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取
3 查看robots.txt是否泄漏
使用的开源软件:我们如果知道了目标使用的开源软件,我们可以查找相关的软件的漏洞直接对网站进行测试。
测试方法
指纹识别(网络上有很多开源的指纹识别工具)
数据库类型:对于不同的数据库有不同的测试方法。
测试方法
1 使应用程序报错,查看报错信息
2 扫描服务器的数据库端口(没做NAT且防火墙不过滤时有效)
所有链接页面:这个跟前面的获取目录结构类似,但是这个不只是获取网站的所有功能页面,有时候还可以获取到管理员备份的源码。
测试方法
1 使用字典枚举页面
2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取
3 查看robots.txt是否泄漏
用到的框架:很多网站都利用开源的框架来快速开发网站,所以收集网站的框架信息也是非常关键的。
测试方法
指纹识别(网络上有很多开源的指纹识别工具)
二、漏洞发现
在这个阶段我们在做测试的时候要对症下药,不能盲目的去扫描,首先要确定目标应用是否使用的是公开的开源软件,开源框架等、然后在做深一度的漏洞扫描。
关于开源软件的漏洞发现
开源的软件:常见的开源软件有wordpress、phpbb、dedecms等
开源的框架:常见的开源框架有Struts2、 Spring MVC、ThinkPHP等
中间件服务器:常见的中间件服务器有jboss、tomcat、Weblogic等
数据库服务:常见的数据库服务mssql、mysql、oracle、redis、sybase、MongoDB、DB2等
对于开源软件的测试方法
1 通过指纹识别软件判断开源软件的版本信息,针对不同的版本信息去开放的漏洞数据库查找相应版本的漏洞进行测试
2 对于默认的后台登录页、数据库服务端口认证等入口可以进行简单的暴力破解、默认口令尝试等操作
3 使用开源的漏洞发现工具对其进行漏洞扫描,如:WPScan
关于自主开发的应用
手动测试:这个阶段,我们需要手工测试所有与用户交互的功能,比如:留言、登入、下单、退出、退货、付款等操作
软件扫描:使用免费的软件扫描,如:appscan、wvs、netsparker,burp等
可能存在的漏洞
Owasp关键点
代码安全之上传文件
代码安全之文件包含
代码安全之SSRF
逻辑漏洞之密码重置
逻辑漏洞之支付漏洞
逻辑漏洞之越权访问
平台安全之中间件安全
三、漏洞利用
针对不同的弱点有不同的漏洞利用方式,需要的知识点也比较多。一般这个阶段包括两种方式,一种是手工测试,一种是工具测试
手工测试
手工测试是通过客户端或服务器访问目标服务,手工向目标程序发送特殊的数据,包括有效的和无效的输入,观察目标的状态、对各种输入的反应,根据结果来发现问题的漏洞检测技术。手工测试不需要额外的辅助工具,可由测试者独立完成,实现起来比较简单。但这种方法高度依赖于测试者,需要测试者对目标比较了解。手工测试可用于Web应用程序、浏览器及其他需要用户交互的程序。
这种方式对于有特殊过滤等操作,或者网络上没有成型的利用工具的时候可以使用。
工具测试
网络上有很多好用的免费利用工具,比如针对sql注入的sqlmap、针对软件漏洞的matesploit等。
求工作-web渗透测试
2018web渗透教程百度网盘免费资源在线学习
链接:
提取码: 5h3s
2018web渗透教程 解压密码:xindong
6.提权
5.正反向代理与端口转发
4.中间人攻击与抓包
3.工具 1.php编程 9.绕过安全狗全过程.rar 8.实战.zip 7.内网.zip
2.web安全基础.rar 编程.pptx
1.PHP编程.docx 9.return+引用函数.mp4 8.函数.mp4
0条大神的评论