渗透测试步骤与思路

渗透测试步骤与思路

一、信息收集

1、主机扫描

  • 扫描某个网段内存在的主机
  • 扫描主机开放端口和服务
  • 扫描主机的操作系统和版本号
  • 扫描主机可能存在的已知漏洞

2、web扫描

  • 查询域名和子域名信息
  • whois查询
  • 扫描web应用的url路径
  • 扫描web应用后台管理入口
  • 常规漏洞扫描

3、功能分析

  • 分析前台页面的登录注册功能
  • 根据用户注册提示确定可用账号
  • 尝试进行注册并登录,确认各项功能
  • 确定前台页面的URL跳转,用户评论,文件引用,文件上传下载等强交互功能点
  • 确定后台是否存在文件上传,查询功能,命令功能,系统配置
  • 确定用户是否存在密码重置功能,确认是否存在逻辑漏洞

4、抓包分析

  • 对前端页面源码进行分析,确认是否存在敏感信息或接口
  • 对关键功能进行抓包分析,预判后台基本实现逻辑
  • 对系统功能交互过程中的编码和加密进行分析,Base64,时间戳,Hash
  • 对通信过程中的Session和Cookie进行分析,判断此处为什么要这么用

5、使用工具

  • 主机扫描:Nmap,Nessus
  • web扫描:Xray+rad,AWVS,APPscan,SQLmap,XSSstrike,dirb,御剑
  • 在线收集:fofa,hunter,微步在线,等

二、漏洞利用

1、已知exp使用

根据信息收集的结果,直接网上寻找对应开发框架或CMS成熟漏洞利用工具

2、暴力破解

适用于验证码可绕过,使用字典。

3、逻辑漏洞

尤其密码重置很关键。七个方面:重置凭证接收端可篡改,重置凭证泄露,重置凭证未校验,重置凭证可爆破,用户混淆,应答中存在响应后续逻辑的状态参数,token可预测。在逻辑漏洞的寻找中,重点观察和你用户名有关的请求,尝试在各种请求中将你的用户名或身份认证替换成其他人。

4、JS泄露

一般内部系统的网站JS可能存在用户接口,我们可用通过接口发现用户信息。也可以分析JS源码,构造出后路径和参数逻辑。

5、后台web渗透

除了信息收集中有的上传功能(上传webshell),查询功能(sql注入),命令功能(命令注入),其他web安全漏洞最好根据功能逐一尝试。

6、代码审计

如果拿到源码,可以根据审计构造payload

7、使用到的工具

  • 渗透测试:Hydra,Medusa,MSF,反序列化工具,各类专项工具
  • 代码审计:RIPS,Fortify SCA
  • shell管理:菜刀,冰蝎,蚁剑,哥斯拉,PSTool等

三、建立据点

1、反弹shell

漏洞利用成功后,通常会获得一个webshell,但是webshell虽然能执行命令和管理文件,但毕竟也不是一个真正的shell,而且不稳定,因此需要反弹shell到一个稳定的环境中

2、反弹shell过程中遇到的问题

反弹命令不存在,禁止出口流量,限定向外访问端口,流量审查

  • 反弹命令不存在:命令有很多,常用命令有nc/nc.openbsd/nc.traditional,bash/sh/dash,python/perl/php/ruby,因此命令不存在的概率很小,在服务器上使用where is nc bash php perl python ruby就能知道命令是否存在
  • 禁止出口流量:某些目标在防火墙上限制了出口流量,禁止目标主动向外发起请求,可以通过带外的方式进行验证。大概逻辑是,攻击者在自己的VPS上检测某种协议的网络请求,在目标上用这种协议访问VPS,若在VPS上看到该协议的请求日志,则可推断出目标允许出口流量
  • 限定向外访问端口:某些目标限定访问外部端口,常见有黑名单和白名单的方式。黑名单:禁止目标向外访问MSF默认的4444端口。白名单:只允许向外访问web常见的80端口。黑名单的情况好绕过,随便指定一个端口就好了,白名单的话只能探测可允许的端口,常见是80,443,需要想办法利用
  • 流量审查:目标环境会对流量进行检查,检查时会发现流量的恶意代码。可以使用ssl加密防止流量审查

3、确认环境制作木马

  • 确认具体的操作系统和版本安装的服务,可以允许的脚本环境,可以通过的端口
  • 根据当前环境,按照需要制作复杂木马,甚至想办法保持连接的稳定,不被防火墙和管理员发现和封锁

4、使用的工具

MSF、CS

四、权限提升和内网渗透

1、权限提升

Webshell中90%都是www-data权限,需要想办法提升到root权限。可以用的方法有

  • 内核栈溢出
  • 搜寻配置文件中的明文密码
  • 环境变量劫持高权限程序
  • 不安全的服务
  • 借助权能
  • sudo误配
  • SUID滥用

2、权限维持

  • 在获取超级管理员后,想办法将权限维持住

3、内网穿透

在后渗透阶段,攻击一台目标主机远远不够,还需要通过内网横向来完成对核心目标的访问和渗透,此时通过内网穿透保持一个可靠的连接,随时可以通过内网穿透能能进入目标主机。需要规避防火墙和杀毒软件

4、内网渗透

5、使用的工具

  • 权限提升:MSF,漏扫,各类专项渗透工具
  • 内网渗透:CS,ladon,PStools
  • 内网穿透:Frp,冰蝎,CS,代理

你可能感兴趣的:(网络安全)