0%

渗透测试总结

渗透测试总结 for 秋招

渗透测试流程

  1. 信息收集(假设目标只是一个名字)

    1. 查询关联的网络资产(查备案域名、公众号、小程序、谷歌
    2. 收集服务器相关信息(域名查IP、系统、版本、开放端口和服务
    3. 网站指纹识别(cms、cdn、证书、防火墙
    4. whois信息(敏感信息、社工信息
    5. 收集子域名、旁站、C段
    6. 扫描网站目录,查看是否有敏感信息泄露
  2. 漏洞挖掘-getshell

    1. 对开放的端口进行漏洞探测
    2. 浏览网站的功能,查找web漏洞,见web漏洞总结
    3. 漏扫工具
  3. 安装后门实现远控

  4. 提权

    1. Windows:mysql-udf、低版本
    2. Linux:脏牛、suid提权、内核漏洞
  5. 权限维持:计划任务、隐藏账户

  6. 内网渗透

    1. 内网扫描
    2. 建立隧道
    3. 内网攻击
    4. 权限提升&维持
  7. 清除痕迹(后门、日志

  8. 报告

信息收集

关联资产收集

  1. ICP备案查域名
    1. 子域名收集,见下文
    2. 域名查IP,见下文
  2. 公众号&小程序
    1. 微信公众平台插入公众号/小程序时可以进行模糊搜索,需要登录
    2. 微信公众平台找回密码处,可以精准定位
    3. 搜狗微信
    4. 小程序反编译,提取域名/IP

资产测绘平台:fofa、hunter、shodan、zoomeye、censys、virustotal、微步

子域名收集

  1. Google hack:site:domain
  2. DNS记录
    1. 不安全的域传送,获取指定nameserver的域文件
    2. 域名缓存侦测:不使用递归,探测指定nameserver缓存中保存的域名
    3. DNSSEC:
  3. 证书:HTTPS的CA证书(SAN字段值
  4. 当前网站本身,主要是静态文件(js、html)、资源链接(link、img)、安全策略(CSP、跨域策略文件
  5. 子域名爆破
    1. 可能有泛解析:*符号将未指定的前缀指向某一个特定的地址。解决:采用随机值去判断返回内容的相似性,进一步判断是否存在泛解析。

工具:OneForAll

域名查服务器信息

  1. 服务器的真实IP地址
  2. 旁站:和target处于同一服务器上的其他网站
  3. C段:同一C段,D段不同的IP对应主机存活情况(主机发现:ARP扫描、nmap
  4. 操作系统、版本

CDN绕过

  1. 使用了CDN的域名的父域或者子域名不一定使用了CDN
  2. CDN可能是在网站上线一段时间后才上线的,可以通过查找域名解析记录的方式去查找真实IP。
  3. 邮件探测(查看邮件的来源IP
  4. SSL证书探测(遍历IP
  5. 多地Ping,偏远地区服务器可能不会访问到CDN节点

端口扫描

  1. 全连接扫描
  2. 半连接扫描 SYN:发送SYN,返回SYN/ACK表示开启,返回RST表示关闭
  3. FIN扫描:发送FIN,返回RST表示开启

常见服务及其漏洞

  1. 80/8080 HTTP:Web服务,中间件可能存在漏洞,网站中可能有漏洞
  2. 443 HTTPS:Heartbleed心脏出血漏洞,openssl漏洞,tls协议,
  3. 22 SSH:爆破登录
  4. 23 Telnet:爆破登录
  5. 53 DNS:DDos(DNS查询、DNS反弹
  6. 21 FTP:文件上传、匿名登陆、
  7. 3389 RDP:爆破登录
  8. 3306 MySQL:SQL注入、身份验证绕过
  9. 1433 SQL server:SQL注入、未授权访问
  10. 6347 Redis:未授权访问
  11. 445 SMB:永恒之蓝
  12. 139 NetBIOS:未授权访问
  13. 7001+7002 Weblogic
  14. 873 Rsync:未授权访问、提权?

拿webshell

  1. 文件上传
  2. sql注入写入文件
  3. 命令执行/代码执行←SSRF、反序列化
  4. cms漏洞

正向shell:受害机具有外网IP

反向shell:受害机能够出网(可能是内网地址

登录框测试步骤

  1. 登录
    1. 弱口令
    2. 验证码爆破(eg.4位数),导致任意用户登录
    3. SQL注入
    4. 短信轰炸
    5. 用户名枚举(根据登录返回信息判断
    6. 逻辑漏洞:绕过登录、越权
  2. 注册
    1. 任意用户注册
    2. 任意用户接管(覆盖已有用户的信息
    3. 用户名枚举
  3. 找回密码
    1. 逻辑漏洞→任意用户密码重置
    2. 信息泄露(邮箱、姓名
  4. 未授权访问(隐藏接口

内网渗透

首先需要了解一些专业名词:域、域控、hash传递、ntlm

信息收集

查找内网网段

  1. 工具扫描:s.exe
  2. 历史记录:ftp、文件共享、3389、hosts、arp
  3. 流量嗅探(混杂模式)

被控主机信息搜集

进程 tasklist
端口和网络连接 netstat -ano
补丁信息 systeminfo
共享信息 net share
计划任务 at、schtasks /query /fo LIST /v
用户列表 net user、net localgroup administators、query user

域信息收集

SID

net user /domain 查看域用户

net time /domain 确定域控

nltest /domain_trusts

横向移动

ipc

New

WinRAR命令执行