V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  imdong  ›  全部回复第 85 页 / 共 110 页
回复总数  2196
1 ... 81  82  83  84  85  86  87  88  89  90 ... 110  
2019-09-02 23:29:22 +08:00
回复了 imdong 创建的主题 问与答 有哪些可以放家里很久又容易加工制作的食物?
感谢大佬们推荐,感觉又开发了不少心食材。

至于料理包,感觉干净,冻肉之类的确实可以考虑下。
2019-09-02 21:21:08 +08:00
回复了 smallSoda 创建的主题 程序员 ssh 登陆管理小工具
虽然我也认为用 `.ssh/config` 挺好的。

但是,也许人家有些原生无法实现的需求呢?..
2019-09-02 20:56:44 +08:00
回复了 weiruanniubi 创建的主题 Blogger 折腾了一下午把博客搬到国内来了……
呦,老乡你怕不是用的家里的宽带啊?
我怎么记得家里的宽带是动态 IP 啊?
@smilev587 文章末尾有博客链接,博客末尾有下载地址。
@the7 就是没底线...
2019-09-02 00:08:41 +08:00
回复了 xiaotuzi 创建的主题 程序员 关于源码保密性及仿篡改方案的思考
如果,把你检测被更改的代码干掉了呢。
脚本语言的话,人肉跑一下代码,就搞定了。
编译语言的话,基本上 od 加断点或者直接跳过你的检测...

对于客户端的保密性,只能说提高到能破解但没有意义为止。
@watzds 额,道理是这样,可是这个没有入口,真实代码就在中间,掐头去尾就能用了...
但是真实代码中间又混杂了一些花指令。

@fenghuang 是我的博客不能访问么?能给下网络情况么?
@auchan 讲道理,需要混淆的混淆也没用,没必要混淆的根本杞人忧天...
至于 SecurityWorker 这个代码,那是真的大牛代码,惹不起...
都上升到 VM 了,我等辣鸡瑟瑟发抖,不敢缩话。
@zsx 本帖说的 sojson.v5 和 jshaman、obfuscator 应该是 师出同门。

