前言

写一个渗透测试CheckList,梳理以下自己的渗透体系,加深自己的印象,避免渗透过程中出现遗漏。

建立自己的知识体系,会让渗透测试事半功倍。

配合这个渗透测试水漏洞清单一起使用更好

正文

通用漏洞

dom型xss:

凡是可以控制的变量,都要注意是否回显到html中,有时候回显了但打开源码才能看到。

为什么单独说domxss,是因为xray高级版扫描器只能扫反射型xss和存储型xss。这是容易忽视的点。

xss弹窗:

使用iframe标签加载远程html:

1
<iframe src=http://xxx/test.html></iframe>

csrf:

凡是进行操作的点,没看到token的点都得测,post/get 方式互换,也是我较为忽略的点。

sqli:

一般使用payload,绕过waf检测是否存在

1
0||1 like 1

常规的payload容易被拦

1
2
3
4
5
6
7
8
'
"
*
%
# 宽字节
%df%27%df%22
1' or sleep(10)
编码

ssrf:

凡是能够对外发起网络请求的地方,多注意url中是否有调用外部资源的请求,包含其他url

url跳转:

这种是较为常见的,反正url中附带url的、有returnurl、redirect等关键词的都可能存在。

后台登录/注册

  1. 弱口令/万能密码
  2. 用户名/密码爆破

如果密码为明文传输:设置一个超长的密码,爆破用户名,通过响应时间确定存在的用户名。
3. 密码置为空
3. Sql 注入
4. 未授权登录后台/登录后台绕过

修改 X-Forward-For 的值等,403Bypasser等插件

如:直接访问/admin目录302跳转,使用/xxx/..;/admin/绕过目录权限限制

  1. 验证绕过

  2. 手机登录验证码

爆破、凭证返回、验证绕过、空验证码、删除验证码参数、短信轰炸、session覆盖(可以尝试)

参考:https://fstraw.cn/posts/4abdabd1.html#1-%E9%AA%8C%E8%AF%81%E7%A0%81%E7%88%86%E7%A0%B4

  1. 在登录接口,fuzzing 登录请求包参数:
1
username=admin&$fuzzparm$=True
  1. 突破 sso 登录
1
2
3
4
5
6
7
header头添加:
Authorization: JWT 1
ticket: 1
token: 1
Cookie添加:
Authorization: JWT 1; ticket: 1; token: 1;
还有 userId=1; admin=1; user等
  1. 外网系统点击链接后访问内网IP

点击登录功能会指向127.0.0.1:8080/axis2/,通过burp中proxy->options->Matchand Peplace模块设置规则后,将127.0.0.1:8080转化为目标外网ip,成功登录。

image-20220808170140651
  1. 登录系统时ip地址禁止访问

某些站点访问时显示“禁止外部ip访问”、“登录ip不是白名单ip”等。

可以使用burp插件绕过,伪造ip为127.0.0.1、0.0.0.0之类的ip进行绕过。

https://github.com/swagkarna/Burp-FakeIp"

  1. Web登录认证类漏洞总结

https://mp.weixin.qq.com/s/_0aQYV_4Tz9knQgzs7WSvw

  1. JWT认证攻击

https://mp.weixin.qq.com/s/kfB0ovlafuAcoI5yEEkDEQ

利用工具:

https://github.com/ticarpi/jwt_tool

https://jwt.io/

管理后台

  1. 水平/逻辑 越权

参考:https://fstraw.cn/posts/4abdabd1.html#6-%E9%80%BB%E8%BE%91%E8%B6%8A%E6%9D%83

订单、收货地址、资料修改(能x则x)

添加用户:普通用户可能不存在这个功能,管理员有,但普通用户只要知道添加用户的请求包,一样可以实现这个功能。

双写请求包的参数

image-20220808165550290

  1. 后台日志处记录登录ip

https://mp.weixin.qq.com/s/lFMPZyF3QYyWpWHA7l7JAw

可能会从 X-Forwarded-For 取值,这时候如果没有防火墙的话,可以轻易注入xss或者sql payload

1
2
3
X-Forwarded-For: <script>console.log(‘xss’)</script>
X-Forwarded-For: "><h1>abc</h1>
X-Forwarded-For: t</td><h1>abc</h1><

注意,不可轻易注入xss弹窗 payload。

  1. 导出csv文件处注入

有些日志记录了 X-Forwarded-For,也就是登录ip,然后又有导出功能,可以尝试注入 csv payload

1
2
X-Forwarded-For: =1+cmd|'/C calc'!A0
X-Forwarded-For: %0A-3+3+cmd|'/C calc'!D2
  1. 任意文件读取

http://xxxx.com/view?path=xxx.jpg 这样的url

不行就试试 http://xxxx.com/view?path=file:// 这种ssrf

信息收集

  1. 绕过cdn查找真实ip几个网站就够了

https://search.censys.io/

https://viewdns.info/iphistory/

新的查找cdn的tips

https://mp.weixin.qq.com/s/XG_IcJ-owSBnrJ3c5oqMxg(nice)

  1. 目录扫描

扫路径、敏感文件、

动态备份文件名:

经过实战检验,大部分都为域名.zip,而且备份文件可能不止一个

推荐项目:

https://github.com/VMsec/ihoneyBakFileScan_Modify (500线程最好)

1
2
3
4
5
6
www.zip
web.zip
域名.zip # www.baidu.com.zip
主域名.zip # baidu.zip
主域名.顶级域名.zip # baidu.com.zip
子域名.tar.gz # api.baidu.com.tar.gz
  1. 子域名收集

phpinfo.me

Oneforall

  1. js 扫描

普通站点:jsfinder

webpack打包站点:PackerFuzzer

  1. 第三方搜集敏感信息

Github搜源码、云盘源码、淘宝/闲鱼、

  1. F12

随便看看html源码、js源码这些有没有用户名或者密码。

  1. 端口扫描

Goby、nmap

  1. 指纹识别

网站用了什么框架,cms

  1. fofa 根据特征收集类似站点

当密码爆破不成功,可以通过获取其他站点的源代码,审计找出漏洞,再应用到目标站点。

  1. api接口

邮箱系统

  1. spf 邮箱任意伪造
1
nslookup -type=txt qq.com

冷门漏洞

  1. Host 注入

burp 拓展:Param Miner

  1. Host 碰撞

目标使用 Nginx 代理

https://fstraw.cn/posts/1684ca85.html

  1. 域传送漏洞
1
dnsenum b.com