领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

用JS开发安全工具:端口扫描器(端口扫描 工具)

nixiaole 2024-11-17 00:24:00 知识剖析 20 ℃

用JS开发安全工具:端口扫描器

如标题所述,本文用Javascript实现一个端口扫描器,用于检测指定IP的电脑哪些端口是开放的,而且扫描速度非常快。

在Node.js中运行,效果如下:

源码:

Bash
function scan(host, start, end, callback) {
var net = require('net');
var count = end - start;
var result = [];
console.time('port scan time');
for (var i = start; i <= end; i++) {
var item = net.connect({
host: host,
port: i
},
function(i) {
return function() {
result.push(i);
this.destroy();
};
}(i)
);
item.on('error', function(err) {
if (err.errno == 'ECONNREFUSED') {
this.destroy();
}
});
item.on('close', function() {
if (!count--) {
console.timeEnd('port scan time');
callback(result);
}
});
}
}
scan('127.0.0.1', 1, 65535, function(result) {
for (var i = 0; i < result.length; i++) {
console.log('端口:' + result[i]);
}
});

如果用JShaman对以上JS代码进行混淆加密,如:

得到的加密代码如下:

加密后的代码与之前一样使用,但从源码中已看不出其功能,起到了保护源码的功能。如下图:

最近发表
标签列表