用JS开发安全工具:端口扫描器
如标题所述,本文用Javascript实现一个端口扫描器,用于检测指定IP的电脑哪些端口是开放的,而且扫描速度非常快。
在Node.js中运行,效果如下:
源码:
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代码进行混淆加密,如:
得到的加密代码如下:
加密后的代码与之前一样使用,但从源码中已看不出其功能,起到了保护源码的功能。如下图:
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END