渗透测试方法论
渗透测试(penetration testing,pentest)是实施安全评估(即审计)的具体⼿段。⽅法论是在制定、实施信息安全审计⽅案时,需要遵循的规则、惯例和过程。⼈们在评估⽹络、应⽤、系统或三者组合的安全状况时,不断摸索各种务实的理念和成熟的做法,并总结了⼀套理论 - 渗透测试⽅法论。
☻ 安全弱点
☻ 安全风险
☻ 安全漏洞
☻ “千里之堤,溃于蚁穴”
☻ 与红队不同
红队是攻击队伍,想尽⼀切办法⼊侵⽬标系统。
渗透测试是尽可能的披露⽬标系统的安全弱点、⻛险、漏洞等。任何安全问题都不要放过。
渗透测试的⽬的为安全加固(漏洞修复)做准备。
01 渗透测试的种类
黑盒测试
在进行黑盒测试时,渗透工程师在不清楚被测单位的内部技术构造情况下,从外部评估网络基础设施的安全性。并将安全弱点进行分类按照风险等级对其排序。继而将之汇总为书面报告。
☻ 不清楚内部单位技术构造
☻ 风险等级 (高危、中危、低危 、信息级别)
☻ 网站后台管理员密码
白盒测试:
白盒测试的审计员可以获取被测单位的各种内部资料甚至不公开的资料,所以
渗透人员的视野更为开阔,可以以最小的工作量达到最高的评估精准度。白盒测试从被测系统环境自身出发,全面消除安全问题。
☻ 获取被测单位全部资料或者有限资料
☻ 可以与应用的研发生命周期相结合(SDL)
☻ 代码审计
脆弱性评估
脆弱性评估通过分析企业资产面临安全威胁的情况和程度,评估内部和外部的安全制度的安全性。
☻ 脆弱性评估的方法漏洞扫描(一体化安全弱点管控平台)+ 手工发现
☻ 脆弱性评估 =安全弱点、风险、漏洞的发现
☻ 黑盒测试 = 安全弱点、风险、漏洞的发现+漏洞利用+后渗透
02 安全测试⽅法论
开放式WEB应用程序安全项目
☻ WEB安全测试指南
OWASP_Testing_Guide_v4.pdf
https://github.com/OWASP/wstg/tree/master/document
OWASP top 10
Top 10 Web Application Security Risks
名称 |
解释 |
A1:2017-注入 |
将不受信任的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL诸如、NOSQL注入、OS注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在没有适当授权的情况下执行非预期命令或访问数据。
|
A2:2017-失效的身份证 |
通常,通过错误使用应用程序的身份认证和会话管理功能,攻击者能够破译密码、密钥或者会话令牌,或者利用其它开发缺陷来暂时性或永久性冒充其他用户的身份。(网站后台爆破)
|
A3: 2017-敏感数据泄露 |
许多WEB应用程序和API都无法正确保护敏感数据,例如:财务数据、医疗数据和PII数据。攻击者可以通过窃取或修改未知加密的数据来实施信用卡诈骗、身份盗窃或其它犯罪行为。未加密的数据容易遭受破坏,我们需要对敏感数据加密,传输过程中的数据、存储的数据以及浏览器的交互数据。(网站后台管理员账号密码明文传输))
|
A4: 2017-XML外部实体 |
许多较早或者配置错误的XML处理器评估了XML文件中的外部实体引用。攻击者可以利用外部实体窃取使用URI文件处理器的内部文件和共享文件、监听内部文件和共享文件、监听内部扫描端口、执行远程代码和实施拒绝服务攻击。(XXE)
|