2015年6月15日星期一

Kindle去除DRM教程

你在亚马逊买的所有书都加了保护,这就是所谓的DRM,自己购买的书是不能给他人阅读的!
[只能破解自己购买的书]破解方法:
方法一:有一个国外友人制作的Calibre插件,可以直接去除DRM
软件主页:https://github.com/psyrendust/dedrm-ebook-tools/releases
安装完成Calibre之后, 进入DeDRM插件页面,下载Source code (zip),解压之后在如下进入如下目录:
dedrm-ebook-tools-6.0.4\DeDRM_calibre_plugin\

插件安装方法:
 


 

方法二:epubee
国内有破解方法:Kindle设备必须要去除DRM(保护),破解成功后方可在多个设备上阅读、自由转换、并分享给他人。
详情请戳破解教程:http://cn.epubee.com

2015年6月5日星期五

周末了,献上13部业界公认的步兵作品番号!

呃,近期又是各种忙碌,接近一个星期没有更新了,正值周末,今天分享一下据说是业界公认的13部精品步兵番号,喜欢的小伙伴们收下吧!
TOP1:片名 仆の彼女が星咲优菜だったら(假如我的女友是星咲优菜) 女优 星咲优菜  番号 092013-436
(假如我的女友是星咲优菜) 女优 星咲优菜  番号 092013-436
TOP2:片名 极上泡姫物语 Vol.18 女优 麻仓优 番号 092113-437  算上1pondo和HEYZO的,优酱已经出了5部步兵作品了,优酱的经济状况真是不容乐观啊!
极上泡姫物语 Vol.18 女优 麻仓优 番号 092113-437

除了前面两部步兵重点推荐以外,下面的11部作品番号不分排名……

  • 纯真无邪 尻穴精液连続注入敏感身体  番号:SKYHD-073
  • 绝世美少女超浓厚中出3连发 叶咲ゆめ 番号:HEYZO 0258
  • 极品萝莉妻子 可爱美娇娘前田阳菜 大量失禁绝顶潮吹幸福瞬间 番号:CWP-57
  • リ(Anri)小恶魔淫乱痴态大暴发!!  番号:CWP-32
  • G罩杯爆乳超级淫乱美女 夕阳海滨开放野外做爱 真木今日子  番号:一本道 060612_355
  • 金发素人 天地纱希  番号:GB-045
  • 新入社员のお仕事 Vol.17 美绪みくる  番号:040913-308-carib
  • 停止时间体育馆第二部 番号:051313-336-carib
  • 清纯派美少女 如果我的女友是羽月希,番号:carib 053012-035
  • 超可爱雪白美女 如果我的女友是 爱咲MIU(樱井莉亚) 番号:RHJ-173
  • 具备诱惑身材曲线、同时又有美巨乳92公分胸围F罩杯的女优杏堂夏,是那种在影片中更美的女优。番号:SMD-01
如果你也有认为不错的步兵作品,欢迎参考评论!

2015年4月28日星期二

超简单免流教程上网无需流量 附带视频

本软件是小风的,但是教程是我首发的不要再纠结这个问题了,能用就行!上次发的免流教程可是让我火了一把啊!不知道这个免流教程能不能火了!  喷子请出门右拐!我 又没请你进来你喷什么喷TMD!!!!有什么不懂得可以回帖问我!有空我就回,免流和谐我会第一时间告诉大家,以免流量走失!

成功了告诉我要知道教程不易啊!
视频地址:http://v.aipai.com/b6YS8    

使用提醒:使用wifi时请关闭仿跳,关闭全局,不使用免流就把apn换回去,软件卸清除数据就好了
1.手机新建接入点--名称修改为免流--APN修改为CMWAP--联通APN修改为3GWAP--端口设置为80(帖子下方有图)
2.下载小枫免流http://pan.baidu.com/s/1bnuBUjH 小枫免流服务器
3.打开小枫点击菜单键,出现全局初始化,点击全局初始化,点击确定
4.启动全局
5.启动防跳
6.进入免流后台管理
7.模式:伪装彩信
8.武装:不用武装
9.编码:关闭编码  
10.表单:支持表单
11.选择host: 联通选择:mob.10010.com(联通)移动选择:wap.SC.10086.cn(移动)
12.当前HOST:wap.xx.10086.cn    (xx是自己省得字母缩写,如湖南hn河南ha,不知道的可以百度)


