00-扫描-TCP全连接扫描

简介:

Python 2.7.12+ (default, Sep  1 2016, 20:27:38) 

[GCC 6.2.0 20160822] on linux2

Type "help", "copyright", "credits" or "license" for more information.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import  optparse
from  socket  import  *
from  threading  import  *
 
screenLock  =  Semaphore(value = 1 )
 
def  connScan(tgtHost, tgtPort):
     try :
         connSkt  =  socket(AF_INET, SOCK_STREAM)
         connSkt.connect((tgtHost, tgtPort))
         connSkt.send( 'ViolentPython\r\n' )
         results  =  connSkt.recv( 100 )
         screenLock.acquire()
         print  '[+] %d/tcp open'  %  tgtPort
         print  '[+] '  +  str (results)
     except :
         screenLock.acquire()
         print  '[-] %d/tcp closed'  %  tgtPort
     finally :
     screenLock.release()
     connSkt.close()
 
def  portScan(tgtHost, tgtPorts):
     try :
         tgtIP  =  gethostbyname(tgtHost)
     except :
         print  "[-] Cannot resolve '%s': Unknown host"  % tgtHost
         return
 
     try :
         tgtName  =  gethostbyaddr(tgtIP)
         print  '\n[+] Scan Results for: '  +  tgtName[ 0 ]
     except :
         print  '\n[+] Scan Results for: '  +  tgtIP
 
     setdefaulttimeout( 1 )
     for  tgtPort  in  tgtPorts:
         =  Thread(target = connScan,args = (tgtHost, int (tgtPort)))
         t.start()
 
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 )
 
     portScan(tgtHost, tgtPorts)
 
 
if  __name__  = =  '__main__' :
     main()
本文转自文东会博客51CTO博客,原文链接http://blog.51cto.com/hackerwang/1906747如需转载请自行联系原作者                                                                                   谢文东666
相关文章
|
监控 网络协议 NoSQL
五分钟带你读懂 TCP全连接队列(图文并茂)
今天有个小伙伴跑过来告诉我有个奇怪的问题需要协助下,问题确实也很奇怪。客户端调用RT比较高并伴随着间歇性异常Connection reset出现,而服务端CPU 、线程栈等看起来貌似都很正常,而且服务端的RT很短
五分钟带你读懂 TCP全连接队列(图文并茂)
|
存储 监控 网络协议
从一次线上问题说起,详解 TCP 半连接队列、全连接队列
你在 TCP 半连接队列、全连接问题调查时踩过坑吗?如有,请细心阅读本篇文章,相信会有所收获。
从一次线上问题说起,详解 TCP 半连接队列、全连接队列
|
存储 网络协议 算法
TCP 半连接队列和全连接队列满了会发生什么?又该如何应对?
以实战 + 源码分析,带大家解密 TCP 半连接队列和全连接队列。
TCP 半连接队列和全连接队列满了会发生什么?又该如何应对?
|
6月前
|
机器学习/深度学习 人工智能 网络协议
TCP/IP五层(或四层)模型,IP和TCP到底在哪层?
TCP/IP五层(或四层)模型,IP和TCP到底在哪层?
113 4
|
监控 网络协议 网络架构
IP协议【图解TCP/IP(笔记九)】
IP协议【图解TCP/IP(笔记九)】
144 0
|
域名解析 网络协议
IP协议, TCP协议 和DNS 服务分别是干什么的?
大家好,我是阿萨。昨天讲解了网络四层协议[TCP/IP协议族分为哪4层?]今天我们学习下IP 协议, TCP 协议和DNS 协议分别是干什么的。
295 0
IP协议, TCP协议 和DNS 服务分别是干什么的?
|
网络协议
ACK的累加规则-wireshark抓包分析-不包含tcp头部、ip头部、数据链路层头部等。
ACK的累加规则-wireshark抓包分析-不包含tcp头部、ip头部、数据链路层头部等。
ACK的累加规则-wireshark抓包分析-不包含tcp头部、ip头部、数据链路层头部等。
|
网络协议 网络架构
六、TCP/IP模型 和 5层参考模型
六、TCP/IP模型 和 5层参考模型
六、TCP/IP模型 和 5层参考模型
|
网络协议
TCP/IP协议族有哪些?
大家好,我是阿萨。昨天我们学习了[URI 和URL 的区别是什么?]了解了URI 和URL的区别。 学习HTTP, 绕不开TCP/IP,那么TCP/IP 协议族分为哪4层?
315 0
TCP/IP协议族有哪些?