본문 바로가기

컴퓨터/Python

nmap 포트 스캐너 통합하기

http://xael.org/norman/python/python-nmap에서 Python-Nmap 다운로드 한다.

tar xvzf python-nmap-0.2.6.tar.gz
cd python-nmap-0.2.6
python setup.py install


import nmap
import optparse

def nmapScan(tgtHost, tgtPort):
        nmScan = nmap.PortScanner()
        nmScan.scan(tgtHost, tgtPort)
        state=nmScan[tgtHost]['tcp'][int(tgtPort)]['state']
        print '[*] '+tgtHost+' tcp/'+tgtPort+' '+state
def main():
        parser = optparse.OptionParser('usage%prog '+\
        '-H <target host> -p <target port>')
        parser.add_option('-H', dest = 'tgtHost', type='string',\
        help='specify target host')
        parser.add_option('-p', dest = 'tgtPort', type='string',\
        help='specify target port[s] separated by comma')
        (options, args) = parser.parse_args()
        tgtHost = options.tgtHost
        tgtPorts = str(options.tgtPort).split(',')
        if (tgtHost == None) | (tgtPorts[0] == None):
                print parser.usage
                exit(0)
        for tgtPort in tgtPorts:
                nmapScan(tgtHost, tgtPort)
if __name__ == '__main__':
        main()


root@bt:~/Desktop# python nmapScan.py -H 127.0.0.1 -p 733

'컴퓨터 > Python' 카테고리의 다른 글

Pxssh로 SSH 패스워드 공격  (0) 2013.08.20
Pexpect로 SSH 연결하기  (0) 2013.08.17
포트 스캐너  (0) 2013.08.12
압축 파일의 패스워드 찾기  (0) 2013.08.10
압축파일에 잘못된 패스워드를 입력  (0) 2013.08.09