13.圣子网关:随便选择一个填写上去,推荐的比较好!
220.181.32.106                              (推荐)
61.184.192.42                             (推荐)
211.140.12.234                     (推荐)
211.140.16.36                    (推荐)
111.140.16.132
112.5.254.172
111.206.81.248
36.250.74.87      






下面是我看电影时做的测试仅供参考!看电影前流量
 
看电影后流量剩余!  
接入点设置图如下↓
 
小风后台设置管理如下↓
 
教程到此结束,转载请标明出处(吾爱论坛小涛系列教程)

2015年4月23日星期四

不用开绿钻,在线提取酷我音乐MP3的外链地址 可做QQ空间背景音乐

酷我音乐大家都不陌生吧,歌曲多而且播放速度快,这就教大家提取酷我音乐的MP3外链地址,可以放到QQ空间做背景音乐,缓冲速度非常快。
首先打开酷我音乐网站:http://www.kuwo.cn
再搜索框里搜索你想要的歌曲
右键点击搜索结果的歌曲名字然后点击复制链接地址
 

这就是复制的歌曲链接地址http://www.kuwo.cn/yinyue/301780/
链接中的301780就是这首歌曲的ID,我们复制歌曲的ID。
然后就用到这段URL:http://player.kuwo.cn/webmusic/st/getNewMuiseByRid?rid=MUSIC_
把复制的歌曲ID添加到这段URL后面,效果如下:
http://player.kuwo.cn/webmusic/st/getNewMuiseByRid?rid=MUSIC_301780
在浏览器中打开上面这个URL,会发现都是代码,找到代码最下面几行(如下图)。

 

用第二个圈出来的是MP3外链的头部,第一个的是MP3外链的尾部,在头部和尾部中间加一个/resource/,在MP3外链前面添加http://,说简单点只要把下面红色文字替换掉就好了

MP3外链地址:http://ra01.sycdn.kuwo.cn/resource/n3/128/65/91/4249214334.mp3


然后就可以放到QQ空间做QQ空间背景音乐了。
方法:
打开QQ空间-点击音乐-音乐库-添加网络音乐

2015年3月13日星期五

【番号】总结盘点大桥未久下马以来所有步兵番号合集

难以置信的是,不像其他很多福利博客福利网站各种面面俱到,福利档仅以桃谷绘里香、大桥未久和森野明音等几位热门女艺人的作品信息就可以做到了一天几千上万的流量。绝对可以堪称这几位热门岛国女艺人的先手资讯站。
2014年福利档一直关注于桃谷绘里香,奈何她去年6月就已经销声匿迹,后来福利档得到也分享了消息,证实她已经彻底离开业界。
从2014年末的下马风暴刮起,档主渐渐将视线转至前田香织和大桥未久。尽管大桥的下马给步兵界注入一股新鲜血液,奈何大桥的步兵生涯同样短暂:【动态】大桥未久第三部作品,无码引退,在尚未推出几部作品也未在步兵业界献艺多久的大桥未久就宣告引退了!
不得不哀叹一声,实在可惜!
虽然大桥的步兵之旅短暂,但是档主在福利档的关注并不少。借此之际,总结盘点下大桥未久下马以来的所有步兵番号合集。
事先声明,多图预警!
【番号】总结盘点大桥未久下马以来所有步兵番号合集
【番号】总结盘点大桥未久下马以来所有步兵番号合集
都知道大桥未久的下马让很多观众很多影迷趋之若鹜,并开始重新关注年终的步兵业界。因此捕获了大桥的东家加勒比自然对大桥的作品要尽心压榨:分段发行,隔期发售等等手段,也是开了无码作品推广的另一先河。
首先是步兵处女作的第一部分:《無修正 カリビアンコム 慟哭の女教師 プロローグ 〜崩壊のはじまり〜》,发行日期:2014-12-02,番号:120214-749
【番号】总结盘点大桥未久下马以来所有步兵番号合集
接着是步兵处女作的第二部分:《無修正 カリビアンコム 慟哭の女教師 前編 〜だらしなく砕け散るプライド〜》,发行日期:2014-12-06,番号:120614-753
【番号】总结盘点大桥未久下马以来所有步兵番号合集
然后是步兵处女作的第三部分:《無修正 カリビアンコム 慟哭の女教師 後編 〜だらしない生き物に堕ちた女〜》,发行日期:2014-12-19,番号:121914-760
【番号】大橋未久无码作品:S-Model 115(SMD-115)
上述三部分作品结合起来就是正式的完整作品:《S Model 115 恥辱の中出し授業 : 大橋未久》,番号:SMD-115
本来可以一集搞定的作品愣是让加勒比活生生给拆成了四部,还发布了将近半个月才算结束。
大桥未久的第二部作品沿袭了同样的套路:将作品分隔发行。但与前作略有不同的是分隔部分不再是加勒比独家,而是上部加勒比下部Heyzo。据说是由于大桥这等大腕,肯定不能加勒比一家独大,而要让几家大厂分而食之。
【番号】总结盘点大桥未久下马以来所有步兵番号合集
第二部作品上半部分:《調子に乗ったS嬢 x 苛められてM嬢》,配信日为1月10日
【番号】总结盘点大桥未久下马以来所有步兵番号合集
第二部作品下半部分:《続々生中~色白美肌美人を徹底的に責める~ – 大橋未久》,出种番号:Heyzo-0783
第二部作品有没有结合的完整版本目前档主尚未前去了解。

