2020-01-05:因为学信网原手机密码加密位数从4为改成了6位,所以现在破解速度较慢,相当于要破解999999个号码,按照每个号码平均耗时110ms,那么
最大破解时间大约为30小时,如果你知道一个大概的范围,可以调整起始参数值来缩小范围减少破解时间。
----------------------------
好吧,之前写了一篇学信网暴力找回原遗忘手机号码的文章,没想到有很多网友给我留言说脚本有问题,我想也许是我的脚本太过复杂,于是抽空又写了一个更简单的脚本来帮助大家。
废话不多说了,看步骤吧:
1. 使用 Firfox 或者 Chrome 浏览器登录学信网(https://my.chsi.com.cn/archive/index.jsp),打开页面“个人中心>>账号”,如图;
2. 打开控制台面板(快捷键F12),在Console面板中的命令栏中贴入一下代码,修改前两行代码的参数值,然后回车等待代码执行;
const mphone = "";// 你的新电话号码
const pincode = "";//验证码
const $setPhone = $("#setPhone");
const encodedPhone = $setPhone.find("strong").text();
const source = {requesting: false, start: 0, completed: false};
const form = (function () {
let form = {};
$setPhone.find("input[name]").each(function (i, input) {
form[input.name] = input.value
})
form["mphone"] = mphone;
form["pincode"] = pincode;
return form;
})();
const encoded = (function () {
const encoded = {
encodedCharCount: 0,
encodedCharString: "",
decodedCharString: ""
};
encodedPhone.replace(/\*/g, function (v) {
return "*" === v ? (encoded.encodedCharCount++, encoded.encodedCharString += v, encoded.decodedCharString += "0", "0") : v
})
return encoded;
})()
const max = Math.pow(10, encoded.encodedCharCount);
const request = (function () {
let ajax = function (v) {
let data = $.extend(true, {}, form);
let d = data["oldMobilePhone"] = encodedPhone.replace(encoded.encodedCharString, (encoded.decodedCharString + v).slice(-1 * encoded.encodedCharCount));
let success = false;
$.ajax({
url: "domodifymobilephone.action",
type: "post",
data: data,
async: false,
success: function (html) {
if (html.indexOf("原手机号码有误") >= 0) {
success = false;
console.log(v + ": failed > " + d + " - 原手机号码有误")
} else if (html.indexOf("验证码不正确") >= 0) {
success = false;
console.log(v + ": failed > " + d + " - 验证码不正确")
} else {
success = true;
console.log(v + ": success > the old mobile phone is %c" + d, "color: #43bb88;font-size: 24px;font-weight: bold;text-decoration: underline;")
}
}
})
return success;
}
return function (start) {
do {
if (ajax(start)) break;
} while (++start < max);
}
})()
// 如果你知道一个大概的范围,可以设置这个初始参数0
request(0)
3. 当控制台面板打印出绿色字体后结束,绿色字体显示的电话号码就是原手机号码。
PS:这个方法只是找回原手机号码,并不是修改手机号码,找回手机号码后需要自行修改。







评论