当前位置主页 > 浏览器 >

几行代码就攻击了一个网络浏览器?

        2018-01-23 来源:网络整理

  【IT168 评论】JavaScript的在线资源从来都不缺,从基础知识教程到应用程序创建一应俱全。本文不需要特别深入的知识,作者将解释如何使用JavaScript来攻击网络浏览器,以增强程序员的网络体验并提高生产力。

  书签的作用

  使用浏览器的都用过并且非常熟悉书签的作用,书签允许用户保存指向网页的链接,对其进行分类,并添加其他数据(元数据),以帮助之后快速找到网页并将其以可轻松导航的结构进行文件化。许多人不知道的是,这些书签的代码片段也可以保存下来,包括访问其结构和样式。

  如果打开Facebook控制台,会发现Facebook的开发人员非常反对这种窥探。这是很有道理的,即使程序员没有访问他们的代码,但可以进行更改,甚至破坏某些应用程序。

几行代码就攻击了一个网络浏览器?


▲Facebook的开发人员不想让你搞砸他们的控制台。

  首先,进入浏览器代码控制台:

  如果,你忘记了输入的内容或者一些文字,你可以打开书签文件,复制 ,同时打开控制台,粘贴并运行。这之中还有一些代码可用于检查网页的长度,以便提前判断打开一个网页需要多久,是否选择进行阅读,以及衡量一个网页在不同客户端上的篇幅。该代码适用于Firefox、Chromium甚至智能手机上的浏览器:


  这还有另一行代码,可以提前删除所有博客文章中的全部图标,只得到突出显示的部分!但我不赞成这种阅读方式:


  到这,程序员就会发现这些代码一点也不复杂,或者说非常简单,因为这些比较适合个人使用,简单能达到目的即可。

  其次,使用附加组件在网络上进行持续更改

  如果你不是网页设计师,不需要多个浏览器,同时对众多凌乱的JavaScript链接非常不爽,可以继续改进浏览器。不用自己编写插件,使用现有加载项即可。

  一开始,我选择使用 Reddit和Imgur,但我发现它们都稍微有些难。我选择停止使用这些工具重新选择,我的解决方案是在控制台和页面检查器中看看能不能得到我想要的服务。

几行代码就攻击了一个网络浏览器?


▲右键单击,然后左键单击“检查元素”即可查看网页的结构。

  大约五分钟后,我注意到大图像和小缩略图之间的微小差异。我需要更大的图像,所以我开始拖动并建立一些秩序。

  解决方案:

  我想出的代码比较简单,只有七行。关键不是写最少的代码,甚至最干净的代码,而是简单地完成任务:Fire and forget!

几行代码就攻击了一个网络浏览器?


  首先去除网页高度和宽度的限制,,然后循环遍历每个可排序的图像并替换文件名的一部分。这不是最干净的代码,它依赖于Imgur的DOM结构,并拥有jQuery库,但可以达成目的。而且,这比发邮件给开发团队让他们改善网络体验有用得多!

  我使用这个附加组件,据我所知,这不是严格的OpenSource(尽管可以访问代码)。如果可以找到Chromium用户配置文件夹[用户JavaScript和CSS],并允许做你想要的,甚至实现一个脚本规则来运行在特定的URL或URL模式中都是更好的。

  (注意,Imgur不再使用相同的DOM,所以上面的代码不再工作了,对于以这种方式发布的大部分代码来说都是如此。)

  最后,学会建立自己的加载项插件。

  需要解决的最后一个主题是如何创建自己的加载项。本文专注于Chromium插件,因为程序员可以在网络上找到Firefox和其他支持浏览器的加载项。

  第一步,需要一个文件夹来存放文件。


  一旦有一个地方放置文件,就可以打开你最喜爱的编辑器,并创建两个文件:manifest.json和content.js(第二个文件是特定于JS附加组件,只是我用基于内容的JS命名约定)

  Manifest.json

  该文件中的代码是Chromium加载项最重要的部分,基本上指导了插件的工作原理,并专业创建这些,创建Firefox扩展也是如此。

几行代码就攻击了一个网络浏览器?


  这简单地告诉浏览器在阅读所有路径上所有方案(http :, https:等)的每个网页最后运行content.js。

  Content.js

  content.js中的代码与放在网页上的其他代码相同,可以使用一个较旧的软件,名为Album Express(它是为Windows 7编写的)。

几行代码就攻击了一个网络浏览器?


  从这里:

  浏览Chromium浏览器中的chrome:// extensions /

几行代码就攻击了一个网络浏览器?


▲导航到扩展名为manifest.json的文件夹

  最后点击“打开”。

几行代码就攻击了一个网络浏览器?


▲浏览Chromium扩展文件的路径。

  如果刚刚进入JavaScript,则在建立自己的体验之前先进行实验,这将帮助程序员了解最适合自己的模式和方法。

推荐图文