面向SRC的漏洞挖掘总结

参考资料

https://www.ichunqiu.com/course/58321
我的白帽学(ru)习(keng)之路-北风飘然

区别

面向SRC的漏洞挖掘与传统渗透测试相比,关注的漏洞侧重略有不同。
渗透方面,侧重关注命令执行、XSS、SQL注入等,能进一步推进到getshell层面的漏洞,而面向SRC的漏洞挖掘,不仅关注getshell,还关注业务逻辑方面,对可能造成业务损失(薅羊毛)或者用户信息泄漏的漏洞也进行收集(这些漏洞对getshell而言帮助并不大)。

战略层面

对于大厂主要关注边缘业务
尤其是新上线的边缘业务,通常有较多漏洞。
核心业务一般比较难找,但是可以多关注移动端,安卓/iOS/h5

(甲方经验)
漏洞修复后版本迭代可能还会出现
边缘业务漏洞越少可能越不安全(未被人发现的宝藏)
App、微信、wap、弱口令不容忽视
挖到后回头梳理一边业务逻辑可能还有类似的
业务线越长漏洞越多
不要放过每一个参数

信息收集

  1. robots.txt
  2. google hacking 看信息泄漏
  3. Netcraft
  4. Wappalyzer (web框架指纹)
  5. whois
    http://www.5118.com/seo/whois/
  6. harvester
  7. 白帽汇 Nosec 资产收集 邮箱与子域名
  8. 5118子域名 / DNSDB
  9. 子域名枚举/域转移

有需要的话查 web archive

其他针对SRC特殊的信息收集

App
公众号

各厂商业务线常见漏洞分类

越权类

乌云drops - 小川 我的越权之道
http://static.hx99.net/static/drops/tips-727.html

常见越权点
查看我的订单 已完成/未完成/已取消
前往支付的页面
下载账单/打印账单
个人中心
提交订单
订单确认
编辑已有地址
添加新地址

枚举类/爆破类

无验证码/验证码过于简单/验证码未刷新

如找回密码处可枚举潜在的帐号

边缘登录机制访问频率未设防,比如,
1,公众号绑定帐号时接口未做访问限制
2,App接口
3,分站登录处 (这样看单点登录SSO是个好主意?)
4,老旧登录接口 webqq什么的

短信验证码接口 轰炸

验证码回传 双开

逻辑漏洞

登录类

绕过登录
各种抓包改包

密码重置

drops 密码找回逻辑漏洞总结
http://static.hx99.net/static/drops/web-5048.html

密码重置
密码找回
任意用户注册
修改手机号/Email

支付类

在线支付逻辑漏洞总结
http://static.hx99.net/static/drops/papers-345.html

总价改负数或0.01
单个商品改负数价格导致总价降低

步骤类

各种强行跳过步骤

跳转类

1
2
@符号
www.ly.com@baidu.com

XSS

说到xss一定要提 gainover (pkav) 和 heige (知道创宇).

平台
xssnow
http://xssnow.com/
xsstv
http://xss.tv

安全文库 微信公众号
XSS挑战之旅(前五关)讲解​
XSS挑战之旅(其余关卡讲解)

xss常见payload
反射型一般主站收

常见位置
多注意交互点
提交表单带HTML处
提交客服/留言反馈 (盲打后台)
个人信息/个人资料 (一般很多人都会测这里)
搜索栏 (反射型)
见框就插(解决部分过滤的办法?)
头像处xss

CSRF

只要没有唯一标识、用户输入的参数可控不唯一,
没有csrftoken或者csrftoken无作用

潜在位置
订阅处
评论处
添加用户
密码修改
资料修改
删除
订单操作

上传漏洞

文件后缀 白名单与黑名单问题
黑名单容易被绕过
前端限制(抓包修改绕过)
扩展名检查(nginx解析漏洞)
content-type (burp突破)
文件头 (图片木马)
其他(waf缺陷)

命令执行

黑盒测试难度较大

要求参数可控并在处理过程中有玩儿提
比如 python 的 os.system
或 php 的 eval()

做fuzzing

SQL 注入

考虑到 WAF 逐渐成熟,就算有也很难利用
需要过WAF的payload

如何判断数据库类型
fuzzing payload/tamper script

sqlmap os-shell 编码问题