好的,档主糊涂了。其实第二部作品的完整版福利档早就有过介绍了:【动态】天使和恶魔?大桥未久第二部无码作品上架!
【番号】总结盘点大桥未久下马以来所有步兵番号合集
即:《ラフォーレ ガール Vol.41 天使と悪魔》,番号:LAF-41
下边说一下第三部作品:
【番号】总结盘点大桥未久下马以来所有步兵番号合集
第三部作品将于一本道发行,目前可以得知的这将是大桥的无码引退作品,即最后一部无码作品了。令人遗憾的是这部号称「ノーカット(一刀未剪)」的作品,其实就是「 S Model 115 耻辱の中出し授业」的完整版,和カリビアンコム(加勒比)卖的是一模一样的东西。
也就是说,大桥未久的下马之旅其实只演绎了两部作品而已,就算如此还是还被各路厂商分隔压榨。
档主这里尚且将其算作第三部作品吧,作品名称:「キャットウォーク ポイズン 120 ついに!! 引退 」

关于第三部作品,之前这里档主也有理解和解读上的错误。大桥真正的第三部作品为:【番号】大桥未久第三部作品2月10日发售(021015-803-Carib)
【番号】总结盘点大桥未久下马以来所有步兵番号合集
作品名:【キャットウォーク ポイズン 120 ついに!! 引退 : 大橋未久】,番号:CWP-120 / CWPBD-120(Japorn旗下MFC配信番号,加勒比番号:021015-803-Carib)

2015年3月7日星期六

红杏插件破解

0x00 前言

其实本人已经不用红杏插件了,但是周围的小伙伴还有不少在用的,前一阵子听说红杏免费版的无法使用了,所以有几个小伙伴买了VIP,其中还有包年的!(忽然感觉周围有这样的土豪朋友好幸福呢~)不过也有几个小伙伴买不起VIP(我也买不起)而一愁莫展,然后又反映我之前写的那一篇博文废话太多,而且红杏的版本更新了……
所以呢,我把原理分析什么的都去掉了,然后就有了这一篇文章。不过呢,我还是建议大家使用GoAgentShadowSocks配合Chrome的扩展SwichySharp科学上网,具体方法自行Google(你可以先用本文的方法上谷歌)
好了,在正式开始之前,我先申明几点~
  1. 本文只分析破解过程,不提供下载,伸手党请Ctrl+W,我把作案手法和工具都给你了,剩下的就看你的了~
  2. 本文还有一些问题没有解决,希望能得到大牛们的帮助,可以在下面留言或者Email~
  3. 如果想了解红杏插件的更多细节,请戳科学上网之红杏插件的原理与破解(因为版本更新的问题导致目录结构和某些文件名不一致,但是改动不多)
另外还有一点,首先……你得有一个……VIP账号……或者……有VIP账号的土豪朋友

0x01 获取PAC脚本

