【项目】如何对网站进行渗透测试

【文章用于学习】

前提:拿到授权书

渗透测试的目的:尽可能多的找漏洞。

渗透测试的本质: 信息收集。

1.计划阶段

一般直接给域名,识别测试范围和目标,并明确测试的目的和范围。

  • 如果给的是域名查看是否有CDN绕过CDN获取ip

利用钟馗之眼获取主机IP

  • 如果直接给IP,直接进行信息收集

2.渗透阶段(信息收集):

2.1 扫描开放端口

NMap扫描,确认开放端口

2.2指纹识别

指纹?其实就是网站的信息。比如通过可以访问的资源,如网站首页,查看源代码:

  • 看看是否存在文件遍历的漏洞(如图片路径,再通过../遍历文件)
  • 是否使用了存在漏洞的框架(如果没有现成的就自己挖)

3.渗透测试(漏洞利用)

3.1弱口令漏洞

如果有网站登录框:

  1. 如果不存在验证码,则直接使用相对应的弱口令字典使用burpsuite 进行爆破
  2. 如果存在验证码,则看验证码是否存在绕过、以及看验证码是否容易识别

3.2文件下载(目录浏览)漏洞

        扫描目录,查看有没有其他目录,查看有没有可以下载的文件如果对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意的文件,可以是源代码文件、敏感文件等。

  1. 查找可能存在文件包含的漏洞点,比如js,css等页面代码路径
  2. 看看有没有文件上传访问的功能
  3. 采用../来测试能否夸目录访问文件

3.3 任意文件上传漏洞

  1. 收集网站信息,判断使用的语言(PHP,ASP,JSP)
  2. 查找可以进行文件上传的注入点
  3. 过滤规则绕过方法

3.4命令注入漏洞

        目标网站未对用户输入的字符进行特殊字符过滤或合法性校验,允许用户输入特殊语句,导致各种调用系统命令的web应用,会被攻击者通过命令拼接、绕过黑名单等方式,在服务端运行恶意的系统命令.

如DVWA渗透系列二:Command Injectio

3.5 SQL注入漏洞

        目标网站未对用户输入的字符进行特殊字符过滤或合法性校验,允许用户输入特殊语句查询后台数据库相关信息

如:php?id=1

  1. 手动测试,判断是否存在SQL注入,判断是字符型还是数字型,是否需要盲注
  2. 如果可以使用工具测试,使用sqlmap等工具进行辅助测试

3.6.判断CMS

 收集网站的框架,插件,有没有历史上的漏洞被发现。尝试使用这些漏洞进行测试。

等其他渗透测试手法。 

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值