已经超过 704 天,自上次更新后,文章内容可能已经过时。

前言

作为行业新人,刚开始漏洞挖掘的时候可能会存在一定程度的不适应,因为只挖高危漏洞的你,往往不会重视鸡肋漏洞的挖掘,比如用户名密码爆破、url跳转等,然而这些漏洞都是可以作为漏洞提交的。

所以本篇文章就是一个水漏洞的清单,关注面是你平时不关注的漏洞,只关注如何水漏洞,其他常见漏洞的挖掘方法就不写了。

强烈推荐水漏洞神器xray,让你拳打xss,脚踢cors。

口令明文传输

没有加密就进行传输了。

例如:

username=admin&password=admin

用户名、密码爆破

随便爆破,看看爆破响应包有没有回显信息,提示账号不存在等。

如果密码是明文传输,提示用户名或者密码错误,可以设置一个超长的密码,去爆破用户名,根据响应时间确定用户名。

账户弱锁定/账号恶意锁定

实在找不到的时候就爆破一下账号吧,不锁定就成功,锁定了就是账号恶意锁定漏洞,正反手都是无敌的。当然前提是你得有已知的账号和密码。

短信炸弹

输入手机号码,burp抓包,使用爆破模块发包,线程50,冲。

验证码失效

验证码可以重复使用

这个我还没遇到过😓。

目录穿越漏洞

看到 filename=xxxxx.jpg 的url

尝试 filename=../imgs/xxxxx.jpg 能不能访问。

通配符注入

搜索框输入 * 号,看看能不能搜索全部

如果可以的话,尝试输入 ' " 单双引号等,引发它报错,可能又是一个物理路径泄露漏洞。

CSRF漏洞

是我容易忽视的漏洞,post csrf不行就 change 成 get 型,使用burp生成csrf payload。

url跳转漏洞

适用burpsuite抓包查看,找到 https://xxx.com/?redirecturl=https://xxx.com/ 等样式的请求。

cors跨域

1.查看响应头

查看ACAO响应头是否为具体的值以及ACAC响应头是否为true,如果是则判断是否对源进行限制

text
1
2
Access-Control-Allow-Origin: http://www.eval.com
Access-Control-Allow-Credentials: true

2.判断是否对源进行限制

我们将Origin修改为任意的站定,查看返回的ACAO头是否变成和我们修改成的站点一样,如果是,则可能存在CORS跨域资源共享。如下修改为baidu,ACAO也变为baidu,可能存在跨域问题

plaintext
1
Origin: https://baidu.com

3.判断是否对Referer值进行校验,或者是否添加token

删除替换token

有token删token,有两个token就替换token,然后发包。

在一次漏洞挖掘中,请求加了token,但是删了token仍然可以访问。

Host头注入

设置Host头,发出请求

plaintext
1
Host: www.baidu.com

返回包中包含如下

plaintext
1
Location: http://baidu.com

或者拼接到html源码中

plaintext
1
<script src="http://www.baidu.com/js/jquery.js"

请求协议未限制

修改请求方法未其他,

响应如下

image-20221101094220007

会话固定

注销后cookies是否有效等

jQuery低版本漏洞

JQuery跨站脚本漏洞

影响版本:

jquery-1.7.1~1.8.3 jquery-1.6.min.js,jquery-1.6.1.min.js,jquery-1.6.2.min.js jquery-1.5所有版本 jquery-1.4所有版本 jquery-1.3所有版本 jquery-1.2所有版本

内网IP地址泄露

内网 ip 硬编码在源码中。

js.map文件没删导致的源码泄露

webpack打包的站点,没删js.map文件,可以还原源码。

多点认证缺陷

同一个账号不应该可以同时登录。

尝试使用两个浏览器登录同一个账号,如果能同时登录,就存在漏洞。

Sql语句泄露

提交请求之后,sql异常,在响应包中返回了sql查询语句,表名和字段等。

测试例子页面泄露

比如Apache Tomcat Examples 页面没删除。

总结

有点水,但不算太水,还有更水的不好意思写出来。

暂时只有这些水漏洞,其他想起来了再补充。