概述
#记录一下渗透测试中的一些知识点
#渗透测试可以说是模拟黑客入侵的行为,与之不同的是,我们目的是提高系统的安全性,保护系统而进行的测试。
常规渗透测试基本步骤,主要分为8个步骤:明确目标、信息收集、漏洞探测、漏洞验证、信息分析、获取所需、文档整理、生成报告。流程如下图所示
渗透测试基本流程
1. 明确目标
确定目标范围、限度、需求等,然后制定渗透测试方案:
-
确定范围:测试目标ip、域名、内外网、测试账户、子网、旁站等。
-
确定规则:能渗透到什么程度,允许测试的时间段和周期、能否修改上传、提权、查看数据等敏感操作。
-
确定需求:web应用服务漏洞、业务逻辑漏洞、人员权限管理漏洞等。
2. 信息收集、
利用各种方法获取更多关于目标的信息,利用方式如扫描,开放搜索获取后台页面,未授权页面,敏感URL等:
-
基础信息:IP、网段、域名、端口。
-
应用信息:各端口的应用。例如web应用、邮件应用、等等。
-
系统信息:操作系统和对应版本。
-
版本信息:所有探测到的版本,如中间件,系统等。
-
服务信息:各种服务开放情况,是否有高危服务等。
-
人员信息:域名注册人员信息,web应用用户信息,管理员信息等。
-
防护信息:防护设备,如防火墙,安全狗等。
3. 漏洞探测
结合信息收集的信息,分析找到漏洞点。
-
利用漏扫工具,如awvs、appscan、xray、goby等。
-
看历史漏洞及补丁是否修复。
-
是否使用含有漏洞的版本。
-
安全配置规范,Web应用漏洞等。
4. 漏洞验证
将上一步中发现的全部漏洞都验证一遍。结合实际情况,搭建模拟环境进行试验。成功后再应用于目标。
5. 信息分析
分析前面的信息为下一步实施渗透做准备。准备好上一步探测到的漏洞利用方法,精准打击目标。
-
绕过防御机制。
-
定制渗透路径,寻找突破口。
-
绕过检测机制、流量监控,杀毒软件,恶意代码检测等(免杀)。
6. 获取所需
-
获取内部信息:基础设施信息(网络架构,VPN,路由,拓扑等)。
-
内网:内网入侵,权限维持(一般客户不需要此步骤)。
-
清理痕迹:清理相关日志、操作记录、文件等。
7. 信息整理
-
渗透工具:整理渗透过程中用到的代码,poc,exp等。
-
收集信息:整理渗透过程中收集到的一切信息。
-
漏洞信息:整理渗透过程中遇到的各种漏洞,脆弱位置信息等。
8. 形成报告
按照与客户确定的范围、需求整理渗透测试结果形成报告。提供漏洞修复建议和解决方法。
每个步骤具体内容在网上也有许多规范和大佬姿势,具体情况也是根据实际项目来。一般漏洞扫描到第4步就结束并输出报告了,而渗透测试则是还需要更近一步渗透,利用漏洞获取目标权限,所需信息等,包括绕过一些防御机制,免杀等。甚至有时还需要花费几个星期至几个月,这也是渗透测试花费人力更多,费用更高原因。
Tips
拿到ip明确目标后,允许进行扫描软件扫描,可以先扫描一波
在扫描的同时浏览一下网站的界面功能及结构,利用Wappalyzer等工具查看版本信息等
用Google黑语法,fofa,ZoomEye,Shodan等搜索引擎搜索一些敏感信息,goby进行资产发现也不错,有插件的更好
本地可以利用nmap 进行信息探测,查看端口开放服务和版本,网上搜索版本是否有历史漏洞,如redis未授权漏洞,像22端口开放,可以试试弱口令爆破。nmap的功能有很多,里面也有很多脚本可以直接利用。
扫描敏感目录,目录扫描工具也很多,不同工具扫描出结果也不同,如dirmap和dirb结果也有区别,不能说哪款工具不行,都有特点,这里我们整合一下结果就好了,几款工具一起往往有意外发现。在工具强大之外还需要看字典的,这个需要自己经验不断补充,制作适合自己的字典。
中间件等信息,看看是否是老版本了,或者含有已知漏洞,补丁是否修复
注入,浏览页面看参数id,uname,classid等是否存在注入,手工注入或者存在可以丢sqlmap跑,sqlmap也有很多绕过脚本,可以熟悉一下或者自己修改源码绕过
XSS,见框框就试试,一般内部开发项目,一般就针对性的测试一下
CSRF,有token无referer直接删除token;有token和referer,删除referer或值,有验证可以构造referer值,如果响应不报错说明存在,也可以利用burpsuite生成csrf poc来测试
看看有没有上传处测试一下,一般是白名单我就不测试了,留个点先下一步
登陆处,爆破,有验证码可以抓包观察验证码是否固定,有迹可寻
找回密码处,XSS,注入,逻辑漏洞可能存在,抓包多观察
有账号登陆的情况下,可以测试一下会话固定漏洞,登陆前后cookie值变化,越权漏洞
URL跳转,有些地址后面会提交到其他页面,多观察地址
还有就是抓包分析看看js或者浏览器查看,有些js里面可能有意向不到的发现
是在没发现就看看业务逻辑漏洞是否有发现,如登录验证规则不完善
这些都是漏洞发现的部分思路,后续还有利用漏洞获取webshell,提权,内网渗透,一般客户要求的渗透测试也不用这么深入,点到为止。
最后
以上就是结实飞鸟为你收集整理的渗透测试步骤的全部内容,希望文章能够帮你解决渗透测试步骤所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复