因为加(hun)密(xiao)的原理都一模一样,几乎可以断定是同一套代码出来的。
@cy97cool 卧槽,我怎么看着这俩的加密的核心思路是一毛一样的么?
只是这个 sojson 自己又包了一点而已?
@shanlan 嗯 我感觉可以,先去陪女朋友玩游戏,等下抽时间缕缕思路试下写写过程。
2019-08-31 10:31:58 +08:00
回复了 justlgx 创建的主题 健康 小手指进了根仙人掌刺应该挂什么科?
直接去附近的诊所即可,医生会拿一个很大的针头帮你取。
会先用棉球对指尖进行消毒...然后...
啊,什么?消毒?哦没有,假装消毒的时候就已经迅速给你把肉挖出来了...
然后你看到他弄完了,才会感觉到疼...
2019-08-30 02:26:34 +08:00
回复了 autoxbc 创建的主题 JavaScript 一种高效的网页预读方法
曾经,某些浏览器自动预读下一页加速...
后来,听说预读了删除按钮,就没怎么见过这个功能了...
```
var encode_version = 'sojson.v5',
ialeh = 'b_data',
b_data = [
'cwvDng==',
'bDAaM8Oq',
'AGk8w7sv',
'RgXDuFXDnA==',
'wrsfMT8+',
'wpjCmsKTaMKowoLDncO4wqAhw7jDgnrChw==',
'cSLDtcKRw6rDpUPCq8OffV/DjBnCsA==',
'wpV+fcOVwp4=',
'w5skTcKcZw==',
'QcKrU8KCwps=',
'w4NKKcK5Z0YxwrzDlhJVwr7Dpj4=',
'Uh/Dtk7Dkg==',
'YsKsw6wfSAMlw4NG',
'CcOUUXRj',
'5Lmw6IOt5Ymy6ZuWw7XDjgTChy5Fw7PDjzk=',
// 从这里开始
'csKsw6gKTgo=',
'woAgIVTCucKtw5krRVvDoMOIwpJw',
'w7Y0woFcOA==',
'I8Odw4jDpMOfwpbDv2hrLsKpO8Kew7Q=',
'w7BiGQ=='
];
(function(b_data, b_num) {
var b_call = function(b_num) {
while (--b_num) {
b_data.push(b_data.shift());
}
};
b_call(++b_num);
} (b_data, 455)); // 455 / b_data.length 截取重组

var decode_obj /* _0x5e34 */ = function(de_id /* _0x27f050 */, de_key /* _0xd83274 */) {
de_id = de_id - 0;
var data_item /* _0x2060f1 */ = b_data[de_id];
console.log(de_id, data_item);
if (decode_obj.initialized === undefined) {
// init base64 decode
(function() {
var window /* _0x17a143 */ = typeof window !== 'undefined' ? window : typeof process === 'object' && typeof require === 'function' && typeof global === 'object' ? global: this;
var _0x1822e8 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
window.atob || (window.atob = function(_0x2bcf1f) {
var _0x1758b7 = String(_0x2bcf1f).replace(/=+$/, '');
for (var _0x4513cf = 0,
_0x27feda, _0x30b0b7, _0x275cfd = 0,
_0x31ca09 = ''; _0x30b0b7 = _0x1758b7.charAt(_0x275cfd++);~_0x30b0b7 && (_0x27feda = _0x4513cf % 0x4 ? _0x27feda * 0x40 + _0x30b0b7: _0x30b0b7, _0x4513cf++%0x4) ? _0x31ca09 += String.fromCharCode(0xff & _0x27feda >> ( - 0x2 * _0x4513cf & 0x6)) : 0) {
_0x30b0b7 = _0x1822e8.indexOf(_0x30b0b7);
}
return _0x31ca09;
});
} ());

var rc4 /* _0x2e4cdf */= function(data_item /* _0x417bb1 */, de_key /* _0x5f16c8 */) {
console.log('rc4', data_item);
var arr_tmp /* _0x5eb132 */ = [],
key_num /* _0x486e97 */ = 0,
_0x578b31,
_0x1e5da8 = '',
urlcode /* _0x1a181c */ = '';
data_item = atob(data_item);
for (var i = 0, length = data_item.length; i < length; i++) {
urlcode += '%' + ('00' + data_item.charCodeAt(i).toString(16)).slice(-2);
}
data_item = decodeURIComponent(urlcode);
for (var n /* _0x7c88b1 */ = 0; n < 256; n++) {
arr_tmp[n] = n;
}
for (n = 0; n < 256; n++) {
key_num = (key_num + arr_tmp[n] + de_key.charCodeAt(n % de_key.length)) % 256;
_0x578b31 = arr_tmp[n];
arr_tmp[n] = arr_tmp[key_num];
arr_tmp[key_num] = _0x578b31;
}
n = 0;
key_num = 0;
for (var _0x1da9bb = 0; _0x1da9bb < data_item.length; _0x1da9bb++) {
n = (n + 0x1) % 256;
key_num = (key_num + arr_tmp[n]) % 256;
_0x578b31 = arr_tmp[n];
arr_tmp[n] = arr_tmp[key_num];
arr_tmp[key_num] = _0x578b31;
_0x1e5da8 += String.fromCharCode(data_item.charCodeAt(_0x1da9bb) ^ arr_tmp[(arr_tmp[n] + arr_tmp[key_num]) % 256]);
}
return _0x1e5da8;
};
decode_obj.rc4 = rc4;
decode_obj.data = {};
decode_obj.initialized = true; // !![];
}
var item /* _0x25e533 */ = decode_obj.data[de_id];
console.log(de_id, data_item, item);
if (item === undefined) {
if (decode_obj.once === undefined) {
decode_obj.once = true;
}
data_item = decode_obj.rc4(data_item, de_key);
decode_obj.data[de_id] = data_item;
} else {
data_item = item;
}
return data_item;
};
// 用户加密的代码 开始
wx.config({
'jsApiList': ['hideOptionMenu']
});
wx.ready(function() {
wx.hideOptionMenu();
});
var d_id /* d_id */ = 0;
function check /* _0x153e6c */() {
var d_obj /* _0xaa06b3 */ = {
'BtDbY': function _0x5b6c88(_0x7f979b, _0x402b7c) {
return _0x7f979b % _0x402b7c;
},
'FxGAC': function _0x4f8ef4(_0x16748e, _0x5c35e8) {
return _0x16748e !== _0x5c35e8;
},
'scHmt': 'pPm',
'JtBdW': 'ckP',
'INwnv': function _0x3cdc7e(_0x566bf1, _0xde4bbc) {
return _0x566bf1 + _0xde4bbc;
},
'DOPnM': function _0x136a1f(_0x491586, _0x32d6e3) {
return _0x491586 === _0x32d6e3;
},
'etRas': 'Fmn',
'gyFvz': function _0x3d4ad5(_0x3f651d, _0x485c68) {
return _0x3f651d + _0x485c68;
}
};
if (d_obj.BtDbY(d_id, 2)) {
if (d_obj.FxGAC(d_obj.scHmt, d_obj.JtBdW)) {
wx.showOptionMenu();
} else {
if (d_id % 2) {
wx.showOptionMenu();
} else {
wx.hideOptionMenu();
}
d_id = d_obj.INwnv(d_id, 1);
}
} else {
if (d_obj.DOPnM(d_obj.etRas, 'sQj')) {
wx.hideOptionMenu();
} else {
wx.hideOptionMenu();
}
}
d_id = d_obj.gyFvz(d_id, 1);
}
setInterval(check, 150);
// 用户加密的代码 结束
if (! (typeof encode_version !== 'undefined' && encode_version === 'sojson.v5')) {
window.alert('不能删除 sojson.v5');
};
encode_version = 'sojson.v5';
```
那丫自己写的,用 rc4 把代码加密了而已。
解密密钥也在代码里,刚刚翻了一半没心情了...
2019-08-23 10:23:29 +08:00
回复了 Arabot9 创建的主题 Python 问个很蠢的爬虫验证码问题
```
$.post('http://hn.topsports.com.cn/asdf123zxc/phone/DataSour.aspx?ID=8&zhuti=102019082405&shop_id=NKSZ94&man_id=230805200101014597&size=6&brandName=NK');
```