PS:如果你想了解什么是PAC脚本的话请先戳科学上网之红杏插件的原理与破解中的0x02部分或者问Google,不懂也没关系,不影响阅读
动笔写这篇文章的时候红杏的最新版本是2.4.7,我上传了一份在百度网盘,密码cf8u,这个版本比较好分析~(PS:上传这篇文章的时候发现红杏又更新了,到2.4.10了,这次js代码加了混淆,不容易看懂,但是可以对照以前的版本来看,本文就不作分析了,有兴趣的朋友自己分析一下吧,我也上传到百度网盘了,密码是b2av
下载好了之后我们就得到了一个hongxing.crx文件,我们把后缀改成zip,然后解压之后的目录结构大概是这个样子
我们把_metadata这个文件夹删掉,否则一会儿加载进Chrome时会报错。
红杏核心的代码都在js这个文件夹里面,目录结构如下
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
│ config.js
├─back
│ │ background.js
│ │
│ └─services
│ badgeManager.js
│ conflictDetector.js
│ EasySocket.js
│ errorPageCustomizer.js
│ injectorManager.js
│ notificationManager.js
│ performanceTracker.js
│ proxyManager.js //代理配置
│ tabsTracker.js
│ timeService.js
│ track.js
│ upgradeManager.js
│ userDomains.js
│ userManager.js //用户配置
├─common
│ │ common.js
│ │
│ └─services
│ domainUtils.js
│ generate.js
│ pageUtils.js
│ storage.js
│ tele.js
│ timeUtils.js
│ validate.js
├─front
│ │ login.js
│ │ options.js
│ │ popup.js
│ │
│ ├─controllers
│ │ ├─login
│ │ │ AccountController.js
│ │ │ LoginController.js
│ │ │ LoginPageController.js
│ │ │ RegisterController.js
│ │ │
│ │ └─options
│ │ ChangePasswordController.js
│ │ ChangePasswordModalController.js
│ │ DomainListController.js
│ │ InvitationController.js
│ │ OptionsPageController.js
│ │ ProfileController.js
│ │ TradeListController.js
│ │
│ ├─directives
│ │ domain.js
│ │ equals.js
│ │ fixAutoFill.js
│ │ focusBind.js
│ │ formState.js
│ │ inviterInput.js
│ │ resizeIframe.js
│ │
│ ├─filters
│ │ isMe.js
│ │ renderAccount.js
│ │ renderDatetime.js
│ │ renderLeftTime.js
│ │ renderPercent.js
│ │ renderTradeStatus.js
│ │ rendSorter.js
│ │ stabilityStyle.js
│ │ tradeStyle.js
│ │
│ └─services
│ invitationManager.js
└─libs
│ analytics.js
│ debug.js
│ md5.js
│ raven.js
require.js
│ underscore-min.js
│ uuid.core.js
└─angular
angular-animate.js
angular-csp.css
angular-raven.js
angular-route.js
angular-sanitize.js
angular-strap.js
angular-strap.tpl.js
angular-ui-keypress.js
angular-ui-router.js
angular.js
ui-utils.js
view rawcontents.js hosted with ❤ by GitHub
需要重点关注的几个js文件在注释中标了出来,首先我们打开proxyManager.js,完全没法看!没关系,把内容复制一下,用这个在线工具解密一下,这里为了节省空间和美观我截取了部分代码,并调整了一下格式,你可在代码中搜索下面这部分
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
generatePacScript = function() {
var domain, i, lines, mode, node, p, part, parts, proxyString, proxyStrings, reversedDomainTree, source, url, _i, _j, _k, _l, _len, _len1, _len2, _ref, _ref1, _ref2, _ref3;
mode = $rootScope.mode;
if (mode !== MODES.AUTO && mode !== MODES.ALWAYS) {
mode = MODES.AUTO
}
proxyStrings = [];
_ref = ($rootScope.proxies || []).slice(0, 2);
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
p = _ref[_i];
proxyStrings.push("" + p.scheme + " " + p.host + ":" + p.port)
}
proxyString = proxyStrings.join(';');
lines = [];
lines.push(['function Find', 'roxyForURL(url, host) {\n'].join('P'));
lines.push("var D = \"DIRECT\";");
lines.push("var p='" + proxyString + "';\n");
lines.push("if (shExpMatch(host, '10.[0-9]+.[0-9]+.[0-9]+')) return D;");
lines.push("if (shExpMatch(host, '172.[0-9]+.[0-9]+.[0-9]+')) return D;");
lines.push("if (shExpMatch(host, '192.168.[0-9]+.[0-9]+')) return D;");
_ref1 = $rootScope.urlRules || {};
for (url in _ref1) {
p = _ref1[url];
lines.push("if (url == '" + url + "') return '" + p.scheme + " " + p.host + ":" + p.port + "';")
}
lines.push("if (url.indexOf('https://www.google.com/complete/search?client=chrome-omni') == 0)");
lines.push("\treturn D;");
lines.push("if (url.indexOf('http://clients1.google.com/generate_204') == 0)");
lines.push("\treturn D;");
lines.push("if (url.indexOf('http://chart.apis.google.com/') == 0)");
lines.push("\treturn D;");
lines.push("if (url.indexOf('http://toolbarqueries.google.com') == 0)");
lines.push("\treturn D;\n");
lines.push("var i = url.indexOf('_HXPROXY=');");
lines.push("if (i >= 0) return url.substr(i+9).replace('+', ' ');\n");
for (_j = 0, _len1 = WHITE_LIST_DOMAINS.length; _j < _len1; _j++) {
domain = WHITE_LIST_DOMAINS[_j];
lines.push("if (dnsDomainIs(host, '" + domain + "')) return D;")
}
lines.push("\n");
if (mode === MODES.AUTO) {
reversedDomainTree = {};
_ref2 = userDomains.names();
for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {
domain = _ref2[_k];
node = reversedDomainTree;
parts = domain.toLowerCase().split('.').reverse();
for (i = _l = 0, _ref3 = parts.length - 1; 0 <= _ref3 ? _l <= _ref3 : _l >= _ref3; i = 0 <= _ref3 ? ++_l : --_l) {
part = parts[i];
if (i === parts.length - 1) {
node[part] = 1
} else {
if (node[part] === 1) {
break
}
if (node[part] == null) {
node[part] = {}
}
node = node[part]
}
}
}
lines.push("var node = " + (JSON.stringify(reversedDomainTree)) + ";");
lines.push("var hostParts = host.toLowerCase().split('.');");
lines.push("for (var i=hostParts.length - 1; i >= 0; i --) {");
lines.push(" var part = hostParts[i];");
lines.push(" node = node[part];");
lines.push(" if (node == undefined || node == 1) break;");
lines.push("}");
lines.push("if (node == 1)");
lines.push(" return p;\n")
} else {
lines.push('return p;')
}
lines.push('return D;');
lines.push("}");
source = lines.join('\n');
localStorage.setItem("pac", source); //把PAC脚本保存到Local Storage
return source
}
view rawproxyManager.js hosted with ❤ by GitHub
只要在倒数第二行加一句localStorage.setItem("pac", source)就行了~
好了,把我们修改的部分保存一下,然后按照这个步骤把红杏插件加载进Chrome
剩下的过程就是用一个VIP账号登陆红杏,然后进入这个页面守株待兔~
F12打开开发人员工具,不出意外的话你应该能看到下面这个字段(看不到可以等一会或者刷新页面),正是刚才我们放到Local Storage里面的pac
pac的值复制出来,保存到一个文件里面,比如vip.pac
pac文件
打码的部分是红杏在海外搭的代理服务器地址
然后我们用另一款Chrome下的拓展SwichySharp加载vip.pac(如果打不开谷歌扩展商店可以从百度网盘下载,密码ccae),可以看到能够科学上网了
google
但是当我访问非HTTPS的网站时就不行了,这也是我没有解决的问题,希望有大牛可以帮忙
scholar

