企鹅邮箱添加黑名单绕过
Nov. 7, 2018, 8:05 p.m.
read: 920
0x00 起因
被系统垃圾邮件骚扰,遂添加至黑名单
很恶心的事情,企鹅邮箱(含企业邮箱)添加黑名单 10000[AT]qq[DOT]com是无法添加的,见下图
0x01 分析
添加此邮箱时,我们未发现网络请求,应该是前端实现,就是不知道有无后端校验,分析之
分析js找到如下代码
function checkmyMail(_asEmail,_oInput)
{
if (_asEmail == "")
{
showError("添加的内容不能为空");
return -1;
}
if( _asEmail.length > 127 ) {
showError("您输入的邮件地址过长,请重新输入");
return -2;
}
if ( _asEmail == "10000@qq.com")
{
showError("不支持把QQ系统邮件发件人加入黑名单中");
return -3;
}
if ( _asEmail.match(/^[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/) )
{
return 1;
}
if ( _asEmail.match(/^\*@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+/) )
{
_oInput.value = _asEmail.substring(2);
return 2;
}
if (_asEmail.match(/^[\.a-zA-Z0-9_=-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/))
{
return 3;
}
showError("您输入的邮箱地址不正确,请重新输入");
return -4;
};
0x02 解决
见上面15行,分析两次正常提交黑名单的请求,然后就可以造一个请求直接提交,如果没有后端校验的话,然后。。。
绕过成功!