直接这个请求即可,man_id 就是身份证号码。

其他的自己去抓吧。

另外给楼主复现下抓取过程:

查看按钮“领取号码”,发现绑定事件 ```onclick="quhaoma()"```

查看 ```quhaoma``` 的代码,

判断 ```qhstatus == "0"``` 是验证通过,```var content = num1 + num2;```是验证码值。

当然,这些都不是重点,重点是,所有的判断都是本地的...

可以直接跳过,直接发起请求即可。

但是依然没有成功,似乎后台还有判断身份证信息。

不得不说,这事啥玩意?代码写的太 low 了吧...
2019-08-22 15:42:42 +08:00
回复了 bfqymmt 创建的主题 NGINX nginx 使用时的疑问
我猜,是 Nginx 是对内使用的。
所以不想对外暴露 Nginx。

这个问题嘛,关掉外网访问,解析到内网 IP 即可。

如果内网不互通,那就楼上的 IP 白名单吧。
三张卡...
移动 主号 使用多年 78 元 10G 流量 iPhone8 用 主要还是用 iPhone
联通 蚂蚁宝卡 36 元? 3G 流量 魅族 16th
电信 深圳宽带绑定赠送 138 元? 不限流量 魅族 16th
1 ... 81  82  83  84  85  86  87  88  89  90 ... 110  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2801 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 50ms · UTC 14:38 · PVG 22:38 · LAX 07:38 · JFK 10:38
Developed with CodeLauncher
♥ Do have faith in what you're doing.