????????
????NMap?????Network Mapper??????Linux?μ???????????????????
????nmap???????????????????????????????????????????????????????Щ????????????Щ??????????????????????????????????????? fingerprinting??????????????????????????????????????????????????
?????????????????????簲???????nmap ???????????????????С??????????? ?????????????????nmap?????????????δ???????????????????????????nmap?????????????????趨???????????????????
????Nmap ??????????????????Nessus ???????Nmap ?????????????????????????????????????????????????????????
????Nmap ??????(The Matrix)?У????SSH1??32λ????????У???????????????????????????????????????
????????
????????????????????????????????????????????????? ???????????????????????????????????????????????? ??Nmap????????????????????LAN?????500?????????????硣Nmap ???????????????輼?ɡ????????????????ICMPЭ???ping???????????????????????????????UDP????TCP????????????? ????????????????????????????????????????????У? ?????????????????
????????ping??裬??????????????????????????????????????(??????????????????)??
????nmap -sP 192.168.1.0/24
???????г??????????????????????????κα?????????????
????nmap -sL 192.168.1.0/24
???????????????????????????????????????????б?(??-PS22??23??25??80)??
????nmap -PS 192.168.1.234
???????UDP ping?????????
????nmap -PU 192.168.1.0/24
??????????????????SYN??裬??????????裬??????????????TCP???????еú??
????nmap -sS 192.168.1.0/24
????nmap???
??????????linux Ubuntu16.04????????????python????
????1. ????nmap
????sudo apt-get install nmap
????2.????python-nmap
????sudo pip install python-nmap
????????????python????nmap????????????
????root@LiDebin:~# python
????Python 2.7.12 (default?? Jul  1 2016?? 15:12:24)
????[GCC 5.4.0 20160609] on linux2
????Type "help"?? "copyright"?? "credits" or "license" for more information.
????>>> import nmap
????python????nmap
????1.????С????
????????PortScanner???????????159.239.210.26???IP??20-443????
????import nmap
????nm = nmap.PortScanner()
????ret = nm.scan('115.239.210.26'??'20')
????print ret
??????????????:
{'nmap': {'scanstats':
{'uphosts': '1'?? 'timestr': 'Tue Oct 25 11:30:47 2016'?? 'downhosts': '0'?? 'totalhosts': '1'?? 'elapsed': '1.11'}??
'scaninfo': {'tcp': {'services': '20'?? 'method': 'connect'}}?? 'command_line': 'nmap -oX - -p 20 -sV 115.239.210.26'}??
'scan': {'115.239.210.26': {'status': {'state': 'up'?? 'reason': 'syn-ack'}?? 'hostnames': [{'type': ''?? 'name': ''}]??
'vendor': {}?? 'addresses': {'ipv4': '115.239.210.26'}??
'tcp': {20: {'product': ''?? 'state': 'filtered'?? 'version': ''?? 'name': 'ftp-data'?? 'conf': '3'?? 'extrainfo': ''??
'reason': 'no-response'?? 'cpe': ''}
}
}
}
}
????2.???÷?????
?????????????????????
????import nmap
????nm = nmap.PortScanner()
????print nm.scaninfo()
????# {u'tcp': {'services': u'20-443'?? 'method': u'syn'}}
????print nm.command_line()
????# u'nmap -oX - -p 20-443 -sV 115.239.210.26'
???????ж????host
????print nm.all_hosts()
????# [u'115.239.210.26']
????????host????????
????nm['115.239.210.26']
????????host??????????Э??
????nm['115.239.210.26'].all_protocols()
????????host????Щ???????tcpЭ??
????nm['115.239.210.26']['tcp']
????nm['115.239.210.26']['tcp'].keys()
?????????????????tcpЭ??
????nm['115.239.210.26'].has_tcp(21)
????????????????????nmap??е????
????nm.scan(hosts='192.168.1.0/24'?? arguments='-n -sP -PE -PA21??23??80??3389')
??????????????????http://xael.org/pages/python-nmap-en.html