破解某编程题网站的粘贴限制
今天上某个编程题网站做题,但是网站禁止粘贴代码。然而网站提供的编辑器也太难用了吧……但是,在自己的编辑器里写好了,怎么粘贴进去呢?作为吾爱破解论坛的人,当然要:破!解!
0. 开始之前
在开始破解之前,我们先要解决掉可能影响破解的因素。比如,在这个网站中,不管你在哪一个页面上,浏览器的地址栏总是显示着主页的网址。一旦刷新页面,页面又会退回主页。打开DevTools,页面中有这样一行代码:<iframe src="https://www.i******n.com/app/******" style="height: 100%; width: 100%;"/> 原来这整个页面就是一个iframe!~~网站作者太牛了!~~所以在破解前,我们要直接访问上面的网址,方便接下来的破解。
1. 查找JS
来到了网站真正的主页,我们打开DevTools,切换到网络(Network)选项卡,在筛选器中选择“JS”。接下来,我们一路点到作业提交页面,会发现网站加载了很多JS。哪个才是我们要找的呢?我们只要刷新页面,显示的就只是当前网页加载的JS了。但是,列表中仍然显示着6个JS。事实上,一个网站中通常会有一些每一个页面都需要的JS。因此,我们退回上一个页面,刷新,再进入作业提交页,发现只新增了一个JS。而这正好就是控制作业提交的JS,也就是我们需要破解的JS。
2. 开始破解
找到了要破解的JS(就把它称为关键JS吧),把它右击另存为下来,打开一看,怎么只有一行?!对于大多数对网站了解的人来说,应该都知道这是压缩过了(对于不知道的坛友解释一下:因为JavaScript对于代码中的空格、缩进、换行基本没有要求,因此这些东西对于电脑来说不重要,可以全部删除来节省空间。不要认为它们微不足道,删掉它们哪怕只省掉了1MB,那也是好的),但是压缩过的代码人是看不懂的,因此我们要用格式化工具格式化一下。格式化完,我们就可以开始搜文本了。搜什么呢?凭经验,我们要搜“copy”(复制)和“paste”(粘贴)。搜索“copy”时,我们没有得到有用的信息。但是在搜索“paste”时,我们发现了一句重要的代码:o = t.task.allowPaste 很明显,这句代码把是否允许粘贴赋值给了“o”,要允许粘贴,只要给“o”赋值“true”就可以了!因此,我们可以把代码改为:o = true 这样我们的破解就成功了……
吗?
3. 拦截替换
虽然我们成功改掉了关键代码,但是我们的JS仍然在本地,我们只有让浏览器在加载JS时加载我们本地的JS而不是服务器上的,我们才能真正地破解成功。为此,我们要安装一款Chrome插件:ReRes。这款插件可以把资源请求拦截下来并重定向。在重定向规则中,我们只要让它把原站中的https://www.i*****n.com/assets/*****/16-5*********************b.js替换为本地的file:///C:/Users/EXAMPLE/Desktop/16-5********************b.js就可以了。
4. 一些后话
最后,经过测试,我们的破解确实成功了!很多时候,我们学破解,并不是为了显示自己很厉害,而是能在遇到实际问题时解决问题。以自己的技术,解决自己的问题,这就是破解给人的快乐所在。
小声说一句:这是我第一次写这么长的文章,如果有问题请各位指出,版主大大们如果发现问题麻烦删一下贴。 楼主的方案应该是可行的,
我再提供几个其它的方法
1. Chrome自带devtools可以直接映射文件到本地。
方法:`来源-替换`中勾选`启用本地替换`然后选择文本保存的文件夹,(如果之前配置过但是没生效也可以重新取消再打开)。
这样修改后`ctrl+s`就直接保存到指定的文件夹里了。
刷新后`网络`选项卡上会有个黄色的感叹号,意指文件被替换。
2. 油猴大法好。。。。试着编一编就有了。有朋友一直在写相关的教程。。。但是这些家伙的教程里有公众号,说出来又违规反正多找找教程看看别人怎么写的很轻松就能上手。(入门容易,当然写好还是很难的,比如特别让我感到惊艳的(https://github.com/the1812/Bilibili-Evolved)) 还有一个办法一般这种都有一个事件,你找到元素里面的事件监听器,然后把对应的删掉,立马就可以复制了 楼主不知道,你说的这个网站,可以直接F12,修改网页标签粘贴内容不 收藏学习,明显打脸了 大佬牛逼 不错学到了! 牛逼,支持 直接使用解除网页限制不就行了? 学习了! 有网页截图就更好了 学习了我也