0x02 把自己改成VIP

如果上面的那个问题解决了就没有这个章节了,但是我是个菜(-_-),始终没搞清楚怎么回事
这里我们还是在红杏的基础上搞破坏吧,还是proxyManager.js文件,我们加一行代码
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
generatePacScript = function() {
var domain, i, lines, mode, node, p, part, parts, proxyString, proxyStrings, reversedDomainTree, source, url, _i, _j, _k, _l, _len, _len1, _len2, _ref, _ref1, _ref2, _ref3;
mode = $rootScope.mode;
if (mode !== MODES.AUTO && mode !== MODES.ALWAYS) {
mode = MODES.AUTO
}
proxyStrings = [];
_ref = ($rootScope.proxies || []).slice(0, 2);
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
p = _ref[_i];
proxyStrings.push("" + p.scheme + " " + p.host + ":" + p.port)
}
proxyString = proxyStrings.join(';');
lines = [];
lines.push(['function Find', 'roxyForURL(url, host) {\n'].join('P'));
lines.push("var D = \"DIRECT\";");
proxyString = '这里填上代理服务器的地址'; //加上这一句代码
lines.push("var p='" + proxyString + "';\n");
lines.push("if (shExpMatch(host, '10.[0-9]+.[0-9]+.[0-9]+')) return D;");
lines.push("if (shExpMatch(host, '172.[0-9]+.[0-9]+.[0-9]+')) return D;");
lines.push("if (shExpMatch(host, '192.168.[0-9]+.[0-9]+')) return D;");
_ref1 = $rootScope.urlRules || {};
for (url in _ref1) {
p = _ref1[url];
lines.push("if (url == '" + url + "') return '" + p.scheme + " " + p.host + ":" + p.port + "';")
}
lines.push("if (url.indexOf('https://www.google.com/complete/search?client=chrome-omni') == 0)");
lines.push("\treturn D;");
lines.push("if (url.indexOf('http://clients1.google.com/generate_204') == 0)");
lines.push("\treturn D;");
lines.push("if (url.indexOf('http://chart.apis.google.com/') == 0)");
lines.push("\treturn D;");
lines.push("if (url.indexOf('http://toolbarqueries.google.com') == 0)");
lines.push("\treturn D;\n");
lines.push("var i = url.indexOf('_HXPROXY=');");
lines.push("if (i >= 0) return url.substr(i+9).replace('+', ' ');\n");
for (_j = 0, _len1 = WHITE_LIST_DOMAINS.length; _j < _len1; _j++) {
domain = WHITE_LIST_DOMAINS[_j];
lines.push("if (dnsDomainIs(host, '" + domain + "')) return D;")
}
lines.push("\n");
if (mode === MODES.AUTO) {
reversedDomainTree = {};
_ref2 = userDomains.names();
for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {
domain = _ref2[_k];
node = reversedDomainTree;
parts = domain.toLowerCase().split('.').reverse();
for (i = _l = 0, _ref3 = parts.length - 1; 0 <= _ref3 ? _l <= _ref3 : _l >= _ref3; i = 0 <= _ref3 ? ++_l : --_l) {
part = parts[i];
if (i === parts.length - 1) {
node[part] = 1
} else {
if (node[part] === 1) {
break
}
if (node[part] == null) {
node[part] = {}
}
node = node[part]
}
}
}
lines.push("var node = " + (JSON.stringify(reversedDomainTree)) + ";");
lines.push("var hostParts = host.toLowerCase().split('.');");
lines.push("for (var i=hostParts.length - 1; i >= 0; i --) {");
lines.push(" var part = hostParts[i];");
lines.push(" node = node[part];");
lines.push(" if (node == undefined || node == 1) break;");
lines.push("}");
lines.push("if (node == 1)");
lines.push(" return p;\n")
} else {
lines.push('return p;')
}
lines.push('return D;');
lines.push("}");
source = lines.join('\n');
return source
}
view rawproxyManager.js hosted with ❤ by GitHub
代理服务器的地址大家按照上一个章节自行获取吧~
接下来是userManager.js文件,同样我截取了部分代码,也是加一行代码就行了
123456789101112131415
this.load = function(data) {
$rootScope.user.profile.sid = data.sid;
$rootScope.user.profile.name = data.name;
$rootScope.user.profile.anonymous = data.anonymous;
$rootScope.user.profile.no_password = data.no_password || false;
$rootScope.user.profile.until = data.until;
$rootScope.user.profile.level = data.level;
if (data.level) {
$rootScope.user.role = ROLES.VIP
} else if (data.name) {
$rootScope.user.role = ROLES.USER
}
$rootScope.user.role = ROLES.VIP; //加上这一句就可以了
return log("user load from :", data)
};
view rawuserManager.js hosted with ❤ by GitHub
把所有修改保存一下,然后我们重新加载DIY的插件,这个时候就可以用非VIP账号登陆了,然后就是见证奇迹的时刻~Enjoy!
twitter
scholar
如果你想把DIY之后的插件打包,请参考科学上网之红杏插件的原理与破解中的0x04部分

0x03 没有解决的问题

  1. 获取PAC脚本后,用SwichySharp加载之后只能上HTTPS的网站,无法访问需要科学上网的HTTP网站
  2. IE和火狐也支持PAC脚本,但是这个PAC脚本无法在这两种浏览器上使用
  3. 最新版的红杏(2.4.10)修改了部分代码并加了混淆,不过本文0x01部分依然有效~但是本文0x02就无效了(-_-)

0x04 结语

之所以不提供破解版下载是希望读到这篇文章的人能自己动手去实践一下,从中学到一些东西(即使本文没有什么技术含量),本人比较菜,不过在分析这个插件的过程中也学到了不少东西,也希望大家能够进一步的去发现和解决一些问题
如果看到这篇文章的朋友知道如何解决上面的几个问题或者发现新的问题,欢迎在下面留言,分享永远是一种快乐~