** 有兴趣学习web安全的小伙伴可以戳我一下: 戳一下**
渗透测试
渗透测试并没有一个标准的定义,一般通用的说法是,渗透测试是指一家单位授权另一家单位或个人模拟攻击者入侵来评估计算机系统安全的行为,过程中被授权单位工程师或攻击者个人利用自己所掌握的知识对授权系统进行渗透,发现存在的安全隐患及漏洞,然后编写报告交付给最开始授权单位。最开始授权单位根据提供的报告,安排相对应的开发人员或运维人员进行漏洞修复。
这里需要注意,随着2017年6月1日开始实施的《网络安全法》,根本意义上定义了我们如果是未经过授权许可的渗透测试行为均属于违法行为。如果你不知道具体网络安全法包含了哪些?你可以移步至《网络安全法》。
渗透测试分类
渗透测试也没有严格的分类方式,但根据实际应用,普遍认同的集中分类方法有,黑盒测试及白盒测试
黑盒测试:
- 黑盒测试就是只告诉我们这个网站的url,其他什么都不告诉,然后让你去渗透,模拟黑客对网站的渗透
白盒测试:
- 白盒测试就是在知道目标网站源码和其他一些网络结构环境等信息的情况下对其进行渗透,从代码角度来看,有点类似于代码分析
渗透测试流程
渗透测试的基本流程主要分为以下几步:
- 明确目标
- 信息收集
- 漏洞探测(挖掘)
- 漏洞验证(利用)
- 提升权限
- 清楚痕迹
- 编写渗透测试报告
明确目标:
项目开始前,会由销售或项目经理与客户对接,确认所需要做渗透测试的系统目标地址或范围,主要是确定需要渗透资产范围;确定规则,如怎么去渗透;确定需求,如客户需要达到一个什么样的效果。
信息收集:
1.如果客户授权了单个目标,我们需要收集的信息包括如下:
操作系统信息
端口信息
脚本语言信息
中间件信息
组件信息
。。。等指纹信息
2.目标范围信息收集
我们的信息收集结果会直接影响到我们渗透测试最终的结果产出,所以在过程中我们需要足够了解我们所需要进行渗透测试的目标范围企业。详细了解信息收集可以移步至——渗透测试-信息收集
漏洞探测:
在做完信息收集后,我们可以针对信息收集到的目标系统进行漏洞探测,过程中我们可以使用到一些漏洞扫描工具作为辅助,这里我们仅是发现漏洞并不可以确认漏洞的实际危害(比如一些条件限制),在探测这步即考验到渗透测试人员的知识面,如:
web漏洞:
SQL注入漏洞——SQL注入漏洞
xss漏洞——xss跨站脚本攻击
上传漏洞——渗透测试-上传漏洞
CSRF漏洞——渗透测试-CSRF漏洞
命令执行漏洞——渗透测试-命令执行
点击劫持漏洞——点击劫持
端口扫描——nmap基础使用
等等其他漏洞
扫描器:
AWVS——AWVS基础使用
漏洞利用:
在确认漏洞存在后,需要给客户验证该漏洞危害,不同的漏洞所需要展示危害不同,过程中可以使用到一些工具的辅助,如下
SQL注入漏洞——SQLMAP使用
XSS漏洞——BEEF基础使用
抓包工具——burpsuite使用
在渗透测试过程中,一般越权,文件上传等众多漏洞我们是需要使用到burpsuite进行分析的,故此同学们可以关注下。
权限提升
在漏洞利用后在获取到webshell以后,一般权限很低,所以我们需要提权,可以戳一下windows权限提升、linux权限提升、mysql权限提升
如果不想进行提权操作,仅需要内网流量的话可以代理目标流量进行转发,可以戳一下:内网端口映射与转发
清理痕迹
当我们达到了目的之后,有时候只是为了黑入网站挂黑页,炫耀一下;或者在网站留下一个后门,作为肉鸡,没事的时候上去溜达溜达;亦或者挂入挖矿木马;但是大家千万不要干这些事,这些都是违法的,所以具体的痕迹清理,大家注意,主要为日志。
编写渗透测试报告
在完成了渗透测试之后,我们就需要对这次渗透测试撰写渗透测试报告了。明确的写出哪里存在漏洞,以及漏洞修补的方法。以便于网站管理员根据我们的渗透测试报告修补这些漏洞和风险,防止被黑客攻击!
我们做的这一切的一切都是为了营造一个更安全更可信任的网络环境,大家切记不要利用本篇文章进行违法犯罪行为!
版权归原作者 小韩韩啊 所有, 如有侵权,请联系我们删除。