Nmap插件编写之MySQL写库
010sec 2017-10-19 08:00:11 616170 8
*本文原创作者:010sec,属于FreeBuf原创奖励计划,禁止转载
0x01 Nmap介绍
Nmap是一款针对大型网络的端口扫描工具,尽管它也适用于单机扫描。在不同情况下,你可能需要隐藏扫描、越过防火墙扫描或者使用不同的协议进行扫描,比如:UDP、TCP、ICMP 等。它支持:Vanilla TCP connect 扫描、TCP SYN(半开式)扫描、TCP FIN、Xmas、或NULL(隐藏)扫描、TCP ftp代理(跳板)扫描、SYN/FIN IP 碎片扫描(穿越部分数据包过滤器)、TCP ACK和窗口扫描、UDP监听ICMP端口无法送达扫描、ICMP扫描(狂ping)、TCP Ping扫描、直接RPC扫描(无端口映射)、TCP/IP指纹识别远程操作系统,以及相反身份认证扫描等。Namp同时支持性能和可靠性统计,例如:动态延时计算,数据包超时和转发,并行端口扫描,通过并行ping侦测下层主机。
Nmap的插件也极其强大,目前大部分的人都在使用python,perl等语言调用Nmap,然后等待扫面完毕在读取结果进而下一步操作,不过如果我们使用Nmap的插件进行整改,可以急速优化我们的扫描器。
0x02 NSE脚本介绍
Nse脚本需要根据Nmap的脚本规范编写,包含author, description,license,categories,rule,action等字段,其中author,license,license,categories都是描述内容,而重点则是rule和action。在Nmap规范中,根据脚本的运行阶段不同分为了四类rule,prerule、hostrule、portrule和postrule,另外必须包含一个action字段。
我们模拟测试下四种rule之间的区别,编写如下代码。
原文链接: