<html>
    <title>端口扫描</title>
    <head></head>
<form>
<label for="target">target</label><br/>
<input type="text" name="target" value="127.0.0.1"/><br/>
<label for="port">port</label><br/>
<input type="text" name="port" value="80"/><br/>
<p>you can use sequence as well 80,81,8080</p>
<label for="timeout">timeout</label><br/>
<input type="text" name="timeout" value="1000"/><br/>
<label for="result">result</label><br/>
<textarea id="result" name="result" rows="7" cols="50"></textarea><br/>
<input class="button" type="button" value="scan" onClick="javascript:scan(this.form)"/>
</form>

<script>
var AttackAPI = {
    version: 0.1,
    author: "Petko Petkov (architect)",
    homepage: "http://www.gnucitizen.org"
    };

AttackAPI.PortScanner = {};
AttackAPI.PortScanner.scanPort = function (callback, target, port, timeout) {
    var timeout = (timeout == null)?100:timeout;
    var img = new Image();
   
    img.onerror = function () {
        if (!img) return;
        img = undefined;
        callback(target, port, "open");
    };
   
    img.onload = img.onerror;
    img.src = "http://" + target + ":" + port;
   
    setTimeout(function () {
        if (!img) return;
        img = undefined;
        callback(target, port, "closed");
    }, timeout);
};
AttackAPI.PortScanner.scanTarget = function (callback, target, ports, timeout)
{
    for (index = 0; index < ports.length; index++)
    AttackAPI.PortScanner.scanPort(callback, target, ports[index], timeout);
};
</script>
<script>
var result = document.getElementById("result");
var callback = function (target, port, status) {
    result.value += target + ":" + port +  status + " \n";
};
var scan = function (form) {
    AttackAPI.PortScanner.scanTarget(callback, form.target.value, form.port.value.split(","), form.timeout.value);
};
</script>

</html>

使用JavaScript扫描端口的更多相关文章

  1. JavaScript 扫描枪使用(一)

    JavaScript 扫描枪应用(一)com.js为主要的代码实现,test.html文件为测试的页面,其中包括了com.js文件中方法的调用.以下为测试成功代码:com.js //com.js /* ...

  2. 使用Python扫描端口情况

    #!/usr/bin/python# -*- coding:utf8 -*-# Python:          2.7.8# Platform:        Windows# Authro:    ...

  3. python扫描端口脚本

    # -*- coding:utf8 -*- # # Python: 2.7.8 # Platform: Windows # Authro: wucl # Program: 端口扫描 # History ...

  4. nmap扫描端口导致线上大量Java服务FullGC甚至OOM

    nmap扫描端口导致线上大量Java服务FullGC甚至OOM 最近公司遇到了一次诡异的线上FullGC保障,多个服务几乎所有的实例集中报FullGC,个别实例甚至出现了OOM,直接被docker杀掉 ...

  5. X-Scan扫描端口80,443提示http TRACE 跨站攻击漏洞解决办法

    在用X-Scan-v3.3扫描主机端口提示http TRACE 跨站攻击漏洞; 一,修改配置文件httpd.conf 1.1 apache下面修改httpd.conf文件,在文件最后面新建一行加入:T ...

  6. 获取mac地址和扫描端口

    获取IP mac地址 arp -a 10.0.0.34 扫描指定IP 1到30000端口 nmap -p1-30000 10.0.0.36

  7. 关于nmap扫描端口

    nmap查看一个服务器的端口,是通过扫描来实现的.所以在本机执行nmap扫描的端口有可能被防火墙阻止,在外部是访问不了的. 如:开启ORACLE监听后,在本机使用nmap 127.0.0.1是可以扫描 ...

  8. (转)使用NMAP工具扫描端口

    原文:http://www.linuxde.net/2013/02/12354.html nmap 是一个用于网络探索或安全评测的工具.它支持 ping 扫描(判定哪些主机在运行),多端口扫描技术(判 ...

  9. nmap 扫描端口 + iftop 实时监控流量

    sleep 1|telnet 127.0.0.1 223 nmap 127.0.0.1 -p 223 -PN   (对禁ping IP) iftop -P -n -B -B 按字节显示 -N 切换 端 ...

随机推荐

  1. umask默认权限分配

    umask默认权限分配的命令 当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情.umask设置了用户创建文件的默认 权限,它与chmod的效果刚好 ...

  2. C++静态成员函数访问非静态成员的几种方法

    大家都知道C++中类的成员函数默认都提供了this指针,在非静态成员函数中当你调用函数的时候,编译器都会“自动”帮你把这个this指针加到函数形参里去.当然在C++灵活性下面,类还具备了静态成员和静态 ...

  3. CSS+Javascript的那些框架

    CSS CSS 制作框架 SASS http://www.oschina.net/p/sass Blueprint  http://www.oschina.net/p/blueprintcss Ela ...

  4. iOS狂暴之路---iOS的第一个应用中能学到哪些知识

    一.前文回顾 在之前已经介绍了 iOS的学习路线图,因为中间遇到一些Android开发问题,所以就耽搁了一段时间,那么接下来的这段时间我们将继续开始iOS的狂暴之路学习,按照国际惯例,第一个应用当然是 ...

  5. gnuplot使用

    直接用yum安装gnuplot即可,例如 sudo sh -c "yum install gnuplot.x86_64 " 安装以后就可以使用了 编写gnuplot脚本 # grp ...

  6. tornado远远不止

    大家的回答都有点片面,更多的关注web框架成,其实tornado远远不止这些,且听我慢慢到来1.高性能的网络库,这可以和gevent,twisted,libevent等做对.提供了异步io支持,超时事 ...

  7. 程序集“xxx"中的类型"xxx"的方法“XXXX”没有实现

    通过反射调用一个类库时出现这样的报错,检查了一下类中已经实现了此方法,实现的方法如下: public partial class LogList : DockContent, ILogForm { p ...

  8. Python学习笔记(一)Python安装及环境变量的配置

    1.下载python安装包. 下载地址:https://www.python.org/ 2.配置环境变量 找到python的安装路径.C:\Python27;script的路径:C:\Python27 ...

  9. RAC oracle删除数据库

    24:site2-DMS1:~ # su - oracleoracle@site2-DMS1:~> sqlplus / as sysdba SQL*Plus: Release 11.2.0.3. ...

  10. html5--indexedDB

    http://www.cnblogs.com/Johnny_Z/archive/2012/11/04/2753331.html http://database.51cto.com/art/201202 ...