首页
畅所欲言
友情链接
壁纸大全
数据统计
推荐
工具箱
在线白板
Search
1
职教云小助手重构更新,职教云助手最新版下载地址【已和谐】
13,329 阅读
2
职教云-智慧职教,网课观看分析(秒刷网课)
10,944 阅读
3
gradle-5.4.1-all.zip下载
8,841 阅读
4
职教云-智慧职教,签到补签分析(逆天改命系列)
7,830 阅读
5
一个优秀的程序员从写文档开始:免费领14个月语雀云笔记会员
6,870 阅读
学习笔记
Web
Python
转载文章
算法刷题
JS逆向
综合笔记
安卓
物联网
Java
C
资源收集
软件收藏
网络资源
影视专辑
TED英语角
随便写写
随手拍
登录
/
注册
Search
Lan
累计撰写
624
篇文章
累计收到
615
条评论
首页
栏目
学习笔记
Web
Python
转载文章
算法刷题
JS逆向
综合笔记
安卓
物联网
Java
C
资源收集
软件收藏
网络资源
影视专辑
TED英语角
随便写写
随手拍
页面
畅所欲言
友情链接
壁纸大全
数据统计
推荐
工具箱
在线白板
搜索到
14
篇与
的结果
2022-03-14
利用js去除无限debugger
csdn看见的,还别说,挺好用//去除无限debugger Function.prototype.__constructor_back = Function.prototype.constructor ; Function.prototype.constructor = function() { if(arguments && typeof arguments[0]==='string'){ //alert("new function: "+ arguments[0]); if( "debugger" === arguments[0]){ //arguments[0]="consoLe.Log(\"anti debugger\");"; //arguments[0]=";"; return } } return Function.prototype.__constructor_back.apply(this,arguments); }原文链接:https://blog.csdn.net/qq_39799322/article/details/119275806
2022年03月14日
797 阅读
1 评论
0 点赞
2021-12-19
校友邦请求参数加密
function a(e, n) { var c = (65535 & e) + (65535 & n); return (e >> 16) + (n >> 16) + (c >> 16) << 16 | 65535 & c } function t(e, n, c, t, i, o) { return a((u = a(a(n, e), a(t, o))) << (r = i) | u >>> 32 - r, c); var u, r } function i(e, n, c, a, i, o, u) { return t(n & c | ~n & a, e, n, i, o, u) } function o(e, n, c, a, i, o, u) { return t(n & a | c & ~a, e, n, i, o, u) } function u(e, n, c, a, i, o, u) { return t(n ^ c ^ a, e, n, i, o, u) } function r(e, n, c, a, i, o, u) { return t(c ^ (n | ~a), e, n, i, o, u) } function d(e) { for (var n = 1732584193, c = -271733879, t = -1732584194, d = 271733878, h = 0; h < e.length; h += 16) { var s = n, l = c, b = t, k = d; c = r(c = r(c = r(c = r(c = u(c = u(c = u(c = u(c = o(c = o(c = o(c = o(c = i(c = i(c = i(c = i(c, t = i(t, d = i(d, n = i(n, c, t, d, e[h + 0], 7, -680876936), c, t, e[h + 1], 12, -389564586), n, c, e[h + 2], 17, 606105819), d, n, e[h + 3], 22, -1044525330), t = i(t, d = i(d, n = i(n, c, t, d, e[h + 4], 7, -176418897), c, t, e[h + 5], 12, 1200080426), n, c, e[h + 6], 17, -1473231341), d, n, e[h + 7], 22, -45705983), t = i(t, d = i(d, n = i(n, c, t, d, e[h + 8], 7, 1770035416), c, t, e[h + 9], 12, -1958414417), n, c, e[h + 10], 17, -42063), d, n, e[h + 11], 22, -1990404162), t = i(t, d = i(d, n = i(n, c, t, d, e[h + 12], 7, 1804603682), c, t, e[h + 13], 12, -40341101), n, c, e[h + 14], 17, -1502002290), d, n, e[h + 15], 22, 1236535329), t = o(t, d = o(d, n = o(n, c, t, d, e[h + 1], 5, -165796510), c, t, e[h + 6], 9, -1069501632), n, c, e[h + 11], 14, 643717713), d, n, e[h + 0], 20, -373897302), t = o(t, d = o(d, n = o(n, c, t, d, e[h + 5], 5, -701558691), c, t, e[h + 10], 9, 38016083), n, c, e[h + 15], 14, -660478335), d, n, e[h + 4], 20, -405537848), t = o(t, d = o(d, n = o(n, c, t, d, e[h + 9], 5, 568446438), c, t, e[h + 14], 9, -1019803690), n, c, e[h + 3], 14, -187363961), d, n, e[h + 8], 20, 1163531501), t = o(t, d = o(d, n = o(n, c, t, d, e[h + 13], 5, -1444681467), c, t, e[h + 2], 9, -51403784), n, c, e[h + 7], 14, 1735328473), d, n, e[h + 12], 20, -1926607734), t = u(t, d = u(d, n = u(n, c, t, d, e[h + 5], 4, -378558), c, t, e[h + 8], 11, -2022574463), n, c, e[h + 11], 16, 1839030562), d, n, e[h + 14], 23, -35309556), t = u(t, d = u(d, n = u(n, c, t, d, e[h + 1], 4, -1530992060), c, t, e[h + 4], 11, 1272893353), n, c, e[h + 7], 16, -155497632), d, n, e[h + 10], 23, -1094730640), t = u(t, d = u(d, n = u(n, c, t, d, e[h + 13], 4, 681279174), c, t, e[h + 0], 11, -358537222), n, c, e[h + 3], 16, -722521979), d, n, e[h + 6], 23, 76029189), t = u(t, d = u(d, n = u(n, c, t, d, e[h + 9], 4, -640364487), c, t, e[h + 12], 11, -421815835), n, c, e[h + 15], 16, 530742520), d, n, e[h + 2], 23, -995338651), t = r(t, d = r(d, n = r(n, c, t, d, e[h + 0], 6, -198630844), c, t, e[h + 7], 10, 1126891415), n, c, e[h + 14], 15, -1416354905), d, n, e[h + 5], 21, -57434055), t = r(t, d = r(d, n = r(n, c, t, d, e[h + 12], 6, 1700485571), c, t, e[h + 3], 10, -1894986606), n, c, e[h + 10], 15, -1051523), d, n, e[h + 1], 21, -2054922799), t = r(t, d = r(d, n = r(n, c, t, d, e[h + 8], 6, 1873313359), c, t, e[h + 15], 10, -30611744), n, c, e[h + 6], 15, -1560198380), d, n, e[h + 13], 21, 1309151649), t = r(t, d = r(d, n = r(n, c, t, d, e[h + 4], 6, -145523070), c, t, e[h + 11], 10, -1120210379), n, c, e[h + 2], 15, 718787259), d, n, e[h + 9], 21, -343485551), n = a(n, s), c = a(c, l), t = a(t, b), d = a(d, k) } return [n, c, t, d] } function h(e) { for (var n = "0123456789abcdef", c = "", a = 0; a < 4 * e.length; a++) c += n.charAt(e[a >> 2] >> a % 4 * 8 + 4 & 15) + n.charAt(e[a >> 2] >> a % 4 * 8 & 15); return c } <!-- www.lanol.cn lan小站 by:Lan --> function s(e) { for (var n = 1 + (e.length + 8 >> 6), c = new Array(16 * n), a = 0; a < 16 * n; a++) c[a] = 0; for (a = 0; a < e.length; a++) c[a >> 2] |= (255 & e.charCodeAt(a)) << a % 4 * 8; return c[a >> 2] |= 128 << a % 4 * 8, c[16 * n - 2] = 8 * e.length, c } var l = { hexMD5: function(e) { return h(d(s(e))) } }, b = new RegExp("[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]"), k = (new RegExp("[\\u4E00-\\u9FFF]+"), function(e) { var n = ["`", "~", "!", "@", "#", "$", "%", "^", "&", "*", "(", ")", "+", "=", "|", "{", "}", "'", ":", ";", "'", ",", "[", "]", ".", "<", ">", "/", "?", "~", "!", "@", "#", "¥", "%", "…", "…", "&", "*", "(", ")", "—", "—", "+", "|", "{", "}", "【", "】", "‘", ";", ":", "”", "“", "’", "。", ",", "、", "?", '"'], c = ["content", "practicePurpose", "practiceContent", "practiceRequirement", "otherRequirement", "practiceDescript", "securityBook", "file", "uploadJson"]; for (var a in e) { var t = e[a] + ""; t && t.split("").some(function(e, t) { if (-1 < n.indexOf(e)) return -1 == c.indexOf(a) && c.push(a), !0 }) } return c }) <!-- www.lanol.cn lan小站 by:Lan --> function LanEncode(e, n) { for (var c = ["5", "b", "f", "A", "J", "Q", "g", "a", "l", "p", "s", "q", "H", "4", "L", "Q", "g", "1", "6", "Q", "Z", "v", "w", "b", "c", "e", "2", "2", "m", "l", "E", "g", "G", "H", "I", "r", "o", "s", "d", "5", "7", "x", "t", "J", "S", "T", "F", "v", "w", "4", "8", "9", "0", "K", "E", "3", "4", "0", "m", "r", "i", "n"], a = [], t = 0; t < 62; t++) a.push(t + ""); var i = Math.round((new Date).getTime() / 1e3), o = function(e, n) { for (var c, a, t = e.slice(0), i = e.length, o = i - n; i-- > o;) c = t[a = Math.floor((i + 1) * Math.random())], t[a] = t[i], t[i] = c; return t.slice(o) }(a, 20), u = ""; o.forEach(function(e, n) { u += c[e] }); var r = function(e) { if (null == e) return {}; for (var n = Object.keys(e).sort(), c = {}, a = 0; a < n.length; a++) c[n[a]] = e[n[a]]; return c }(e), d = ""; for (var h in r) - 1 != k().indexOf(h) || b.test(r[h]) || null != r[h] && "" !== r[h] && '""' !== r[h] && (d += r[h]); return d += i, d = (d = (d = (d = (d = (d = (d = (d = (d += u).replace(/\s+/g, "")).replace(/\n+/g, "")).replace(/\r+/g, "")).replace(/</g, "")).replace(/>/g, "")).replace(/&/g, "")).replace(/-/g, "")).replace(/\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F]/g, ""), d = encodeURIComponent(d), { md5: d = l.hexMD5(d), tstr: i, iArrStr: o && 0 < o.length ? o.join("_") : "" } }
2021年12月19日
490 阅读
0 评论
2 点赞
2021-09-10
猿人学第四题,雪碧图、样式干扰
两分钟后:里面用到了类似于字体加密,但是是把数字用base64转成了图片,但是有个规律就是每个数字都是固定的base64,然后就可以取到很多数字,然后有一个class用到了MD5和base64加密,最后删除包含这个class的img,就得到了四位数,但是四位数顺序是乱的,然后就需要根据style里面的margin去换位置,最终就可以将正确的数字取出来,如上图,然后再整一整就是下图了Python代码:import base64 import hashlib import parsel import requests pic2num = { 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAcCAYAAACOGPReAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAD0SURBVEhLY5RVUPvPQGXABKUJAA2GvzP3Mry6f5PhzfI4qBhuQNjQqD6Gzxc3Mjxzk2H4CRUiBHAYKs3wP7Gd4evhSwzPWr0ZPvBBhYkEqIaaBzL8nrmS4f3FfQzP6oIY3smwM/yFSpECkAyNY/g2q4PhhZsBwxegy/5BRZlfP2HgIdbfUIAnTD8xCGyuZ5AyW8jATqmhzD9fMwjumsUgbWPKwJu3AipKGkAydC8DZ24sg5SGDQNPei8D01OoMBkAydCnDIyHTkHZlAE8YUo+GDWU+mAEGfq46RCUhQAUGypbZwdlIcBoRFEfjBpKfUADQxkYAKYHOb9g+7HMAAAAAElFTkSuQmCC': 1, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAdCAYAAACqhkzFAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAKCSURBVEhLrZZLaBNRFIb/PDp5SFMxjqVOAjYLNUGUbhI3cdEGwaAgbmopWFIQBEUwFhQVldIqCuqilLoymEVVlCqWuNdVXRk31Y1uTKAQMRI0ycQk453JaWaSJjYPPxjmnJPwcefOuSfROXftlvAfaSAUIIXOITfuR9bBQzQBZfqEEzPgVuPY8uIeuMXPVK2lVnjoCrKzJ5F2mKqSZpi/xGCfCEOfpAKhCkPz+HEpgN9sRVpMoqjcJZMJBSVS0Wfeoz94CkaNVE93wOOqygyZr9i+cBnOwT3YsXe/cvUPDsMxHcPWTOU7MmWbD+m5i5RVUIUKGfQt38DOA0dgufuSauskoYuE0RuchV0jzQ8FIAqUMFShmIB9+jhs559SoQnJKKwLcZgpBVwoTFLIUIXXTsMaqdvhZjz8qBECRYeXog2P3CoJts8UMko2F0UdC90o2ihkcAl1mzoTnnGh0kwyGRhXKWR0IBRQOOZGnjL57RsjFDLaF87MI+1Ru9+ysgSOYpn2hKEovo+71RMjfoJtKkpJhRaFAsozr5C67kOOKvLe2e+cBVfXaZsLhSD+LD3DGluZum8p5RA06tt/C4/exK83D7A2xKNEJT07UfzV0aaHoImQHnFuDGlNv8kja2BkBObF5ieqgdDf8BG3PboAPrBx/tVTN7H9KMTuI+WxVQesIRUHPzWKnndU2ATNCgUUn9TKrB8eY8DbukxGFYZu4+dBVWZZYXPvxC3oKG8VEnqRn1R7rCfBfi/Gahu2VSpC3wRyDiViiOhdDre9snUqwsOCZnqkYHhLYSfIb9n5+psESerq6nvOPMylrLDEa7q3C7L7hrVt0z1Fu9Dor0g3AH8BJlTqZkAngxQAAAAASUVORK5CYII=': 2, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAdCAYAAACqhkzFAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAALaSURBVEhLrZVPSBRRHMe/O+rOuuaUyRoyBlGQfw5lh9xTekg8qIdMKSsQFKRAD0WUROhBCIlSBD1YQsJKQSB1iRa8VRf1Up4UQiNcRVw1nXVdx3V3euP+ZnZmR9EVP/CY3/vx5sPMe+/3nu3suYsKjhGrUCxB5GErNssKERIEyDzlIYOX/MgY+4r0zm5w85ROwCRU2j1Yu+fGhi7ZG072Iau3Bc6BacrE4ejJ6EKgySyzy+yrdptpIKJ8HlbahrHZKFImjnEcIeHU6FuIlfk4U3AJObstH2L9C7hmJKTQKEBg0h7sUE/DJLT5x5FbeRWZ99kcTVFSY9wDR/kN5Pxkn6vBFyPUTjFhEPYjs6YBqYkiE/NIfTeODOqpyEUNFMUwCNmy7bNyJr5M787pfuwxhwfhh+1YhWIxtgWKGXafh6IYSQuVjssIUgxMwdFLIZGc8IEHKxV5iFL3xGg37AnzfnAtu68jUlYFueIa1i4IiFDaOfYa2XcGqRfHKnzlxVzdeepYSZVmkfXyERwfrGWnktQvc7If6T62yrxhVRKwCvX6jTet3KK8C4EiN5Y6hrEw6YV811rLhzwPRSi19dhqqmFCFzvINPzI7rwN51B8ZQ4pNNA4iNW2UgTpVOL835Fb0qz/atL7EEPNyPrm01+MutwIPaUOI3khw9Y5aTggeISu1FN8RCHm5YQX7fQ8qlDk9WpR4eRlinQhW37rDtgXpc1Yz2xrsYtLg4StCHz+iHD1IazVPQgY6hnSLzgGKGbov6y4irHY58W/T13YKS2grIHCGoTfeLHcV4V1w9V6+v0zwz2j78MuSH9uYp2SKhwbnKbvYB5hJjHOmyo7OdIC4ckP6segL5wAb7rR1Jd5dslrzSxLYQeE6/ktXbYVCmJp0YfghpRQKbWPsVVXjs0iEWGBxzalVXhZQtrMFJwj/eCHJigbY2FuFpFI7EJNvvT2wPf3NxRF1QD/AbAv8WdRHzjKAAAAAElFTkSuQmCC': 3, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAbCAYAAACTHcTmAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAHHSURBVEhLrZW9LwNhHMe/WrT10mrKVE2EROIfUAuTTQxMLISBQSxeIjQSTZRIsYgYhYVRIrWzaCxiMjFVoqjWaatPaR9Pe09bbfT6XHKf5Mn9vne9T+55fs/1qhxtnRRqWD1DcLILSR5Nfg+aR495ktHxoyBDiA8WhOVQJaXeKUgtPCggLrXPs6dsxzePSghLU9sjiBh4qICYtG8fUo8Z6UxNXlEvZc+WRUDaC+LpR5SnhssLGHldjopS6l1BpFWuda9XsEwH5KCAstS5iU/WHHkLSbAerAmtl8JvupH0DOCDN8d4e4q6wyc5VKCslHrdCHdwI7mHZXZHrgX4X9r3d9oElvMN1Io9ZJZ/pL1IeIbz06598KFx8UYOgpRI7fg52UWIdzszbev4Mqp4FKVYOrGJSG6Ts27btmZUTTtHQcrWUVpy4otHk39PuNulyFL7GOJ7hXWsCfhgK/mPVAOTstfwaAEhMz9DHmF1zalexyIcbj81UUqh0TBdr9OS7muDDoRAz4ZBxajmN2dggqJrepKE+g8fWFPvXPkeaPDhE0MzaeIrhpfnAGJRSTvp+1sQJBFHOBTUTppOp7LHzM7STGpusvEK+AUL4d3X/AgqvQAAAABJRU5ErkJggg==': 4, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAcCAYAAACOGPReAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAIxSURBVEhLrZU/aBNRHMe/bWKexnoiaSg0FSSCaAfFwT+L7dKloUs7OqRVcHBwcZOCiCAOhk4dxAwdHFRwEEoRSjvoZNqhdDE4tC7aIYmWvOiV1941vnf51dy7S0ou6Qfu+P5+B9/7/e7e+72us+cuVHHE+EzF0jcUzlPQCjyH/itphChUdKub+bcCXv4tVQr7hsp0hmNqWXsob5ek6kWVqUxneNpPw1yfxi+nWo7Y02uIzjkPAuFUWucSrKNqvzEcoUWSAdFNbyewSxJK/SQZEN1U+0kCXaSCopvGGfZJgsv2SQbFY2rI+jqn+Y/ipbYr1dap/WYVWzfra0q98f/nkDDBcWwjj+j7WbC5Fcr6aV6pxG2oEMzAn8EbKDx+ja31jxBytTRCM7WNepVhIWRl6qKEB9tIovDsA8w7fuPWR9/QPezenQAfTmKHUg5iE32To4jkKJYc2r7G5ywiU6PoTWUQK7rKZ0lU7o9TUKN10wPyWUQfLOA0hQrz6jhs0orgporcI0TXXNUacVgkFe2ZSsI/iqT8tG162DBv23RvYICURG4K3xkVmKEZmIOkJWqXhUkrgpsm0tjJjKBCoRqRp+afkK7hMr2I6tgt0g1IXIf94h22l6dRkiPygMjXtzj5kgLCtaOeg3+fQNnR/u1pMaatRUVkYwHxyYfo9pwQTdpncnjol24o0PMpg74Rv6HCZbqC41/y6OG1QeKdpSGZO1HcRGz+FRKpyzgzlaUnXoB/3J2gmVZucHAAAAAASUVORK5CYII=': 5, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAdCAYAAABFRCf7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAANLSURBVEhLrZZNSFRRFMf/48e8UZtRktFkRsiEdCIKVwaikrlJbZG0MEGDwEWUIPaBQoiIZIJGG4mikoyyIBJKW4gbs4W66WOhtlAXzixq/HzGjG/8eN0378yb+5w3qdAPLnPOmXf/nHfvOfc+U+bR4zL+M/sTrW6F71Ih/CfskAQB2xQ2SyLMU5OwPr+HuEEPRfcSddXB96QeK04BOxQyZg7pWedhJi+GfiOp7sHqwC0s7RKMkyQIwaGfzGdmLFrUAbGlFOsC+ZBwaLwfjqoSZOSeQlpw5MBR1oQjw3NIoKdCGLz+Rfgn72PRTq7khr2tFpbX4TWLwJULTM+QY5Cp/PgGlkOCEJHauYegAieosEuUbUyxU1tDy9c3SOzdQ9AAvWh7ObeOblg7u8k+GJyoA4E8FzbJi5mdhGWCnAPCiVZhM5tMRuLsAFkHJyxakcu6hWy2QcL4pGpW3IR/6AsWZ35iYV4dnvkfWBp7C/+dMvWZ3SglFRzPpuR4WZYRHAtyWsFZ2fFhVha0mPEQFkbljALSoBHO1G7V1hMIQG54Cu+FY6zsVcyhTiI/hOQswq9PfdhyUIChiW7bbWQpOLDOBANMMknppLIcpIc6KasEzrYhJIv0KGPHlo/VrlrydBvFI2CDNXfyu+s4fLkVMdMUDuKBqbcRtvr3SA69BsN/phIByjaKKPvDPQLr7THyDPjcDOuwmxNwYaNBtaKKWse7YSI7GqbO70giWyHgVJdAE431covESipuah/t6fkGMzdNsruCv+FMveuIJzMavpMlEItryIskdGaERYc9XLnYsO0kk2Mr1YG1c3XkRZLgVXc0LDoxAYF7lY28yMm20ZfIbCkij5GfD4mrxFhRPQK5jepjR52XbEW0XCuRaOxcO40/ZLP1g+Wj2tqcKHMesZuRbKVEVl506O4eHRU9WCvWTnPEz47BMqjaOlFMNLJSErVgILsSiyMPsJ3Pp5yLnfY+LHeVclm6kdLWrJWgwR1VCGmkB7+z9V2u9H5wErv3uUZiiEh5xZK5G24UfaZBxiBcaUL6lIhYiigEFLFdgjHsUkztrNEJKvz7Y6K6A76rhfA5lS+TUB1KrHQ8SBztR8LDPpgMemR/nz0HAvgL80YzEyuMQpQAAAAASUVORK5CYII=': 6, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAHhSURBVEhLrZY9LANhGMf/PprDVQkxyFXSVCKIwYStiZoqhoqEhTCQWCwiBBEDiUTMBpOJhKQDkw1L1YDFxoSlBi2tlurrrn2uH9xX2/sll/6f4X557n3e903LWhxtDCZSTr/mIXXY4thgjSHGwEp76o7amOkdmih8BHcMlDAULz4DW3htSlf8+RIaJn3Fd8i2ZxAiGeK3sK34UrE4oTCP6JAT31TWneyg8jmdixKyNQ/eOCqCF7AuBKgoRigs48NlR5LK+rP1PEnBwuRmfnf8Kn0rUZhQWEfEJU/if3cSBQmTmwN4o6zUnYRxobh2kb5sd7X+PcWXDQvZohthee3EfWedy042F4PCCXzmTLbGf4hKyn8xJtwYRthGGU/gd9OnQgkDwh7EXB2ZU2G5v0TVFRUK6At7xxCzUxbhb/YoKaMrTM724J2yNIxqha2Si47Qi1hndqtw9wHFYUS7+hF2jaeytnDKi2jGFwfv36GcT6JRQMg9ncqaF+zPwTVe+mi84uc2t4+qbhcZjQ49+GrN7BVYHu50ZRLqwt5BxLLLh6qHfUraqAtHnIhSFG8CcGfa05VRFSZahcxRQ/wZllPKOqgIPfi2yzeBSPAVFRT1UBF2I5GzflzwEWWU9TD5zxLwC1sVsHrJiVs0AAAAAElFTkSuQmCC': 7, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAdCAYAAACqhkzFAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAANtSURBVEhLrZXfS1NhGMe/rumZbR4nOcO2IA1CvQi8UW8y8EJqZCR1IQiKwvRCuiqTfomtkkrqIpN+EFSGNaFECL0IbzQvnH/A6EavNiinJVubO/5a73nPs51zNqf04wPjfJ8X9uV5n/d93ifr8JFjcfxHMhueuYS1dieiFTZIgoAtvihBCAVhnptErvshDAG+qGMHwzJsvh7Cj5MO9vfMGCQ/Ckb6sP/2F1pRMNCXsGPz/Vt8TzEzSiwz/qMFxrbgwEr7I0Tb7LSioDe8OYSVGhHbFOYEZ1DcVIfisuMo4r86ONxTyEsai1jpGcK6xlNj6MRaQznWKTL4p1BU5YLRqy1UAFmvumDtGEN+wlQoR7SnigKd4Qls2EiyDVs/dSGLojRmrsIyF6QAiFQ0ktIaslokspMzMT4gmQFDMEyK1ZO+MqqhL4x9JFn1EK8m+Yeohl4vu2Ok4UCsWa1LOmw3FaWkAbNfvTqaGg4jd86fXAjX34JUS0EK8YGX+FlBARZhfjpJWmfIbnlnHwoX6PiEUiy9mEVkwIV4ubKEWheksVksXSilekvI/9APwcsDTnqn2JsQ81zDikPQFTsdCXmf+2Ht9FCsoMuQE/DAdHkQBeqt2BHz9CDy3XozmZQM7dh+Pozlen3rGViUzRa22COxSWsycj8fcLfA9E69/JoM5T4exTeNWe7CBA6x1rOXKK1XXCK33gSsdBvkfg7eHdX1s5phG8ustxprPJCL3QWxW/+SJLE7Ib25h6WjghKHvCh2tsDIEqUMqxBrT5ixa+3zZDaTCUxCaPXAmtiKWI1f1M+KYXUr1hxcMSRYpvtJ70KgH7k+tdLhGhe/FYphvV1zCHv3cQLjguYlsjn4gSmGooANLv4N+TAUw2AIVF5GIbbaSO7BlqOQFEMK8cdFMRxZhIkLGRGRBhfp3XAhVimSZkbBgMYw8AQmH1ecWGVH2qzQEo3kYfVUGKvqtpA35+EPsmLIDiLn/hQsSsBgs6J3HKHHLYin+p5n47XtLMLP3MleN7DZY+me51rXevE741huLkeM4gQ5bOIp40BgM5qLJAZpEYUdpyHMUKx8FLJunIPtutpaCdZZD8vDPtXM5J/BwUbVTGaHQS9Thu0rF9kUrELEJmKDGSW2J7DTzPbNwzIyiOyPX2lVJYPh3wL8BvLZG6cpuRANAAAAAElFTkSuQmCC': 8, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAcCAYAAABh2p9gAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAMzSURBVEhLpZZPSBRhGMYfV9dpdV3UHDVXIw1KDUwJVy/VLTAVWugQRJqUpxAkFyuMIBMPWRGYiCGGC7J0KCRKL13Si9pBvKiH9NIYoavgqKvjujt9M/OuM+uustUPvpn3edl9eL/3+7Mbl3fqjIxoFDnhb76Bzcoi7No47FI6QRJxbHYKKQOdSPi8RFmdKIZ2BDt6sHazCNuUiY4E67cXSLvtJq1hojdhx57nPX4fMDOxL3OSMiihwmHzchu8njrSGmGGclc/Vit5BEibxEXw7bdgzy9BZqEyziLP5UH6Cn2AsV3ZBF+DnVTYlBuxNe/CGqcpSHPIdl6DeY60EXsdfCNtWLVp0rQyhhOORrU6vcKOamyEzNgUU4fuRTdTWHIj6fUkLCSDfCl2GrR433CvuAB+ipXqLM8iVzCMd29gFSiGDb4rWi/J0IE9fr88QFhEAoWHMwWzIFLMeplbAaV3ZFiIIPXjb4gXvBQx+Ax1MfUeGuEM1cYKZzMauhFv2Arg2X6k8CgCuRkUKaQgWGOo0CwYHLlS+LocJA7B3oKdMmOfOMi8wdDUy84nxQrrtU8h1egbNpyLkAbr9T1rQO/h5EtYJ0Q9wRVguXsYG30tCFwq1HJ2B4KtPdiY6cfyac3NrD4VJMQpk1ROij7uyJk/dmTIcgxjXT7+aUK27OsFOZN56BWqjIOrf4isWRHxlImOiLSh+0iaJqnCKmTPA4aMpREkVpcjx/UWGdOLSBZDNw0booC0iY/IuVoO6+NxoJjXbyVRK+LwCzYGAp7v+FWprbR5dhDZ1Z1RKowZB/y5+rbhhK/qO2bD/FMncb7kHClGRT07vxRDgGVgSo1iNrTZUnChrIQUm26zA5sUm4QZcJNa/G89bHDD+6SCFkRCem8Vkp9r1114hfbDToaBmlcQH4TMgMSFL0giM4Vww2Z2AqaGsd3qpIQB5We1bxTe7mqsh46ctIjU9kfq/gsRPuWuUfy8XkCCrRzbexTBz0yCpBRMzCzDdRfcgd/mIxdFYveiNsLNOGEMWc6qCDOFA4vCbu7WJmzXOrDF21SjEBz7x2Bm/xisQ90wf5inbCT/dVIiAf4ApbEnkB6qHqsAAAAASUVORK5CYII=': 9, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAdCAYAAACqhkzFAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAMTSURBVEhLrZY/TBNRHMe/bY82LeGA0Dp4NTGYqO1gdKEMwmQcGh38M5CQlGDSwWiMAwwYg2iCJsZJQ9CJ0ETsQMJgwuagLIUFXIAFXNoYcqDloLRXrq3v7v3aXktbSPCTXO77fZRvf/feu9+r5dz5iwX8R+oESigMPka6/wb2vSJUBx+1QoVD3kTz7DScb+f4YBVHA6U+ZKLPsON1IE9DtbDLP9AxEIawRgOEle4cKYSD+ZeQq8IcKquMXTbyOllPL7aiEWgSDRCmQAnahyHsiGQZruUvkIKXcObyFeM62zcOd1ylvwJ5MYDkuxA5Tjlw8A2S12iyGM7YODrujsFqfqTFCJw9L+CWyTPS3QPIBMgwKFBC9n4AaW4AdQVtQxEy1czBObkIJznAi9TDO6SLgVIYqt9QBq5YFEKCTC2momg2VXngD5bmnAc+uIqUIXQUOL/X3hJl5mHfUEgzPJ04pMUxAnN+CYeG1UlAmCLZANtqAk2kARG5m1zxQI9paWUZAsmGsArLnxOh0ZSxwCBypjwo2zQPxzCTgJ2kTtbbZ9zZ/7pRKO8WOOWqrX9iePyJiqnNGgTTuhRhgT5o5kc+JaeosDYssHbpx+OtXEziSIWqx0fqOFpg7ns2Zd24s8B1WE0V5h2mJW/ELTc0kjo2Zcm4s8ClikCIlR+si59tZpL66yosc2U8clM8bhgDkfVFUzuqR569rqXOqG7CPsOlEWiJJSraUaa/i3Q9upC94CHNCtr4WXoN+aJMzcFlakd73eGG5wnuhZHykmZ1tnx9TboYqDfNWLxoWDvqhfK+h0w1Pcg87cUBOavMmu1HMoxShuXJNNpNi7N3ewLJTyEUzIdQIIT0wgQ7EcmzxWifZMcEOZ3KY3Qwgp3RQOnbOfqJx5XGtlSOS4aK1tlHEIcXyHNsrW0dY6SBFX0ufShc70S21OwE5AR+lb+ZVfb5OVpGviGTTkHeSmBfScJqtdX55SAFoY0OsMXxISM6SvvNrshwrS7A9WoENupyv+O/oGm831sslno/RU6OsvsHu3+3yQH/AOyW6SvqnweCAAAAAElFTkSuQmCC': 0, } margin2num = { 'left:11.5px': 1, 'left:-11.5px': -1, 'left:-23.0px': -2, 'left:23.0px': 2, 'left:34.5px': 3, 'left:-34.5px': -3, 'left:0.0px': 0, 'left:0px': 0, } headers = { 'user-agent': 'yuanrenxue.project' } result = 0 for page in range(1, 6): response = requests.get(f'https://match.yuanrenxue.com/api/match/4?page={page}', headers=headers).json() delElClass = hashlib.md5(base64.b64encode(f"{response['key']}{response['value']}".encode('utf-8')).decode() .replace('=', '').encode('utf-8')).hexdigest() tds = parsel.Selector(response['info']) for td in tds.xpath('//td'): imageClass = td.xpath('img/@class').extract() imageSrc = td.xpath('img/@src').extract() imageStyle = td.xpath('img/@style').extract() num = [] change = [] for index, value in enumerate(imageClass): if delElClass not in value: change.append(margin2num[imageStyle[index]]) num.append(str(pic2num[imageSrc[index]])) source = num.copy() for i, c in enumerate(change): if c != 0: num[i + c] = source[i] result += int(''.join(num)) print(result)
2021年09月10日
807 阅读
0 评论
2 点赞
2021-09-04
JS逆向之MD5加密
这两天碰到了两个MD5加密的js逆向,一个是猿人学第一题,还有一个就是在工作中。然后发现了些规律,一般MD5加密之后的字符串是32位,也有16位,这基本都知道但是在MD5加密的js代码中也有一些规律。这是我昨天在猿人学里面获取到的MD5加密代码var hexcase = 0; var b64pad = ""; var chrsz = 16; function hex_md5(a) { return binl2hex(core_md5(str2binl(a), a.length * chrsz)) } function b64_md5(a) { return binl2b64(core_md5(str2binl(a), a.length * chrsz)) } function str_md5(a) { return binl2str(core_md5(str2binl(a), a.length * chrsz)) } function hex_hmac_md5(a, b) { return binl2hex(core_hmac_md5(a, b)) } function b64_hmac_md5(a, b) { return binl2b64(core_hmac_md5(a, b)) } function str_hmac_md5(a, b) { return binl2str(core_hmac_md5(a, b)) } function md5_vm_test() { return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72" } function core_md5(p, k) { p[k >> 5] |= 128 << ((k) % 32); p[(((k + 64) >>> 9) << 4) + 14] = k; var o = 1732584193; var n = -271733879; var m = -1732584194; var l = 271733878; for (var g = 0; g < p.length; g += 16) { var j = o; var h = n; var f = m; var e = l; o = md5_ff(o, n, m, l, p[g + 0], 7, -680976936); l = md5_ff(l, o, n, m, p[g + 1], 12, -389564586); m = md5_ff(m, l, o, n, p[g + 2], 17, 606105819); n = md5_ff(n, m, l, o, p[g + 3], 22, -1044525330); o = md5_ff(o, n, m, l, p[g + 4], 7, -176418897); l = md5_ff(l, o, n, m, p[g + 5], 12, 1200080426); m = md5_ff(m, l, o, n, p[g + 6], 17, -1473231341); n = md5_ff(n, m, l, o, p[g + 7], 22, -45705983); o = md5_ff(o, n, m, l, p[g + 8], 7, 1770035416); l = md5_ff(l, o, n, m, p[g + 9], 12, -1958414417); m = md5_ff(m, l, o, n, p[g + 10], 17, -42063); n = md5_ff(n, m, l, o, p[g + 11], 22, -1990404162); o = md5_ff(o, n, m, l, p[g + 12], 7, 1804660682); l = md5_ff(l, o, n, m, p[g + 13], 12, -40341101); m = md5_ff(m, l, o, n, p[g + 14], 17, -1502002290); n = md5_ff(n, m, l, o, p[g + 15], 22, 1236535329); o = md5_gg(o, n, m, l, p[g + 1], 5, -165796510); l = md5_gg(l, o, n, m, p[g + 6], 9, -1069501632); m = md5_gg(m, l, o, n, p[g + 11], 14, 643717713); n = md5_gg(n, m, l, o, p[g + 0], 20, -373897302); o = md5_gg(o, n, m, l, p[g + 5], 5, -701558691); l = md5_gg(l, o, n, m, p[g + 10], 9, 38016083); m = md5_gg(m, l, o, n, p[g + 15], 14, -660478335); n = md5_gg(n, m, l, o, p[g + 4], 20, -405537848); o = md5_gg(o, n, m, l, p[g + 9], 5, 568446438); l = md5_gg(l, o, n, m, p[g + 14], 9, -1019803690); m = md5_gg(m, l, o, n, p[g + 3], 14, -187363961); n = md5_gg(n, m, l, o, p[g + 8], 20, 1163531501); o = md5_gg(o, n, m, l, p[g + 13], 5, -1444681467); l = md5_gg(l, o, n, m, p[g + 2], 9, -51403784); m = md5_gg(m, l, o, n, p[g + 7], 14, 1735328473); n = md5_gg(n, m, l, o, p[g + 12], 20, -1921207734); o = md5_hh(o, n, m, l, p[g + 5], 4, -378558); l = md5_hh(l, o, n, m, p[g + 8], 11, -2022574463); m = md5_hh(m, l, o, n, p[g + 11], 16, 1839030562); n = md5_hh(n, m, l, o, p[g + 14], 23, -35309556); o = md5_hh(o, n, m, l, p[g + 1], 4, -1530992060); l = md5_hh(l, o, n, m, p[g + 4], 11, 1272893353); m = md5_hh(m, l, o, n, p[g + 7], 16, -155497632); n = md5_hh(n, m, l, o, p[g + 10], 23, -1094730640); o = md5_hh(o, n, m, l, p[g + 13], 4, 681279174); l = md5_hh(l, o, n, m, p[g + 0], 11, -358537222); m = md5_hh(m, l, o, n, p[g + 3], 16, -722881979); n = md5_hh(n, m, l, o, p[g + 6], 23, 76029189); o = md5_hh(o, n, m, l, p[g + 9], 4, -640364487); l = md5_hh(l, o, n, m, p[g + 12], 11, -421815835); m = md5_hh(m, l, o, n, p[g + 15], 16, 530742520); n = md5_hh(n, m, l, o, p[g + 2], 23, -995338651); o = md5_ii(o, n, m, l, p[g + 0], 6, -198630844); l = md5_ii(l, o, n, m, p[g + 7], 10, 11261161415); m = md5_ii(m, l, o, n, p[g + 14], 15, -1416354905); n = md5_ii(n, m, l, o, p[g + 5], 21, -57434055); o = md5_ii(o, n, m, l, p[g + 12], 6, 1700485571); l = md5_ii(l, o, n, m, p[g + 3], 10, -1894446606); m = md5_ii(m, l, o, n, p[g + 10], 15, -1051523); n = md5_ii(n, m, l, o, p[g + 1], 21, -2054922799); o = md5_ii(o, n, m, l, p[g + 8], 6, 1873313359); l = md5_ii(l, o, n, m, p[g + 15], 10, -30611744); m = md5_ii(m, l, o, n, p[g + 6], 15, -1560198380); n = md5_ii(n, m, l, o, p[g + 13], 21, 1309151649); o = md5_ii(o, n, m, l, p[g + 4], 6, -145523070); l = md5_ii(l, o, n, m, p[g + 11], 10, -1120210379); m = md5_ii(m, l, o, n, p[g + 2], 15, 718787259); n = md5_ii(n, m, l, o, p[g + 9], 21, -343485551); o = safe_add(o, j); n = safe_add(n, h); m = safe_add(m, f); l = safe_add(l, e) } return Array(o, n, m, l) } function md5_cmn(h, e, d, c, g, f) { return safe_add(bit_rol(safe_add(safe_add(e, h), safe_add(c, f)), g), d) } function md5_ff(g, f, k, j, e, i, h) { return md5_cmn((f & k) | ((~f) & j), g, f, e, i, h) } function md5_gg(g, f, k, j, e, i, h) { return md5_cmn((f & j) | (k & (~j)), g, f, e, i, h) } function md5_hh(g, f, k, j, e, i, h) { return md5_cmn(f ^ k ^ j, g, f, e, i, h) } function md5_ii(g, f, k, j, e, i, h) { return md5_cmn(k ^ (f | (~j)), g, f, e, i, h) } function core_hmac_md5(c, f) { var e = str2binl(c); if (e.length > 16) { e = core_md5(e, c.length * chrsz) } var a = Array(16), d = Array(16); for (var b = 0; b < 16; b++) { a[b] = e[b] ^ 909522486; d[b] = e[b] ^ 1549556828 } var g = core_md5(a.concat(str2binl(f)), 512 + f.length * chrsz); return core_md5(d.concat(g), 512 + 128) } function safe_add(a, d) { var c = (a & 65535) + (d & 65535); var b = (a >> 16) + (d >> 16) + (c >> 16); return (b << 16) | (c & 65535) } function bit_rol(a, b) { return (a << b) | (a >>> (32 - b)) } function str2binl(d) { var c = Array(); var a = (1 << chrsz) - 1; for (var b = 0; b < d.length * chrsz; b += chrsz) { c[b >> 5] |= (d.charCodeAt(b / chrsz) & a) << (b % 32) } return c } function binl2str(c) { var d = ""; var a = (1 << chrsz) - 1; for (var b = 0; b < c.length * 32; b += chrsz) { d += String.fromCharCode((c[b >> 5] >>> (b % 32)) & a) } return d } function binl2hex(c) { var b = hexcase ? "0123456789ABCDEF" : "0123456789abcdef"; var d = ""; for (var a = 0; a < c.length * 4; a++) { d += b.charAt((c[a >> 2] >> ((a % 4) * 8 + 4)) & 15) + b.charAt((c[a >> 2] >> ((a % 4) * 8)) & 15) } return d } function binl2b64(d) { var c = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var f = ""; for (var b = 0; b < d.length * 4; b += 3) { var e = (((d[b >> 2] >> 8 * (b % 4)) & 255) << 16) | (((d[b + 1 >> 2] >> 8 * ((b + 1) % 4)) & 255) << 8) | ((d[b + 2 >> 2] >> 8 * ((b + 2) % 4)) & 255); for (var a = 0; a < 4; a++) { if (b * 8 + a * 6 > d.length * 32) { f += b64pad } else { f += c.charAt((e >> 6 * (3 - a)) & 63) } } } return f }; window.f = hex_md5(mwqqppz)然后这是今天我发现的一个MD5加密代码define("sc-list/m/compare-full-layout/src/js/md5.js", [], function(require, e, t) { t.exports = function() { var e = 0; var t = ""; var i = 8; function a(e) { return w(u(y(e), e.length * i)) } function s(e) { return x(u(y(e), e.length * i)) } function n(e) { return _(u(y(e), e.length * i)) } function r(e, t) { return w(g(e, t)) } function o(e, t) { return x(g(e, t)) } function l(e, t) { return _(g(e, t)) } function c() { return a("abc") == "900150983cd24fb0d6963f7d28e17f72" } function u(e, t) { e[t >> 5] |= 128 << t % 32; e[(t + 64 >>> 9 << 4) + 14] = t; var i = 1732584193; var a = -271733879; var s = -1732584194; var n = 271733878; for (var r = 0; r < e.length; r += 16) { var o = i; var l = a; var c = s; var u = n; i = h(i, a, s, n, e[r + 0], 7, -680876936); n = h(n, i, a, s, e[r + 1], 12, -389564586); s = h(s, n, i, a, e[r + 2], 17, 606105819); a = h(a, s, n, i, e[r + 3], 22, -1044525330); i = h(i, a, s, n, e[r + 4], 7, -176418897); n = h(n, i, a, s, e[r + 5], 12, 1200080426); s = h(s, n, i, a, e[r + 6], 17, -1473231341); a = h(a, s, n, i, e[r + 7], 22, -45705983); i = h(i, a, s, n, e[r + 8], 7, 1770035416); n = h(n, i, a, s, e[r + 9], 12, -1958414417); s = h(s, n, i, a, e[r + 10], 17, -42063); a = h(a, s, n, i, e[r + 11], 22, -1990404162); i = h(i, a, s, n, e[r + 12], 7, 1804603682); n = h(n, i, a, s, e[r + 13], 12, -40341101); s = h(s, n, i, a, e[r + 14], 17, -1502002290); a = h(a, s, n, i, e[r + 15], 22, 1236535329); i = p(i, a, s, n, e[r + 1], 5, -165796510); n = p(n, i, a, s, e[r + 6], 9, -1069501632); s = p(s, n, i, a, e[r + 11], 14, 643717713); a = p(a, s, n, i, e[r + 0], 20, -373897302); i = p(i, a, s, n, e[r + 5], 5, -701558691); n = p(n, i, a, s, e[r + 10], 9, 38016083); s = p(s, n, i, a, e[r + 15], 14, -660478335); a = p(a, s, n, i, e[r + 4], 20, -405537848); i = p(i, a, s, n, e[r + 9], 5, 568446438); n = p(n, i, a, s, e[r + 14], 9, -1019803690); s = p(s, n, i, a, e[r + 3], 14, -187363961); a = p(a, s, n, i, e[r + 8], 20, 1163531501); i = p(i, a, s, n, e[r + 13], 5, -1444681467); n = p(n, i, a, s, e[r + 2], 9, -51403784); s = p(s, n, i, a, e[r + 7], 14, 1735328473); a = p(a, s, n, i, e[r + 12], 20, -1926607734); i = f(i, a, s, n, e[r + 5], 4, -378558); n = f(n, i, a, s, e[r + 8], 11, -2022574463); s = f(s, n, i, a, e[r + 11], 16, 1839030562); a = f(a, s, n, i, e[r + 14], 23, -35309556); i = f(i, a, s, n, e[r + 1], 4, -1530992060); n = f(n, i, a, s, e[r + 4], 11, 1272893353); s = f(s, n, i, a, e[r + 7], 16, -155497632); a = f(a, s, n, i, e[r + 10], 23, -1094730640); i = f(i, a, s, n, e[r + 13], 4, 681279174); n = f(n, i, a, s, e[r + 0], 11, -358537222); s = f(s, n, i, a, e[r + 3], 16, -722521979); a = f(a, s, n, i, e[r + 6], 23, 76029189); i = f(i, a, s, n, e[r + 9], 4, -640364487); n = f(n, i, a, s, e[r + 12], 11, -421815835); s = f(s, n, i, a, e[r + 15], 16, 530742520); a = f(a, s, n, i, e[r + 2], 23, -995338651); i = m(i, a, s, n, e[r + 0], 6, -198630844); n = m(n, i, a, s, e[r + 7], 10, 1126891415); s = m(s, n, i, a, e[r + 14], 15, -1416354905); a = m(a, s, n, i, e[r + 5], 21, -57434055); i = m(i, a, s, n, e[r + 12], 6, 1700485571); n = m(n, i, a, s, e[r + 3], 10, -1894986606); s = m(s, n, i, a, e[r + 10], 15, -1051523); a = m(a, s, n, i, e[r + 1], 21, -2054922799); i = m(i, a, s, n, e[r + 8], 6, 1873313359); n = m(n, i, a, s, e[r + 15], 10, -30611744); s = m(s, n, i, a, e[r + 6], 15, -1560198380); a = m(a, s, n, i, e[r + 13], 21, 1309151649); i = m(i, a, s, n, e[r + 4], 6, -145523070); n = m(n, i, a, s, e[r + 11], 10, -1120210379); s = m(s, n, i, a, e[r + 2], 15, 718787259); a = m(a, s, n, i, e[r + 9], 21, -343485551); i = v(i, o); a = v(a, l); s = v(s, c); n = v(n, u) } return Array(i, a, s, n) } function d(e, t, i, a, s, n) { return v(b(v(v(t, e), v(a, n)), s), i) } function h(e, t, i, a, s, n, r) { return d(t & i | ~t & a, e, t, s, n, r) } function p(e, t, i, a, s, n, r) { return d(t & a | i & ~a, e, t, s, n, r) } function f(e, t, i, a, s, n, r) { return d(t ^ i ^ a, e, t, s, n, r) } function m(e, t, i, a, s, n, r) { return d(i ^ (t | ~a), e, t, s, n, r) } function g(e, t) { var a = y(e); if (a.length > 16) a = u(a, e.length * i); var s = Array(16) , n = Array(16); for (var r = 0; r < 16; r++) { s[r] = a[r] ^ 909522486; n[r] = a[r] ^ 1549556828 } var o = u(s.concat(y(t)), 512 + t.length * i); return u(n.concat(o), 512 + 128) } function v(e, t) { var i = (e & 65535) + (t & 65535); var a = (e >> 16) + (t >> 16) + (i >> 16); return a << 16 | i & 65535 } function b(e, t) { return e << t | e >>> 32 - t } function y(e) { var t = Array(); var a = (1 << i) - 1; for (var s = 0; s < e.length * i; s += i) t[s >> 5] |= (e.charCodeAt(s / i) & a) << s % 32; return t } function _(e) { var t = ""; var a = (1 << i) - 1; for (var s = 0; s < e.length * 32; s += i) t += String.fromCharCode(e[s >> 5] >>> s % 32 & a); return t } function w(t) { var i = e ? "0123456789ABCDEF" : "0123456789abcdef"; var a = ""; for (var s = 0; s < t.length * 4; s++) { a += i.charAt(t[s >> 2] >> s % 4 * 8 + 4 & 15) + i.charAt(t[s >> 2] >> s % 4 * 8 & 15) } return a } function x(e) { var i = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var a = ""; for (var s = 0; s < e.length * 4; s += 3) { var n = (e[s >> 2] >> 8 * (s % 4) & 255) << 16 | (e[s + 1 >> 2] >> 8 * ((s + 1) % 4) & 255) << 8 | e[s + 2 >> 2] >> 8 * ((s + 2) % 4) & 255; for (var r = 0; r < 4; r++) { if (s * 8 + r * 6 > e.length * 32) a += t; else a += i.charAt(n >> 6 * (3 - r) & 63) } } return a } return a }() });且不看第一行,毕竟第一行直接表示他引用了MD5加密了。。。一对比发现,里面除了变量名改了一下,不能说很像,只能说一模一样。比如都有一个验证md5的function md5_vm_test() { return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72" }abc都一样。。。感觉大概看一下,基本上以后看到MD5都能发现了
2021年09月04日
533 阅读
0 评论
0 点赞
2021-09-03
JS逆向之跳过无限Debugger,搞定反调试之无限debugger
咳咳,今天上班的时候,有位大佬在钉钉群里发了一个链接,随后就撤回了,但还是被我看见了,便点进去看了一下然后回到首页,一看。哦吼,这不就激起我的好奇心了嘛。然后点进第一题。。。就开始了我的摸鱼之旅,搞了一上午总算把第一题弄出来了,只能说我还是太菜了。然后其中有一个无限Debugger,我最一开始是关掉了调试。然后找到了接口,看了一个参数m,不调试不行呀,然后我想到用Burpsuite在页面加载之前就把这两行引用代码干掉。发现不太行,页面一刷新他就又回来了,然后我想到反正只要不加载就行了,好像浏览器里面自带一个block request url右键这个js请求,然后block request url就可以了。搞定,但是好像此方法仅限于js中没有重要代码的。
2021年09月03日
532 阅读
0 评论
0 点赞
2021-07-22
解密软协活动,红包口令在这里
昨天发布了一个活动, 软协有奖挑战:红包口令在哪里 然后直到结束也没有人解出来,其实我提示过图片不一定是图片。然后解密过程如下:首先看到这张照片,可能有些人直接就只在图片上面找东西,其实不然。 我们把这张图片保存到本地。然后将后缀名改为zip,你以为是张图片,其实他是个压缩包。里面有一张二维码,扫码之后,进入到一个网址:https://sing.lanol.cn/challenge然后查看该网页源代码。可以看到一串隐藏的md5加密字符串:1BC9A57281DB4721E24D2901E9FE2D98拿去解密可以得到一个日期,这个为软件技术协会创立日期。这个时候,把这个数字发送到上面那个网页中的公众号里面即可得到红包口令。
2021年07月22日
349 阅读
0 评论
0 点赞
2021-04-24
强智教务系统登陆JS逆向
去年这个时候,好像就研究过我们学校的教务系统登陆,当初不知道啥原因弄了一下就放弃了今天又试了一下,发现挺容易的,然后用Python实现了一下。登陆成功后,获取课表
2021年04月24日
828 阅读
0 评论
0 点赞
1
2