
发布日期:2021-02-18 09:12:30
游览量:8
作者:谷尼软件
在本文中我将介绍如何使用JavaScript构造端口扫描器,如果大家感兴趣,可以直接从此处下载这款工具。 关于从Internet(互联网)区域到Intranet(内部网)区域进行端口扫描方面的内容,网上已经有一些研究文章。Jeremiah Grossman在之前介绍过如何在不依赖JavaScript的前提下,使用 在测试在受限环境中使用浏览器来呈现用户提供的内容的Web应用程序时,我一直在寻找能够提取特定IP上运行的服务信息的方法。之所以选择Chrome,是因为这个Web应用程序使用的正是这个浏览器。当某个端口没有被用户主机占用时,Chrome会拒绝连接,此时我注意到了一些有趣的行为。 Chrome会向用户显示一条消息,但这正是最为有趣的一点,Chrome会将实际的URL更改为 当我们使用 如果我们首次加载url,捕获到 为了构造端口扫描程序,我首先创建了一个 Default 然后我们需要设置 Default Default 以上就是主要思路,我们可以使用这种方法来扫描任意主机(包括本地IP)上的Web服务器。 请注意 :在最新版的Chrome上使用 我研究了如何在Firefox上使用这种技术,事实证明此时这种技术运用起来更加容易。如果是有效的Web服务器,那么Firefox会触发 这次我并没有使用单个 Default 然后只需要使用 Default Firefox场景比其他场景要更加快速,也更为强大,因为此时我们甚至可以扫描无效的响应场景。这样我们就能检测其他服务,比如Redis服务器等。 Edge浏览器版的扫描器与Chrome版本相反,如果目标端口有效,那么url就会跳转到错误页面,触发 Default 我已经将以上技术整合到一个工具中,这款工具使用我最喜欢的异步JavaScript语言进行开发,大家可以访问此处下载该工具。
0x00 概述0x01 基于Chrome浏览器的实现
link
元素和时序方法进行端口扫描,而Berend Jan Wever(Skylined)写了一个lan扫描器,也使用了时序攻击(timing attacks)以及WebRTC和XHR原理。 这两种技术都用到了时序攻击,因此不是100%可靠。 这里我已经提出了一种更为可靠的技术,但主要面向的是网络服务器扫描场景。chrome-error://chromewebdata/
。iframe
向服务器上不存在的某个端口发送请求时,即使该端口没有监听任何内容,我们也会得到成功的onload
事件。如果的确有服务器在该端口监听,浏览器也会有一个成功的onload
事件,Chrome可能的确会这样做,以防止用户探测哪些端口处于打开状态。 我们可以利用这种行为,我想出了一种方法,可以使用iframe
onload
事件来确定端口是否打开。onload
事件,然后增加计数器值,再次发出相同的请求,但这次请求源中加了#
(因为网址已更改为chrome-error:
,而不是原始url),此时我们将获得第二次onload
事件,因为网址已更改。 如果某个Web服务器正在目标地址上监听,我们只会得到一个onload
事件,这是因为第二个url中包含一个哈希值,而当一个哈希发送到已加载的某个页面时,浏览器不会重新加载页面。iframe
元素和anchor
元素。anchor
元素用来执行对#url
的点击行为。然后,我们需要将iframe
的名称及anchor
目标设置为相同的值,以便在点击操作会在iframe
上而非顶层文档上执行:1 iframe.name = a.target = 'probe'+Date.now(); iframe
的url值以及anchor
的href
属性值设置为同一个目标:12 iframe.src = url + ":" + pos;a.href = iframe.src + '#'; iframe
需要关联onload
事件,有效端口只会触发一次onload
事件,因此我们需要使用计时器,碰到无效端口时继续下次测试:12345678910111213 iframe.onload = function(){ calls++; if(calls > 1) { clearTimeout(timer); next(); return; } a.click();};timer = setTimeout(function(){ validPorts.push(pos); next();}, 5000); X-Frame-Options: DENY
选项时会修改url,所以该工具会将这种情况判断为端口关闭。0x02 基于Firefox浏览器的实现
onload
事件,并且不会因为拒绝连接而触发该事件,因此我们无需自动点击链接就可以轻松找到目标。我们只需查看onload
事件是否被触发,或者检测是否超时即可(此时没有触发该事件)。Firefox还可以让我们创建大量iframe
,并且不会造成性能上的损失。iframe
(如Chrome浏览器的应用场景),而是使用了iframe
池。Firefox允许我们使用大量的iframe
,这里我选择的数量为1000。12 var id = 'iframe'+(pos%1000), iframe = document.getElementById(id) ? document.getElementById(id) : document.createElement('iframe'), timer; onload
事件就可以简单判断目标是否为有效的Web服务器:12345 iframe.onload = function(){ validPorts.push(pos); clearTimeout(timer); next();}; 0x03 基于Edge浏览器的实现
onload
事件;但如果目标端口无效,那么只有哈希值会发生改变,不会触发onload
事件。123456789101112131415 iframe.onload = function(){ calls++; if(calls > 1) { validPorts.push(currentPos); return; } var a = document.createElement('a'); a.href = 'ms-appx-web://microsoft.microsoftedge/assets/errorpages/dnserror.html#123';a.target = iframe.name; a.click(); a = null; if(calls === 1) { next(); } };
潍坊谷尼软件技术服务有限公司17年行业经验、服务企业5000家,知名企业近160家。谷尼信天翁是山东网站制作机构,是山东企业"互联网+";"移动营销"品牌。执行供给侧改革的网络企业。咨询热线:13188831521TAG标签:端口扫描器 , Chrome , Firefox浏览器 , 未注明作者或来源均属原创文章,转载请注明:转自 谷尼软件
摘要:处于信息时代,人们对网页设计提出更多要求,但网页设计的艺术性、目的性、时代感并不突出,与宣传需要严重不符。对此,应根据实际设计要求,合理运用图像分割、图像编码压缩等图像处理技术,确保最佳网页设计效果。空间域处理阵列较大的图像,计算量也会随之增加;对此,借助沃尔什变换、傅立叶变换等多种图像
摘要:借助计算机程序,通过相应的设计、分析、建模和执行等一系列手段,将设计者所要表达的信息通过互联网展示出来,最终用户所浏览到的界面通常是图形的形式,这即是网页设计。换句话说,网页设计的目的便是产生用户所需要的网站以供浏览和阅读。通常来说,文字,图片以及表格这些简单的信息都可以放置到网站页面上。而矢
摘要:在ASP的开发过程中,基本不能在Unix等一系列的服务器上运行,而只能在微软的服务器产品中运行。然而,JSP在Apache的支持下,可以实现在Unix、Linux等其他很多操作系统中运行。除此之外,JSP是JAVA的一部分,使得它还具有只需编写一次,就能随时使用的特点。这个特点实地能够实现跨平台的移植,相对其他潍坊网站建设动
摘要:由于不同网站的配置、运行情况很不相同,所以监听网站前先要读取XML文件初始化参数,包括监听的网站目录、禁止上传的文件类型、日志位置、上传文件所在目录、发送短信参数等。监听工具服务程序使用Java的JNotify组件进行监控,程序运行后调用监控类,监控类继承于JNotifyListener接口,需要开发者重写fileRenamed、fi
摘要:随着互联网技术的迅速发展,人们越来越习惯于从各种网站获取信息,而网站作为信息传递的载体,其性能与服务方式对用户浏览体验极为重要。在新媒体技术的影响下,网络UI设计自然成为用户浏览体验的重要因素。UI是用户界面的简称,合理的UI设计可以通过软件操作呈现出舒适化与简单化,给人以美感。传统的网页设计都是通
摘要:当前社会信息技术高速发达,为了提高企业服务效率,为顾客提供最佳服务体验,企业都会建立专门的企业网站,这类网站将介绍企业基本信息、最新产品参数以及企业发展规划、人才招聘等信息。而网站的建立将成为企业壮大、发展的关键,因此为了提高企业网站的运行效率,在网站开发初期,需要针对网页搜索引擎做出优化,既
摘要:以前的搜索引擎主要根据内容与关键词匹配度来排名,关键词出现的频率将成为搜索引擎数据排名的重要参考依据。而随着引擎算法的提升,排序思想逐渐被淘汰,当下排序开始采用链接分析技术,针对链接分析排序算法而言,可以减少垃圾,也可以有效减少人为信息干预,提高数据的准确率。结构层可以突出信息的层次性,因此,
可是,他们却忽枧了为自己的企业建一个网站。在网络时代的今日,一个企业有没有自己的网站和一个公司的领导有没有手刺相同重要。一个中小型企业树立一个网站的必要性,咱们将从以下几点叙说。一、树立一个网站费用也比其它广告方法要低的多。如企业在报纸上做广告,半个版面,几天时刻就要花掉几十万。当然,网站和广告是两